Безопасно ли использовать символы периода для поддельной базы данных MySQL «namespacing»? - PullRequest
2 голосов
/ 30 января 2012

Я хотел бы организовать свою **** загрузку таблиц MySQL в меньшие секции или пространства имен, если хотите. Таким образом, я хотел бы назвать свои таблицы с префиксами пространства имен. Я не хочу использовать подчеркивания, так как я уже использую их для имен таблиц из нескольких слов. Можно ли использовать периоды или это имеет особое значение?

Пример

CREATE TABLE `map.meta_data.updates` (...

Ответы [ 3 ]

5 голосов
/ 30 января 2012

Вы можете использовать точки в названии таблицы, если они указаны в кавычках.

Допустимые символы в кавычках:

ASCII: [0-9,a-z,A-Z$_] (basic Latin letters, digits 0-9, dollar, underscore)

Extended: U+0080 .. U+FFFF

Допустимые символы в кавычках включают полный Юникод Базовая многоязычная плоскость (BMP), кроме U + 0000:

ASCII: U+0001 .. U+007F

Extended: U+0080 .. U+FFFF

Ссылка: http://dev.mysql.com/doc/refman/5.5/en/identifiers.html#id807853


Лично я предпочитаю и советую использовать только разрешенные символы в идентификаторах кавычек!

4 голосов
/ 30 января 2012

Это возможно , если вы готовы к тому, чтобы каждый идентификатор был ограничен обратными галочками

Лично я бы не стал этого делать.Я бы использовал $ (если бы мне пришлось), что нормально без разделителей

2 голосов
/ 30 января 2012

Зависит от того, что вы подразумеваете под сейфом.Для mysql это не проблема, вы можете обнаружить, что это просто сбивает с толку - особенно если вы не единственный, кто использует БД.

Например,

select * from `map.meta_data.updates` where `table` = 'bar';

В (поздняя ночь, о нет, некоторая проблема, должна быть исправлена) glance - это то, что карта базы данных, поле meta_data обновляет поле и опечатку?

Почему бы не выбрать символ, который еще не имеет значения для mysql - $, если вы хотите избежатьпобег - все, что не является периодом, если вы счастливы убежать от чего-либо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...