Излишняя обработка базы данных во время выполнения

Используйте в инструкции SQL полное имя таблицы (включая название базы данных).

Всегда указывайте в инструкции название базы данных вместе с названием таблицы. (Используйте обозначение «main», если это главная база данных.) Например, в следующем коде название базы данных main указано явным образом:

SELECT employeeId 
FROM main.employees

Явное указание имени базы данных позволяет среде выполнения не выполнять проверку каждой подключенной базы данных на наличие соответствующей таблицы. Это также позволяет избежать выбора средой выполнения неправильной базы данных. Следуйте этому правилу, даже если SQLConnection подключен только к одной базе данных, так как SQLConnection также подключается к временной базе данных, доступной посредством инструкций SQL.

Задавайте имена столбцов в инструкциях SQL INSERT и SELECT явным образом.

Ниже приводятся примеры использования явных имен столбцов:

INSERT INTO main.employees (firstName, lastName, salary) 
VALUES ("Bob", "Jones", 2000) 
     
SELECT employeeId, lastName, firstName, salary 
FROM main.employees

Сравните предыдущие примеры со следующими. Не используйте код в следующем стиле:

-- bad because column names aren't specified 
INSERT INTO main.employees 
VALUES ("Bob", "Jones", 2000) 
     
-- bad because it uses a wildcard 
SELECT * 
FROM main.employees

Если имена столбцов не указаны явным образом, среде выполнения потребуется выполнить дополнительные операции для их уточнения. Если в инструкции SELECT используется подстановочный символ вместо явного определения столбцов, среда выполнения извлекает дополнительные данные. На обработку лишних данных затрачивается дополнительное время, и создаются ненужные экземпляры объектов.

Не объединяйте одну и ту же таблицу в инструкции несколько раз, если не стоит задача сравнить таблицу саму с собой.

Поскольку инструкция SQL сильно разрастается, таблица базы данных может быть непреднамеренно присоединена к запросу несколько раз. Часто такого же результата можно достичь, используя таблицу только один раз. Присоединение одной таблицы несколько раз с большей вероятностью происходит при использовании одного или нескольких представлений в запросе. Например, таблица может быть присоединена к запросу, а также представлению, включающему данные из этой таблицы. Результатом двух операций будут несколько соединений.