Основные SQL синтаксис: Создание и изменение таблиц и баз данных

Этот урок показывает, основной синтаксис и команды, и о языке SQL.

Создание и удаление баз данных

Во-первых, давайте посмотрим, какие базы данных уже существуют в MySQL сервере. Мы можете просматривать эту информацию, используя команду SHOW. Введите следующую (за исключением mysql> части) в MySQL консоли клиента, а затем вернуться:

  mysql> SHOW DATABASES; 

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

Создание базы данных

Так как же мы добавляем наши собственные базы данных в MySQL сервере? Чтобы сделать это, мы используем команду CREATE. Допустим, мы хотим создать базу данных называется mydata; мы будем использовать следующий синтаксис.

Примечание В следующей таблице указаны продолжительность и характер ограничений, которые накладываются на имена баз данных, таблиц, столбцов, и псевдонимы.
Идентификатор Максимальная длина Действительный Персонажи
База данных 64 Все действительны имя каталога, за исключением символов "." и "/".
Таблица 64 Все действительны имя каталога, за исключением символов "." и "/".
Колонка 64 Все они являются действительными.
Псевдоним 15 Все они являются действительными.
  mysql> CREATE DATABASE mydata; 
  

Заметьте, что точка с запятой после добавил, каждая из команд в SQL языка. Когда мы прессы Возвращение после ввода этой команды, консоль информирует нас о том, что запрос был нормальный.

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

  mysql> SHOW DATABASES; 

Когда мы с пресс-Возвращение этой команды, мы увидим нашу базу данных было добавлено к списку (заметьте, что этот список в алфавитном порядке, а не в порядке, в котором были созданы базы данных).

Бросать базы данных

Теперь мы удалим базу данных с сервера. Заметим, что, когда мы делаем это, все данные (если они есть) будут потеряны. Чтобы удалить базу данных, мы "падение", он с сервера, используя команду DROP. Таким образом, чтобы падение нашего нового mydata базы данных, мы будем использовать следующую команду:

  mysql> DROP DATABASE mydata; 

Когда мы выполнить эту команду, нажав Обратно, запрос будет сообщаться, как хорошо.

Теперь, если мы снова список баз данных, используя команду SHOW:

  mysql> SHOW DATABASES; 

... мы видим, что наши mydata базы данных уже не видны в списке.

Колонка (полевой) Виды в MySQL

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

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

Тип Описание
TINYINT Очень небольшая целое. Подпись диапазон -128 до 127. Неподписанные диапазоне от 0 до 255.
SMALLINT Небольшое число. Подпись диапазоне -32768 до 32767. Неподписанные диапазоне от 0 до 65535.
MEDIUMINT А средние целое. Подпись диапазон -8388608 до 8388607. Неподписанные диапазоне от 0 до 16777215.
INT А нормальных размеров целое. Подпись диапазоне -2147483648 до 2147483647. Неподписанные диапазоне от 0 до 4294967295.
BIGINT А крупных целое. Подпись диапазон -9223372036854775808 до 9223372036854775807. Неподписанные диапазоне от 0 до 18446744073709551615.
FLOAT Небольшая, одинокие точности с плавающей точкой числа, которые не могут быть неподписанные. Подпись диапазон-3.402823466E +38 до-1.755494351E-38, 0, и 1.755494351E-38 до 3.402823466E +38.
DOUBLE А двойной точности с плавающей точкой числа, которые не могут быть неподписанные. Подпись диапазон-1.7976931348632157E +308 до 2.2250738585072014E-308, 0, и 2.2250738585072014E-308 для 1.7976931348632157E +308.
DECIMAL В распакованном плавающей точкой номер, который не может быть подписан. Работает как "символ" в колонке в том, что число хранится в виде строки (то есть, каждое число используется один символ в строке).
ДАТА А сегодняшний день. Диапазон является 1000-01-01 до 9999-12-31 и в формате ГГГГ-ММ-ДД.
ВРЕМЯ А времени. Диапазон является -838:59:59 до 838:59:59 и в формате HH: MM: SS.
DATETIME Комбинация даты и времени. Диапазон является 1000-01-01 00:00:00 по 9999-12-31 21:59:59, и в формате YYYY-MM-DD HH: MM: SS.
ГОД [(2 | 4)] Через год в 2 - или 4-значный формат (по умолчанию 4). Диапазон является 1901 по 2155 и 0000.
TIMESTAMP А времени. Диапазон является 1970-01-01 00:00:00 по-нибудь в 2037 году в формате YYYYMMDDHHMMSS.
CHAR (длина) А фиксированную длину строки, которые всегда правой дополнена пробелами до указанной длины при хранении. Диапазон: 1 до 255 символов, в зависимости от "длина" указан.
VARCHAR А переменной длины строки.
TINYBLOB / TINYTEXT А крошечные двоичный объект. Максимальная длина 255 символов. * ПРИМЕЧАНИЕ См. ниже таблицу.
BLOB / ТЕКСТ Бинарный объект. Максимальная длина 65535 символов. * ПРИМЕЧАНИЕ См. ниже таблицу.
MEDIUMBLOB / MEDIUMTEXT А средний двоичный объект. Максимальная длина 16777215 символов. * ПРИМЕЧАНИЕ См. ниже таблицу.
LONGBLOB / LONGTEXT Большое двоичный объект. Максимальная длина 4294967295 символов. * ПРИМЕЧАНИЕ См. ниже таблицу.
ENUM ( 'val1', 'val2'...) Перечисление. А список строковых значений из которых только один может быть выбран. Максимум 65535 различных значений.
SET ( 'val1', 'val2'...) Набор. Строка объекта, который может иметь ноль или более значений, каждое из которых должен быть выбран из списка (например, 'val1', 'val2', т.д.). Максимум 64 символов.
Примечание Единственная разница между BLOB и ТЕКСТ типа состоит в том, что для сортировки и сравнения, один BLOB буквы, в то время как ТЕКСТ типа не учитывается.

