创建表后,需要填入内容。通过LOAD DATA和INSERT语句可以完成该任务。
你可以创建一个文本文件
“pet.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以CREATE TABLE语句中列出的列次序给出。对于丢失的值(例如未知的性别,或仍然活着的动物的死亡日期),你可以使用NULL值。为了在你的文本文件中表示这些内容,使用\N(反斜线,字母N)。例如,Whistler鸟的记录应为(这里值之间的空白是一个定位符):
name
| owner
| species
| sex
| birth
| death
|
Whistler
| Gwen
| bird
| \N
| 1997-12-09
| \N
|
要想将文本文件
“pet.txt”装载到pet表中,使用这个命令:
mysql>
LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet;请注意如果用Windows中的编辑器(使用\r\n做为行的结束符)创建文件,应使用:
mysql>
LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet ->
LINES TERMINATED BY '\r\n';(在运行OS X的Apple机上,应使用行结束符'\r'。)
如果你愿意,你能明确地在LOAD DATA语句中指出列值的分隔符和行尾标记,但是默认标记是定位符和换行符。这对读入文件
“pet.txt”的语句已经足够。
如果该语句失败,可能是你安装的MySQL不与使用默认值的本地文件兼容。关于如何更改请参见
5.6.4节,“LOAD DATA LOCAL安全问题”。
如果想要一次增加一个新记录,可以使用INSERT语句。最简单的形式是,提供每一列的值,其顺序与CREATE TABLE语句中列的顺序相同。假定Diane把一只新仓鼠命名为Puffball,你可以使用下面的INSERT语句添加一条新记录:
mysql>
INSERT INTO pet ->
VALUES ('Puffball','Diane','hamster','f','1999-03-30',NULL);注意,这里字符串和日期值均为引号扩起来的字符串。另外,可以直接用INSERT语句插入NULL代表不存在的值。不能使用LOAD DATA中所示的的\N。
从这个例子,你应该能看到涉及很多的键入用多个INSERT语句而非单个LOAD DATA语句装载你的初始记录。