Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Вниз

TQuery and TTable   Найти похожие ветки 

 
ForX   (2006-02-20 14:22) [0]

В гриде всегда должны быть показаны все записи таблицы БД. Есть ли разница в использовании компонентов TTable. И TQuery с запросом SELECT *


 
Ega23 ©   (2006-02-20 14:24) [1]

Есть. В одном случае ты захватываешь таблицу, в другом - можно многим прочитать.
Вообще-то это плохой путь. ИМХО. Очень редко получается, что достаточно Select * сделать. Как правило НД связывается ещё с несколькими таблицами, для удобоваримости.


 
Tonich ©   (2006-02-20 14:25) [2]

ну TTable держит все записи в таблици а TQuery лишь те которые прошли критерии...


 
Asail   (2006-02-20 14:31) [3]


> всегда должны быть показаны все записи таблицы БД

Если так, то нет разницы.
ИМХО TTable.Open делает тот-же SELECT * FROM table_name


 
Sergey13 ©   (2006-02-20 14:32) [4]

2ForX   (20.02.06 14:22)
>Есть ли разница в использовании компонентов TTable. И TQuery с запросом SELECT *
В серверных БД TTable транслируется как TQuery  с запросом SELECT * From Table.


 
ForX   (2006-02-20 14:35) [5]

[1]
> Есть. В одном случае ты захватываешь таблицу, в другом -
>  можно многим прочитать.


значит в первом случае, другой клиент не сможет выполнить TTable.open ???


 
Ega23 ©   (2006-02-20 14:39) [6]


> значит в первом случае, другой клиент не сможет выполнить
> TTable.open ???
>


Забудь про TTable как класс. Совет.


 
Asail   (2006-02-20 14:54) [7]


> Sergey13 ©   (20.02.06 14:32) [4]

ИМХО, не только в серверных.


> ForX   (20.02.06 14:35) [5]

> значит в первом случае, другой клиент не сможет выполнить
> TTable.open ???


сможет. если БД не открывать как Exclusive


 
Sergey13 ©   (2006-02-20 15:00) [8]

2[7] Asail   (20.02.06 14:54)
> ИМХО, не только в серверных.
И кто в Парадоксе или Аксесе отвечает на запросы? Файлы самостоятельно?


 
Asail   (2006-02-20 15:05) [9]


> Sergey13 ©   (20.02.06 15:00) [8]

BDE, например.


 
Ega23 ©   (2006-02-20 15:07) [10]


> BDE, например.


При чём тут BDE?


 
Sergey13 ©   (2006-02-20 15:08) [11]

2[9] Asail   (20.02.06 15:05)
>BDE, например.
Чего BDE? Само спрашивает, само отвечает?


 
ForX   (2006-02-20 15:15) [12]


> Asail   (20.02.06 15:05) [9]
>
>
> > Sergey13 ©   (20.02.06 15:00) [8]
>
> BDE, например.


.Я где прочитал что в Акцесе, TQuery посылает запросы минуя BDE/
И подключается он к базе не через TADOConnection/


 
Ega23 ©   (2006-02-20 15:17) [13]


> .Я где прочитал что в Акцесе, TQuery посылает запросы минуя
> BDE/
> И подключается он к базе не через TADOConnection/


Почитай "где-то ещё". TQuery, TTable и TStoredProc работают ТОЛЬКО через BDE.


 
Sergey13 ©   (2006-02-20 15:18) [14]

2 [12] ForX   (20.02.06 15:15)
> .Я где прочитал что в Акцесе, TQuery посылает запросы минуя BDE/
И подключается он к базе не через TADOConnection/
Тогда он называется не TQuery, а TADOQuery


 
Asail   (2006-02-20 15:19) [15]

Спрашивет (в виде SQL-запроса) клиент, а результат высчитывает и передает обратно клиенту в виде результирующего НД - соответствующий BDE-драйвер (парадокса, например). См. LocalSQL.
Или я недопонимаю чего?


 
Ega23 ©   (2006-02-20 15:29) [16]


> а результат высчитывает и передает обратно клиенту в виде
> результирующего НД - соответствующий BDE-драйвер (парадокса,
>  например). См. LocalSQL.


Что касается парадокса - то может быть. А если это не парадокс, а, например, Oracle?


 
Sergey13 ©   (2006-02-20 15:36) [17]

2[15] Asail   (20.02.06 15:19)
>Спрашивет (в виде SQL-запроса) клиент, а результат высчитывает и передает обратно клиенту в виде результирующего НД - соответствующий BDE-драйвер (парадокса, например). См. LocalSQL.

Именно. Но при этом для файловых БД драйвер открывает файл(ы) и выбирает из него (из них) нужное. Все это происходит на клиенте. Для серверных БД драйвер просто передает запрос серверу, и тот уже (у себя) отбирает нужное и возвращает клиенту только результат.


 
Lexer ©   (2006-02-20 18:14) [18]

>Есть ли разница в использовании компонентов TTable. И TQuery с запросом SELECT *
Да есть, хотя бы например то, что Table делает 5 запросов вместо 1:

1. хочет убедиться, что выбранная нами таблица существует.
2. выбирает список полей выбранной таблицы, их названий, типов, условий проверки и т.п.
3.выбирает информацию об индексах указанной таблицы. Определяется, есть ли среди них первичный ключ, и по каким полям построены индексы.
4.почти повторяет второй, и выбирает информацию о полях - условия проверки, "вычисляемость" поля, допустимость NULL и прочее.
5.открывает таблицу, формируя запрос SELECT FIELD1, FIELD2, ... FROM TABLE ORDER BY PK_FIELD ASC.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.013 c
2-1140463821
Keyser
2006-02-20 22:30
2006.03.12
Как завершить процесс и запустить его?


15-1139869651
Piter
2006-02-14 01:27
2006.03.12
HDTV фильмы...


8-1128784676
beglec
2005-10-08 19:17
2006.03.12
Как сделать TImage полупрозрачным?


15-1140295546
Volf_555
2006-02-18 23:45
2006.03.12
Где m-agent хранит историю сообщений и настройки?


9-1126068360
Ищущий
2005-09-07 08:46
2006.03.12
экспорт анимации из Blender a





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский