以下是总结的mysql的常用语句,欢迎指正和补充~
一、创建库,删除库,使用库
1创建数据库:create database 库名;
2删除数据库:drop database 库名;
3使用数据库:use 库名;
二、创建数据表
1创建表语句:create table 表名(字段名1 字段类型 字段约束,字段2 字段类型 字段约束);
2创建与现有表一样字段的新表:create table 表名 like 已有表名;
3将查询结果创建新表:create table 表名 select from 现有表 where(查询语句);
三、查看表结构,查看建表语句,删除表
1查看表结构:desc 表名;
2查看建表语句:show create table 表名;
3删除表:drop table 表名;
四、修改表结构
1对数据表重命名:alter table 表名 rename 新表名;
2增加字段:alter table 表名 add 字段名 字段类型 字段约束; (PS:可用first/after函数调整字段位置)
3删除字段:alter table 表名 drop 字段名;
4修改字段类型及约束:alter table 表名 modify 字段名 新类型 新约束;(PS:如不加新约束,会将建表时的约束清空,主键、外键、唯一约束除外)
5修改字段名称:alter table 表名 change 字段名 新字段名 新字段类型 新约束条件;
6修改数据库引擎:alter table 表名 engine=;(PS:主要有InnoDB和MyISAM,InnoDB对经常修改表数据友好,MyISAM对经常查询表友好)
7增加主键:alter table 表名 add primary key(字段名);
8删除主键:alter table 表名 drop primary key;
9增加外键:alter table 表名 add constraint 外键名 foreign kek(字段名) references 主表(主键);
10删除外键:alter table 表名 drop foreign key 外键名;
11删除唯一约束:alter table 表名 drop index 字段名;
12设置自动增长的初始位置:alter table 表名 auto_increment=n;
五、向表中插入数据
1向表指定字段插入多条数据:insert into 表名(字段1,字段2) values(数据1,数据2),(数据1,数据2),(数据1,数据2),(数据1,数据2);
2将查询结果插入表:insert into 表名 select 字段名 from 表名(查询语句);
3加载外部数据到表:Load data local infile ‘数据路径’Into table 表名 Fields terminated by ‘分隔符’Ignored 1 lines;
六、更新表数据、删除表数据
1更改满足条件的字段数据:update 表名 set 字段计算1,字段计算2 where 条件;
2删除满足条件的数据:delele from 表名 where 条件;
3删除所有数据:方式一:delete from 表名; 方式二:truncate table 表名; 方式一会逐条进行删除,速度较慢,方式二直接删除,速度快;另外对自增字段,方式一不能重置自增字段的初始位置,方式二可以重置自增字段的其实位置;
1、 唯一性约束不能被别的表的外键所引用。
2、 唯一性约束允许字段中插入NULL(空白)值,而主关键字则不允许NULL值。
两者作用是相同的,都是保证字段中插入惟一性数据。
当需要保证主关键字以外的字段无重复时,应该使用惟一性约束。
去网上下个修改器,QUICE很好用的,即便是对数据库知识一窍不通的人都能用。或者你在Navicat中使用语句:
UPDATE item_template SET stat_value1 = (你所想要修改的数值) where stat_type1=4(1 生命值 3 敏捷 4 力量 5 智力 6 精神 7 耐力) and entry=19019(风剑的编码);
UPDATE item_template SET stat_value2 = where stat_type2=4 and entry=19019;
UPDATE item_template SET stat_value3 = where stat_type3=4 and entry=19019;
UPDATE item_template SET stat_value14= where stat_type4=4 and entry=19019;
UPDATE item_template SET stat_value5 = where stat_type5=4 and entry=19019;
UPDATE item_template SET stat_value6 = where stat_type6=4 and entry=19019;
UPDATE item_template SET stat_value7 = where stat_type7=4 and entry=19019;
错误的大概意思就是,数据库中你要修改的字段本来没有有主键约束或唯一约束,而现在你要在这个字段上加上主键或唯一约束,如果数据库中没有数据这样做当然不会有任何问题,可是从你的错误来看你的数据库中已经有了数据,而且在你要修改的字段上有重复的数据
例如:你的数据库中有两个字段id,name,此时你的数据库中的数据:001,zhangsan;002,lisi;003,zhangsan,此时你在name字段上加主键约束或唯一约束的话就会出你说的错误
解决办法:
1、如果你的数据库允许你现有的数据有重复的数据,你可以在可视化界面下建立主键或约束,在完成那一步里有个选项会询问是否检测现有数据,勾掉就可以了
2、如果你的数据库不允许你现有的数据有重复的数据,这样就比较麻烦了,你可以再别的列上加约束,也可以用多列上建立约束
注:其中有些地方说的不一定准确,还请以事实为依据
以上就是关于数据库增删改查的基本命令全部的内容,包括:数据库增删改查的基本命令、数据库什么是唯一约束和约束的区别、魔兽世界单机版怎么修改数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)