MySQL之创建表以及数据库增删改操作


MySQL之创建表

创建数据表

create table table_name (column_name column_type); 

创建Author、Article、ArticleDetail三张表

#创建Author表
drop table if exists Author;
create table Author(
  au_id int not null PRIMARY key auto_increment comment '主键',
  name varchar(12) comment '姓名',
  sex varchar(12),
  address varchar(12),
  qq varchar(12),
  wechat varchar(25),
  create_date datetime
)DEFAULT CHARSET=utf8;

#创建Article表
drop table if exists Article;
create table Article(
  ar_id int not null PRIMARY key auto_increment comment '主键',
  type varchar(12) comment '类型',
  author varchar(12)comment '作者',
  au_id int(11),
  articles int(11),
  qq_group int(11),
  fans int(11),
  update_date datetime
)DEFAULT CHARSET=utf8;

#创建ArticleDetail表
drop table if exists ArticleDetail;
create table ArticleDetail(
  ad_id int not null PRIMARY key auto_increment comment '主键',
  ar_id int(11),
  title varchar(255) comment '文章标题',
  url varchar(255)comment '链接',
  reade_times int(11),
  praise_times int(11),
  comments_times int(11),
  publish_date datetime,
  FULLTEXT(url)
)DEFAULT CHARSET=utf8;  

 

MySQL之操作表
表中增加新列

alter table table_name add column_name column_type;

Author表增加国籍(hometown)列

#在Author表后增加国籍列
alter table Author add hometown varchar(12);

 

删除表中的列

alter table table_name drop column_name ;

Author表删除国籍(hometown)列

#在Author表中删除国籍列
alter table Author drop column hometown;

  

删除表

drop table  table_name ;

删除Author表

#删除表没有确认,也不能撤销,执行后将直接删除表drop table Author;

 

 

重命名表

rename table table_nameA to  table_nameB;

将Author表重命名为ITester_Authors

rename table Author to ITester_Authors;rename table ITester_Authors to Author;

 

 

MySQL之
表中插入数据

 

 

一次插入多条完整的行(不指定列名)

insert into table_name values(values_1,...,values_n);

在Author表中插入一条数据

insert into Author values(2019001,'coco','女','深圳','3593721069','Cc2015123',SYSDATE()),

 

 

一次多条插入完整的行(指定列名)

insert into table_name values(values_1,...,values_n,

values_2,...,values_m,

);

在Article表中一次插入多条数据(执行速度快)

insert into Article(ar_id,type,author,au_id,articles,qq_group,fans,update_date)values('1','Selenium','vivi','2019002','20','727998947','300','2019-11-01 11:11:11'),('2','MySQL','coco','2019001','10','727998947','400',SYSDATE()),('3','Python','小锦鲤','2019003','50','604469740','450',SYSDATE()),('4','Java','小胖虎','2019004','60','727998947','450','2019-11-30 23:59:59');

 

 

批量插入多条完整的行(指定列名)

insert into table_name values(values_1,...,values_n);

insert into table_name values(values_2,...,values_m);

在Article表中一次插入多行数据(执行速度较慢)

insert into Article(type,author,au_id,articles,qq_group,fans,update_date)values('APP','小锦鲤','2019003','21','727998947','350',SYSDATE()),('SQL Server','coco','2019001','30','727998947','200',SYSDATE());
insert into Article(type,author,au_id,articles,qq_group,fans)values('Oracle','coco','2019001','25','727998947','210');

 

插入检索出的数据

create table table_name (column_name column_type); 

insert into table_nameA(  column_name1, ...,   column_namex)

select  column_name1, ...,   column_namex from table_nameB;

创建ITester_Author表,并将Author表中的数据插入到ITester_Author表

#创建表drop table if exists ITester_Author;create table ITester_Author(  au_id int not null PRIMARY key auto_increment comment '主键',  name varchar(12) comment '姓名',  sex varchar(12),  address varchar(12),  qq varchar(12),  wechat varchar(12),  create_date datetime)DEFAULT CHARSET=utf8;
#将Author表中的所有数据插入到ITester_Authorinsert into ITester_Author( au_id, name, sex, address, qq, wechat, create_date)select au_id, name, sex, address, qq, wechat, create_datefrom Author;



MySQL之
更新表中数据

 


更新一个列

update table_name set column_nameA='column_value1'  where column_nameB='column_value2';

将Author表中coco的创建时间改为2019-12-12 12:12:12

update Author set create_date='2019-12-12 12:12:12' where name='coco';



更新多个列

update table_name set column_nameA='column_value1', column_nameB='column_value2' where column_nameC='column_value3';

将Author表中coco的创建时间改为2020-01-01 00:00:00,地址改为shenzhen

#更新多个列时,只需要使用单个SET命令,每个“列=值”对之间用逗号分隔(最后一列之后不用逗号)update Author set create_date='2020-01-01 00:00:00',address='shenzhen' where name='coco';



更新列为空值

update table_name set column_nameA=null where column_nameB='column_value';

将Author表中coco的地址改为空

#为了删除某个列的值,可设置它为NULL(假如表定义允许NULL值)update Author set address=NULL where name='coco';



更新时加IGNORE关键字

c

将Author表中coco的地址改为深圳,即使发生错误也继续执行更新

#IGNORE关键字:即使是发生错误,也继续进行更新update IGNORE Author set address='深圳' where name='coco';



MySQL之
删除表中数据

 


删除表中数据

 

delete from  table_name where column_name='column_value' ;

将Author表中名字为Tester_A的记录删除

delete from Author where name='Tester_A';



删除表中所有数据

delete from  table_name;

将ITester_Author表中所有记录删除

delete from ITester_Author;

最后是今天的分享:Author、Article、ArticleDetail三张表一键建表SQL语句

 

 

 

 

想要获取相关资料和软件 ?

Q群:727998947

 

 

 

posted @ 2019-11-15 15:13  ITester软件测试小栈  阅读(235)  评论(0编辑  收藏  举报