Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Легко ли найти нужную информацию на сайте?

Очень просто
Нахожу почти сразу
Приходится тщательно покопаться
Почти невозможно
Не нашел (лень разбираться)


Результаты
Другие опросы

Всего голосов: 590
Комментарии: 0


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Статьи и обзоры



Использование языка SQL в Delphi

Статьи по объектно-ориентированному программированию на языке Pascal и в среде программирования Delphi. Примеры работающего кода, тексты компонентов и классов, советы мастеров.

Запрос SQL на выборку с условием
Переменная fld содержит название поля таблицы, а переменная val - значение этого поля. Результатом выполнения нижеследующего запроса являются все записи таблицы со значением val в поле fld.

Код
with MyQuery do
begin
Active:=False;
SQL.Clear;
SQL.Add('SELECT *');
SQL.Add('FROM "'+Tbl+'"');
SQL.Add('WHERE '+Fld+' = "'+Val+'"');
Active:=True;
end;

.
.
.
.
.
.
.
.
.
.
А если воспользоваться приведенным ниже кодом, то в результате получим все строки таблицы, содержимое поля fld которых содержит значение val.

Код
SQL.Add('WHERE '+Fld+' LIKE "%'+Val+'%"');




Запрос SQL для нахождения максимума или минимума
Программный код запроса:

Код
with MyQuery do
begin
Active:=False;
SQL.Clear;
SQL.Add('SELECT Max('+Fld+') as M');
SQL.Add('FROM "'+Tbl+'"');
Active:=True;
end;



Используя команду MyQuery.FieldByName('M').asInteger; можно получить значение максимума целого типа. Для нахождения минимума необходимо в запросе воспользоваться строкой SQL.Add('SELECT Min('+Fld+') as M');


Запрос SQL для удаления записей из таблицы
Для удаления записей из таблицы tbl значения поля fld которых равны val используется следующий код:

Код
with MyQuery do
begin
Active:=False;
SQL.Clear;
SQL.Add('');
SQL.Add('FROM "'+Tbl+'"');
SQL.Add('WHERE '+Fld+' = "'+Val+'"');
SQL;
end;




Запрос SQL для изменения записей в таблице
Принцип работы запроса аналогичен запросу на удаление, необходимо лишь указать updFld - обновляемое поле и updVal - новое значение для этого поля.
Пример запроса:

Код
with MyQuery do
begin
Active:=False;
SQL.Clear;
SQL.Add('UPDATE "'+Tbl+'"');
SQL.Add('SET '+UpdFld+' = "'+UpdVal+'"');
SQL.Add('WHERE '+Fld+' = "'+Val+'"');
SQL;
end;





Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



Статьи и обзоры Delphi и TurboPascal Использование языка SQL в Delphi Представляю краткую справочную информацию по использованию языка среде программирования Delphi Для использования программе команд необходимо поместить на форму объект TQuery Назовем его MyQuery поместив объекты TDBGrid TDataSource связав все три объекта между собой получим возможность видеть объекте результаты запросов Создание таблицы помощью запроса Перед выполнением должны быть определены следующие переменные