Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Справочник по языку MySQL /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Структура языка - Программирование от RIN.RU
Структура языка



Имена баз данных, таблиц, столбцов, индексы псевдонимы


Для всех имен баз данных, таблиц, столбцов, индексов и псевдонимов в MySQL приняты одни и те же правила.


Следует отметить, что эти правила были изменены, начиная с версии MySQL 3.23.6, когда было разрешено брать в одиночные скобки ''' идентификаторы (имена баз данных, таблиц и столбцов). Двойные скобки '"' тоже допустимы -
при работе в режиме ANSI SQL (см. раздел Запуск MySQL в режиме ANSI).


Идентификатор Максимальная длина строки Допускаемые символы
База данных 64 Любой символ, допустимый в имени каталога, за исключением '/' или'.'
Таблица 64 Любой символ, допустимый в имени файла, за исключением '/' или '.'
Столбец 64 Все символы
Псевдоним 255 Все символы



Необходимо также учитывать, что не следует использовать символы ASCII(0), ASCII(255) или кавычки в самом идентификаторе.


Кроме того, если имя идентификатора относится к служебным словам или содержит специальные символы, необходимо всегда заключать его в одиночные кавычки при использовании в выражениях:


mysql> SELECT * FROM 'select' WHERE 'select'.id > 100;


В предыдущих версиях MySQL для имен существовали следующие правила:


  • Имя может состоять из буквенно-цифровых символов установленного в данное время алфавита и символов '_' and '$'. Тип кодировки по умолчанию - ISO-8859-1 Latin1, он может быть изменен указанием иного типа в аргументе параметра --default-character-set mysqld (см. раздел Набор символов, применяющийся для записи данных и сортировки).

  • Имя может начинаться с любого допустимого символа, в частности, с цифры (в этом состоит отличие от правил, принятых во многих других
    базах данных). Однако имя не может состоять только из цифр.

  • Не допускается использование в именах символа '.', так как он применяется для расширения формата имени (посредством чего можно
    ссылаться на столбцы - см. в этом же разделе ниже).


Не рекомендуется использовать имена, подобные 1e, так как выражение вида 1e+1 является неоднозначным. Оно может интерпретироваться и как выражение 1e + 1, и как число 1e+1.


В MySQL разрешается делать ссылки на столбец, используя любую из следующих форм:


Ссылка на столбец Значение
col_name Столбец col_name из любой используемой в запросе таблицы содержит столбец с данным именем.
tbl_name.col_name Столбец col_name из таблицы tbl_name текущей базы данных.
db_name.tbl_name.col_name Столбец col_name из таблицы tbl_name базы данных db_name. Эта форма доступна в версии MySQL 3.22 или более поздних.
'column_name' Имя столбца является ключевым словом или содержит специальные символы.

Нет необходимости указывать префикс tbl_name или db_name.tbl_name в ссылке на столбец в каком-либо утверждении, если эта ссылка не будет неоднозначной. Например, предположим, что каждая из таблиц t1 и t2 содержит столбец c, по которому производится выборка командой SELECT, использующей обе таблицы - и t1, и t2. В этом случае имя столбца c является неоднозначным, так как оно не уникально для таблиц, указанных в команде, поэтому необходимо уточнить, какая именно таблица имеется в виду, конкретизировав - t1.c или t2.c. Аналогично, при выборке данных из таблицы t в базе данных db1 и из таблицы t в базе данных db2 необходимо ссылаться на столбцы в этих таблицах как на db1.t.col_name и db2.t.col_name.


Выражение .tbl_name означает таблицу tbl_name в текущей базе данных. Данный синтаксис принят для совместимости с ODBC, так как некоторые программы ODBC ставят в начале имен таблиц в качестве префикса символ '.'.


<<<  НазадВперед  >>>
 1  2  3  4 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Типы данных столбцов

Функции, используемые в операторах SELECT и WHERE (часть 1)

Функции, используемые в операторах SELECT и WHERE (часть 2)

Обработка данных: SELECT, INSERT, UPDATE, DELETE

Определение данных: CREATE, DROP, ALTER

Основные команды пользовательских программ MySQL

Команды управления транзакциями и блокировками в MySQL

Полнотекстовый поиск в MySQL

Кэш запросов в MySQL

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь