mysql创建表、加载数据到表中
一、创建pet表(宠物表),包含列:宠物名字,拥有者,物种,性别,出生日期,死亡日期:
mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
-> species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);
一旦你创建了表,你可以查看刚刚创建的表是否是想创建的表:
mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| pet |
+---------------------+
mysql> DESCRIBE pet;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(20) | YES | | NULL | |
| owner | varchar(20) | YES | | NULL | |
| species | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| birth | date | YES | | NULL | |
| death | date | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
可以看到表pet的字段,类型,等数据。
我们也可以通过脚本的方式进行创建表,在一个文件中写创建表的脚本,然后在mysql>中使用source命令或.运行,如下:
mysql> source ./testCreateTable.txt;
Database changed
Query OK, 0 rows affected, 1 warning (0.00 sec)
Query OK, 0 rows affected (0.24 sec)
mysql> \. ./studentScore.txt
Database changed
Query OK, 0 rows affected (0.14 sec)
Query OK, 0 rows affected (0.24 sec)
其中,testCreateTable.txt是脚本文件,内容如下:
use test
drop table if exists testTable;
create table testTable(name varchar(50),
address varchar(50),
timestamp timestamp,
primary key(name));
二、加载数据到表中
创建表之后,你需要填充数据,你可以通过LOAD DATA和INSERT来实现。
数据格式如下:
Whistler Gwen bird \N 1997-12-09 \N
列之间使用\t间隔(LOAD DATA默认的列间隔符),\N表示NULL。
加载文件pet.txt中的数据到表pet中,使用以下命令:
如果pet.txt文件是在Windows下编辑的,则换行符为\r\n,需要指定\r\n为行终止符,如下所示:
mysql> LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet
-> LINES TERMINATED BY '\r\n';
在LOAD DATA语句中,你可以显示指定列间隔符和行终止符。默认的列间隔符为TAB,行终止符为换行。
当你想新增一条数据时,可以使用INSERT语句:
mysql> INSERT INTO pet
-> VALUES ('Puffball','Diane','hamster','f','1999-03-30',NULL);
注意:这里不能像LOAD DATA一样,空值要使用NULL,不能使用\N。