表中如何插入数据!扩展技能边界
insert语句向表中添加行。认识命令就行,使用时可以问AI帮忙写。
一.按顺序插入行
向上次新建的天气表,插入行。
insert into weather values
(1,'北京', 1, 37, 0.55, '2025-05-12'); --按顺序依次写
insert into weather values
(2,'上海', 10, 41, 0.65, current_date);
按顺序依次写,日期使用函数current_date, date类型实际上对可接收的格式相当灵活。
所有数据类型都使用了相当明了的输入格式,非数字值必须用单引号(')包围。
select * from weather; --查询语句 *表示查询所有
城市表插入行
INSERT INTO cities VALUES (1,'北京', '(116.40, 39.90)'); -- point类型输入坐标
INSERT INTO cities VALUES (2,'上海', '(31.14, 121.29)');
select * from cities; --查询城市语句
二.按列插入行
上面的语句要求你记住列的顺序。一个可选的语句需要明确的列:
INSERT INTO weather (id,city, temp_low, temp_high, prcp, date)
VALUES (3,'广州', 15, 33, 0.74, current_date);
也可以忽略某些列, 比如不知道湿度:
INSERT INTO weather (id,city, temp_low, temp_high, date)
VALUES (4,'深圳', 14, 32, current_date);
prcp字段为null.
运行上面显示的所有命令:
select * from weather; --查询语句 *表示查询所有
三.按文件格式插入行
使用copy命令,从文本文件中装载大量数据。执行文件这种方式通常更快。
COPY命令支持的选项,例如:
-
FORMAT:指定文件格式(如 TEXT、CSV、BINARY)。
-
HEADER:对于 CSV 文件,指定文件是否包含表头。
-
ENCODING:指定文件的编码格式。
1.COPY命令默认是文本格式,每行一个记录,字段之间用制表符(\t)分隔。
\copy cities from 'C:/Users/helon/Documents/cities1.txt';
2. 如果使用其他分隔符,可以使用delimiter
\copy cities from 'C:/Users/helon/Documents/cities2.txt' DELIMITER ' ';
3.若出现编码问题就执行下面,加encoding 'utf8';
\copy cities FROM 'C:/Users/helon/Documents/cities2.txt' DELIMITER ' ' ENCODING 'UTF8';
这种方式需要源文件在机器上是可用的, 而不是在客户端上。
select * from cities; --查询城市语句
完毕!