proview.ruКонструирование сайтовMySQL → Создание и модификация таблиц в MySQL

Создание и модификация таблиц в MySQL

Создание и модификация таблиц в MySQL

Cоздадим таблицу customers в БД data1:
mysql>use data1

Database changed.
mysql>create table customers (
emp_id int(4) not null auto_increment,
emp_name varchar(10) not null,
emp_lname varchar(15) not null,
address varchar(60) not null,
phone int(10),
primary key(emp_id));

Мы создали пустую таблицу. Вводить данные в нее можно несколькими способами:
а)вручную, используя команду insert into;
б)загрузить данные из текстового файла, что является более предпочтительным, особенно если нужно ввести несколько тысяч записей. Синтаксис этой команды будет описан позже.
в)использовать утилиту mysqlimport также для загрузки данных из текстового файла.

Пример ввода данных вручную:

mysql>insert into customers (emp_id,emp_name,emp_lname,address,phone)
-->values ('1001','John','Walker','New York','1236458794');
или
mysql>insert into customers values ('1001','John','Walker','New York','1236458794');

//работает и то, и то.

Что касается auto_increment в столбце emp_id, это означает, что числовое значение этого столбца будет автоматически увеличиваться на единицу с каждой новой записью.То есть,если мы ввели значение 1001, то следующее будет 1002 и т.д. Значение в такой столбец вводится один раз для задания точки отсчета, а дальше сервер будет сам подставлять нужные значения.



Синтаксис команды LOAD DATA INFILE.

DATA [LOW_PRIORITY] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY 't']
[OPTIONALLY] ENCLOSED BY '']
[ESCAPED BY '' ]]
[LINES TERMINATED BY 'n']
[IGNORE number LINES]
[(col_name,...)]
Предположим, существует некоторый текстовый файл 123.txt, содержащий 2000 записей, которые нужно внести в таблицу. Нужно создать таблицу, имеющую такую же структуру и такое же число полей, как и файл (а также подходящие типы данных). Предположим, что поля в файле разделены запятыми. Кроме того, файл должен находиться в нужной базе данных. Вводим следующую команду:

LOAD DATA INFILE '123.txt' into table customers fields terminated by ',';

Это все. Данные из файла помещаются в таблицу.

Для модификации таблиц и данных в них используются команды update и alter table. Рассмотрим их действие на примере таблицы customers:

 

Customers

emp_id emp_name emp_lname address phone
1001 John Walker New York 1235468798
1002 Bill Smith Chicago 7650945237
1003 Jack Nicolson Dallas 9874325097

 

Пример действия команды alter table:

mysql>alter table customers add last_accessed date;
mysql>insert into customers (last_accessed) values ('20000512') where
-->emp_id='1003';
mysql>alter table customers rename customers buyers;
mysql>alter table buyers change phone telephone int(11);

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

emp_id emp_name emp_lname address phone last_accessed
1001 John Walker New York 1235468798  
1002 Bill Smith Chicago 7650945237  
1003 Jack Nicolson Dallas 9874325097 20000512

Можете проверить это сами :)

Изменение данных в таблицах производится с помощью команды update. Для примера возьмем ту же таблицу buyers.

 

mysql>update buyers set address='Seattle' where emp_lname='Smith';

Для модификации таблиц используются также команды Drop и Delete.

Delete-удаляет строку из таблицы. Например, если ввести команду
delete from buyers where emp_id='1002'

будет удалена строка для Bill Smith.

Drop-если используется в Alter table удаляет колонку из таблицы.

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





Источник: web-shed.spb.ru

Популярное