sql 创建表,批量插入数据

sql语言被用于数据库中记录的“增删改查”,本文将介绍数据库中mysql数据库中利用sql语言创建表,批量插入数据。
- -以下示例来自牛客网- -

1.创建表

创建一个actor表,包含如下列信息

列表类型是否为NULL含义
actor_idsmallint(5)not null主键id
first_namevarchar(45)not null名字
last_namevarchar(45)not null姓氏
last_updatetimestampnot null最后更新时间,默认是系统的当前时间

sql语句:

create table if not exists actor(
actor_id smallint(5) not null,
first_name varchar(45) not null,
last_name varchar(45) not null,
last_update timestamp not null default(now()),
primary key(actor_id)
)

2.批量插入数据

2.1 insert into table values()

直接插入数据,例如:向actor表中批量插入如下数据

actor_idfirst_namelast_namelast_update
1PENELOPEGUINESS2006-02-15 12:34:33
2NICKWAHLBERG2006-02-15 12:34:33

sql语句

insert into actor values(1,'PENELOPE','GUINESS','2006-02-15 12:34:33'),
(2,'NICK','WAHLBERG','2006-02-15 12:34:33')

mysql中插入数据时,如果直接使用insert into语句,当主键重复时会报错,这是需要对数据记录重复的情况进行处理。对于插入数据时的重复数据主要有两种处理方式:
1.如果记录不存在则插入,如果存在则忽略
INSERT IGNORE INTO tablename VALUES(…);

2.如果记录不存在则插入,如果存在则替换
INSERT REPLACE INTO tablename VALUES(…);

2.2. insert into table a (select * from table b)

向表a插入从表b查询得到的结果,例如:创建表actor_name包含first_name,last_name字段,并将actor表中的first_name,last_name信息导入actor_name表。

create table actor_name(
first_name varchar(45) not null,
last_name varchar(45) not null);
insert into actor_name select first_name,last_name from actor
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值