Создание, изменение, и Бросать Таблицы

Создание Таблицы

Теперь, когда мы знаем о возможных типов столбцов из таблиц, давайте посмотрим, как мы фактически идти о создании таблицы.

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

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

  Название Имя Фамилия Возраст адрес электронной почты DateAdded 

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

Для название, имя, и фамилию, мы можем использовать ТЕКСТ типа, так как оно содержит много символов, чтобы обеспечить все возможности.

Примечание VARCHAR может работать быстрее, и это, возможно, лучший выбор, если длину строки может быть ограничено до менее чем 255 символов.

Для возраста, один неподписанный TINYINT будет очевидным выбором, как возрастов числовые, и никто никогда, как известно, живут последние 255. Для электронной почты, мы можем снова использовать ТЕКСТ типа, как он даст нам существенные помещения для хранения адреса. Наконец, на сегодняшний день в том, что пользователь был добавлен в таблице, мы можем использовать TIMESTAMP.

Примечание Что Java, можно использовать INT тип данных и хранить System.currentTimeMillis () / 1000, как ценность. Это значение может быть впоследствии извлекается из базы данных. Затем умножить ее на 1000 и конвертировать его в ДАТА типа (например, дата = новые Дата (стоимость);). Это полезно, когда делаем локализации и / или переключаться между различными базами данных

В TIMESTAMP также обладает огромным имуществом в том, что время и дата может быть получен автоматически в базу данных.

Теперь, когда мы знаем, какие мы хотим, чтобы для наших колонн, нам нужно создать базу данных, чтобы добавить в таблицу. Давайте создавать базы данных myinfo с помощью следующей команды:

  mysql> CREATE DATABASE myinfo; 

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

  mysql> SHOW DATABASES; 

Теперь мы должны сказать, MySQL, что мы хотели бы выполнять действия по myinfo базы данных. Это достигается с помощью примерного команду:

  mysql> USE myinfo; 
Примечание Без ИСПОЛЬЗОВАНИЯ, всех таблиц в базе данных myinfo следует называть myinfo.mytable, который, конечно, очень неудобно.

После выполнения этой команды, любая DDL (Данные Определение Language) и DML (Манипулирование данными Language) заявления о том, что исполняются повлияет на базу данных, с использованием, т.е. в данном случае в нашей myinfo базы данных.

Теперь у нас есть база данных создана и готова принять команды, мы можем создать нашу таблицу (который мы назовем userinfo) со следующим заявлением:

  mysql> CREATE TABLE userinfo (-> идентификатор INT auto_increment, -> название TEXT, -> Имя TEXT, -> фамилия TEXT, -> возраста TINYINT, -> электронной почты TEXT, -> dateadded TIMESTAMP, -> PRIMARY KEY (идентификатор)) ; 
