Альтернатива имени столбца "order" в MySQL [закрыто]


когда я создаю новую таблицу, которая нуждается в заказе, определенном пользователем, моя первая идея всегда идет к имени столбца "заказ". Конечно, это не хорошо, так как это зарезервированное слово.

какое имя вы даете этому столбцу в ваших моделях БД ?

Спасибо за вашу помощь.

5 51

5 ответов:

Я часто использую простые синонимы, например" сортировать".

Я использую "положение" вместо "приказ"

просто добавьте галочку ' вокруг имен ваших таблиц и столбцов, например:

  CREATE TABLE `order`
  (
         `order#` char(4) NOT NULL,
         `ord_date` DATE,
         Primary Key (`order#`)
  )
  ENGINE=InnoDB;

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

SQL Server, по крайней мере, позволяет использовать ключевые слова, если они заключены в квадратные скобки, хотя я согласен, что это не очень хорошая идея.

Я считаю, что в последний раз, когда я сделал это, я использовал SortOrder для имени. Однако я часто использую префиксы, которые отражают таблицу, такую как UsrSortOrder, поэтому это не всегда проблема.

в ANSI / ISO SQL двойные кавычки разделяют ключевые слова при использовании в качестве имен столбцов; строковые литералы разделяются одинарными кавычками:

select "from" = 'from' from foo

Microsoft SQL Server также позволяет использовать квадратные скобки вместо двойных кавычек:

select [from] = 'from' from foo

но в любом случае, это делает ужасный беспорядок вашего кода (попробуйте прочитать выше кому-то.)

Если мне нужен столбец для упорядочивания результатов, я обычно называю его чем-то вроде "sequence_number" или 'sort_sequence'.