Главная страница
    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.006 c
2-1234773241
Andrewtitoff
2009-02-16 11:34
2009.04.05
Word Отступ слева


2-1235034304
Alex_Y
2009-02-19 12:05
2009.04.05
gtringgrid запретить редактирование ячейки


15-1233558588
УбицоМух
2009-02-02 10:09
2009.04.05
Сообщение от сервера


2-1235039970
D@nger
2009-02-19 13:39
2009.04.05
ActionMainMenuBar и Border Icon


2-1234281938
Bolodya
2009-02-10 19:05
2009.04.05
использование GroupBar (RzGroupBar) в программе





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