Примечание auto_increment не является стандартом SQL вариант. MSSQL (Microsoft SQL) имеет аналогичный вариант, и так же Postgre, Оракл, но не способ сделать это как создать таблицу вариант. Это должно быть сделано с последовательностями и триггеров.

Давайте разорвать этот вопрос немного, чтобы мы могли посмотреть, что происходит. Во-первых, мы заявляем, что мы хотим создать таблицу, введя CREATE TABLE. Далее укажите имя, которое мы хотели бы назвать столом, в данном случае, название userinfo. Затем мы используем скобках содержать все столбцы, что мы требуем, в нашей таблице, и просто перечислить все из колонки имен и типов, что мы требуем. Замечание о том, как мы добавили дополнительно поле идентификатора. Наконец, отмечают добавления первичного ключа в качестве последнего параметра. Эта информация используется для определения того, как таблица оптимизирован в базе данных.

Сейчас мы можем убедиться в том, что наш стол был создан успешно выполнив команду:

  mysql> SHOW TABLES; 

Примечание Вы можете также просмотреть столбцы в таблице, используя следующие команды:

  mysql> ОПИСАНИЯ userinfo; 

Когда вы выполняете эту команду, в консоли будут отображаться все детали по каждой из колонок в таблице userinfo.

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

Изменение Таблицы

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

Давайте сначала посмотрим, как нам изменить название существующего колонке. В нашем userinfo таблицу, у нас есть столбец Имя, но давайте теперь изменить следующим образом forename, синоним человека имя.

Для этого нам нужно использовать следующий синтаксис:

  mysql> ALTER TABLE userinfo CHANGE Имя forename ТЕКСТ; 
Подсказка Это всегда очень рекомендуется разработать базу данных, прежде чем создавать его, поскольку там могут быть проблемы, изменения / изменение таблицы базы данных или структуры после имеются данные заносятся в таблицы.

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

Если мы описываем userinfo таблице с помощью следующей команды:

  mysql> ОПИСАНИЯ userinfo; 

... мы увидим, что в столбце Имя была переименована в forename.

Мы также можем изменить типы данных колонок в таблицах. Допустим, что мы хотим изменить возраст колонка с TINYINT к INT. Мы хотели бы использовать следующую команду:

  mysql> ALTER TABLE userinfo MODIFY возраста INT; 

После выполнения этой команды, если мы описываем таблицу, то можно увидеть, типа сменилось INT.

Наконец, хорошо бы знать, как убрать поля из таблицы (например, в том случае, если они не требуются). Давайте теперь сказать, что мы больше не нужны свой е-маил в нашу userinfo таблице. То, что мы хотим сделать, это "падение" на местах из нашей таблицы. Вот синтаксис для удаления е-маил.

  mysql> ALTER TABLE userinfo DROP электронной почты; 

После того, как эта команда выполняется, как описано в таблице, с помощью следующей команды:

  mysql> ОПИСАНИЯ userinfo; 

Бросать (удаление) Таблицы

Удаление таблицы из базы данных очень проста, но без тщательного использовать это может иметь катастрофические последствия. Главное, чтобы отметить, что, когда сбросив стол, вы потеряете все данные, содержащиеся в таблице. Поэтому всегда целесообразно резервное копирование базы данных, прежде чем выполнять любые команды DROP.

Давайте теперь посмотрим, как нам отказаться от userinfo таблице myinfo из нашей базы данных. Чтобы сделать это, нам нужно выполнить следующую команду в консоли клиента MySQL.

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

  mysql> DROP ТАБЛИЦА userinfo; 

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

  mysql> SHOW TABLES; 

В таблице, уже не существует в базе данных.

в этой статье идет речь добавил Джордж Ионеску
Оговорка: Наш сайт не несет ответственности за информацию, содержащуюся в этой статье. Эта статья ни в коей мере не отражает взгляды, мнения, мысли или убеждения статей Каталог сотрудников.

Перевод заметить: В статье "Базовые SQL синтаксис: Создание и изменение таблиц и баз данных" был переведен с использованием автоматизированной службы перевода. Мы приносим извинения за любые ошибки перевода, что произошло. Спасибо за понимание.

Online: 872 users browsing the articles directory