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

Вниз

Вопрос по БД   Найти похожие ветки 

 
snake-as ©   (2009-02-15 08:39) [0]

Здравствуйте. Стыдно, но я ни разу не работал с БД(очень стыдно). Точнее с БД работал, но поиск не организовывал. Скажите, правильно ли я делаю, а то мне кажется, что это как-то примитивно, а других способов я не найду:
Есть три параметра: Номер, Адрес, Дата.
Они вводятся через Edit
Потом я пишу в процедуре, например

SqlText := "Select * from База";
Затем, в зависимости от того, был ли ввден параметр, или он остался пустой, пишу, например:
if Adress <> "" then
 SqlText := SqlTExt + " where Адрес = " + Adress;

И потом делаю такой SQL запрос.


 
AndreyV ©   (2009-02-15 09:07) [1]

> [0] snake-as ©   (15.02.09 08:39)

На каой БД остановился? И, видимо, ты пытаешься всё запихнуть в одну таблицу, называя её базой.


 
snake-as ©   (2009-02-15 09:14) [2]

Да я ее базой так называю, для примера. А остановился на Access, мне больше не нужно. И пользователю легко открыть и работать легко.


 
palva ©   (2009-02-15 09:23) [3]

SELECT не модифицирует данные а только их получает из базы
INSERT вставляет новую строку в таблицу
UPDATE модифицирует существующие строки в таблице
DELETE удаляет
Но имеется возможность использовать TRecordset TQuery TTable в разных вариантах. Строки таблицы попадают в Recordset при помощи запроса SELECT. С Recordset программа работает примерно как с двумерным массивом, изменяет дополняет удаляет строки. А потом Recordset сам, без участия программиста, выдает нужные INSERT. Содержимое Recordset видно через поля ввода гриды и т. д., присоединеные через посредника Datasource.

Похоже это все компоненты, которые нужно знать для начала.


 
snake-as ©   (2009-02-15 09:26) [4]

Спасибо!


 
sniknik ©   (2009-02-15 10:19) [5]

> Но имеется возможность использовать ... TQuery TTable в разных вариантах.
нужно изучать не компоненты а технологию... т.к. например для ADO названные попросту вредны, и введены похоже исключительно для того чтобы запутывать начинающих... не дать им понять как на самом деле там все работает.

для ADO (что наверняка при "остановился на Access") не рекомендуются к использованию TADOQuery, TADOTable, TADOStoredProc,  просто удали их с палитры компонент, они тебе никогда не понадобятся при правильной работе с ADO. пользуйся тем что осталось, это "родные" для технологии.

> Есть три параметра: Номер, Адрес, Дата.
> был ли ввден параметр
вот сам же называешь их параметрами, а в запрос вставляешь строкой...

> SqlText := "Select * from База";
* в рабочих запросах вставлять нежелательно, приводит к дополнительным действиям на sql сервере, и мешает работать оптимизатору в тех sql серверах в которых он есть...
старайся перечислять список полей явно. вообще все лучше делать явно, преобразования, объединения, т.е. все что может иметь скрытую форму записи.


 
AndreyV ©   (2009-02-15 10:57) [6]

> [2] snake-as ©   (15.02.09 09:14)
> Да я ее базой так называю, для примера. А остановился на
> Access, мне больше не нужно. И пользователю легко открыть
> и работать легко.

Пользователю не надо ничего знать о таблицах, а вот тебе вряд ли достаточно одной.


 
snake-as ©   (2009-02-16 14:16) [7]

Люди добрые, подскажите, как делать запросы на обновление таблицы. В Query выскакивает мессэдж, что типа нет возвращаемого параметра и т.п. А это напрягает, а убрать не могу.


 
Sergey13 ©   (2009-02-16 14:19) [8]

> [7] snake-as ©   (16.02.09 14:16)

Наверное вместо Execute вызываешь Open.


 
KSergey ©   (2009-02-16 14:19) [9]

> snake-as ©   (16.02.09 14:16) [7]

ExecSQL


 
snake-as ©   (2009-02-16 14:22) [10]

Не могу найти. На какой вкладке?


 
snake-as ©   (2009-02-16 14:25) [11]

тьфу.


 
Sergey13 ©   (2009-02-16 14:25) [12]

> [10] snake-as ©   (16.02.09 14:22)

Какой еще вкладке? Метод у кверика поменяй.


 
Johnmen ©   (2009-02-16 14:25) [13]

Такай синенькая, с белой черточкой...


 
Anatoly Podgoretsky ©   (2009-02-16 14:50) [14]

> Sergey13  (16.02.2009 14:25:12)  [12]

Тьфу.


 
MsGuns ©   (2009-02-16 17:27) [15]

Блин, пока читал, весь обрызгался :)


 
Jeer ©   (2009-02-16 17:39) [16]


> весь обрызгался :)


Стареем-с ?
Чем обрызгался-то ? :))


 
Юрий Зотов ©   (2009-02-16 17:54) [17]

> пока читал, весь обрызгался

Правильнее было бы: пока писал, весь обрызгался...
:о)


 
MsGuns ©   (2009-02-16 21:53) [18]

>Jeer ©   (16.02.09 17:39) [16]
>Юрий Зотов ©   (16.02.09 17:54) [17]

1) Читаем [11], [14].
2) Достаем платок
3) Вытираемся

;)))


 
Германн ©   (2009-02-17 00:43) [19]


> MsGuns ©   (16.02.09 21:53) [18]
>
> >Jeer ©   (16.02.09 17:39) [16]
> >Юрий Зотов ©   (16.02.09 17:54) [17]
>
> 1) Читаем [11], [14].
> 2) Достаем платок
> 3) Вытираемся

Изучаем русский. :)
А именно частицу "ся" и её применение.



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

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

Наверх





Память: 0.49 MB
Время: 0.007 c
2-1234336304
Andrewtitoff
2009-02-11 10:11
2009.04.05
Access Violation


3-1217426760
baklazan
2008-07-30 18:06
2009.04.05
Сумма чисел в колонке


15-1233855587
Добежал
2009-02-05 20:39
2009.04.05
InnoSetup - сделать директорию скрытой


15-1233273959
Дмитрий Белькевич
2009-01-30 03:05
2009.04.05
Куда высылать изменения в JCL/JVCL?


2-1234773241
Andrewtitoff
2009-02-16 11:34
2009.04.05
Word Отступ слева





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский