Поиск
Идентификационные квалификаторы
MySQL разрешает имена, которые состоят из одного или нескольких идентификаторов. Компоненты составных имен должны разделяться символом точки '.'. Начальные (левые) части составных идентификаторов служат квалификаторами, влияющими на контекст, в котором конечный идентификатор должен интерпретироваться.
В MySQL вы можете обращаться к столбцу, используя любую из следующих форм:
| Ссылка на столбец | Смысл |
| имя_столбца | Столбец имя_столбца из любой таблицы, используемой в запросе и содержащей столбец с таким именем. |
| имя таблицы. имя_ столбца | Столбец имя_столбца из таблицы имя_ таблицы базы данных по умолчанию. |
| имя_базы_данных. имя_таблицы. имя_столбца | Столбец имя_столбца из таблицы имя_таблицы базы данных имя_базы_данных. Этот синтаксис не применялся до версии MySQL 3.22. |
Если любой компонент составного идентификатора требует заключения в кавычки, это следует делать индивидуально, а не для всего имени в целом. Например, Nmy- table4. 4my-columrT правильно, в то время как 4my-table.my-column4 -нет.
Нет необходимости специфицировать префиксы имя_базы_ данных или имя_таблицы для ссылки на столбцы в операторах, если только ссылка не является неоднозначной. Предположим, что обе таблицы, и tl, и t2, имеют столбец с именем с, и выполняется чтение с с помощью оператора SELECT, который использует и tl, и t2. В этом случае имя с неоднозначно, потому что оно не уникально в таблицах, участвующих в запросе. Вы обязаны квалифицировать его именем таблицы, подобно tl.c или t2.c, чтобы указать, какая таблица имеется в виду. Подобным же образом, чтобы обратиться к таблице t базы данных dbl и таблице t базы данных db2 в одном операторе, вы должны ссылаться на столбцы этих таблиц: dbl.t.имя_столбца и db2. t. имя_столбца.
Синтаксис .имя_таблицы означает таблицу имя_таблицы в текущей базе данных. Этот синтаксис принят для совместимости с ODBC, поскольку некоторые программы ODBC снабжают имена таблиц префиксом 'Л'.