Шаблоны запросов к базе

Удаление

DELETE FROM [имя таблицы] WHERE [условие отбора]

Обновление

UPDATE [имя таблицы] SET [обновление] WHERE [условие отбора],

где [обновление] - это перечисленные через запятую выражения типа [имя поля] = [значение]

Выборка

SELECT [список полей через запятую или * ] FROM [имя таблицы] WHERE [условие отбора],

где [условие отбора] - сочетание выражений типа ([имя поля] [оператор] [значение (значения)]),

объединенных через OR или AND.

Простые операторы: =, <>, >, >=, <, <=

LIKE - используется для строк, сравнение по части строки;

IN - когда нужно выбрать из перечисленных констант;

Значение

  • Если поле — строка, значение должно быть в одинарных кавычках.
  • Если поле — дата: для Access используется формат #mm/dd/yyyy# ; для SQL-сервера - 'yyyymmdd'.
  • Числа указывать без кавычек, в качестве разделителя использовать точку.
  • Для логических полей на Access использовать True и False, для SQL — True и False или 0 и 1, без кавычек в обоих случаях.
  • IN-выражение - это заключенный в скобки список форматированных по правилам значений, перечисленных через запятую.
  • Для строк сравнение выполняется без учета регистра символов во всех перечисленных случаях, кроме LIKE

Примеры запросов

DELETE FROM AllDocuments WHERE ND = '12345678/010203/6457984'

DELETE FROM T1 WHERE F1 IN (1, 2, 3)

DELETE FROM T2 WHERE F2 IN ('A', 'B', 'C')

Access: UPDATE LOG_DECL SET FmtVersion = '5.0.12', SpecVersion = '3.0.9' WHERE ((ND = '12345678/010203/6457984') OR (ProcessId LIKE '123*'))

SQL: UPDATE LOG_DECL SET FmtVersion = '5.0.12', SpecVersion = '3.0.9' WHERE ((ND = '12345678/010203/6457984') OR (ProcessId LIKE '123%'))

Access: SELECT * FROM DECLPRIM WHERE G542 >= #12/31/2012#

SQL: SELECT * FROM DECLPRIM WHERE G542 >= #20121231#

96