Mysql常用命令大全
-
创建用户dog 密码为123456
CREATE USER ‘dog’@‘localhost’ IDENTIFIED BY ‘123456’;
-
给itss用户授权test数据库
grant all privileges on test.* to ‘itss’@’%’ with grant option; FLUSH PRIVILEGES;
-
给表追加字段
alter table user add column remark varchar(255) not null default ‘备注’ comment ‘备注’ ;
-
添加字段:
alter table
user_movement_log
Add column GatewayId int not null default 0 AFTERRegionid
(在哪个字段后面添加) -
删除字段:
alter table
user_movement_log
drop column Gatewayid -
调整字段顺序:
ALTER TABLE
user_movement_log
CHANGEGatewayId
GatewayId
int not null default 0 AFTER RegionID -
主键
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
-
增加一个新列
alter table t2 add d timestamp;
alter table infos add ex tinyint not null default ‘0’; -
删除列
alter table t2 drop column c;
-
重命名列
alter table t1 change a b integer;
-
改变列的类型
alter table t1 change b b bigint not null;
alter table infos change list list tinyint not null default ‘0’; -
重命名表
alter table t1 rename t2;
-
加索引
alter table tablename change depno depno int(5) not null;
alter table tablename add index 索引名 (字段名1[,字段名2 …]);
alter table tablename add index emp_name (name); -
加主关键字的索引
alter table tablename add primary key(id);
-
加唯一限制条件的索引
alter table tablename add unique emp_name2(cardnumber);
-
删除某个索引
alter table tablename drop index emp_name;
-
增加字段:
ALTER TABLE table_name ADD field_name field_type;
-
修改原字段名称及类型:
ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
-
删除字段:
ALTER TABLE table_name DROP field_name;
-
sql语句分组时异常处理 针对mysql8或以上的,但最好的方式还是修改sql,把查询的列全不放到group by里面 ,考虑到实施问题,如果数据库比较多的话,有点
不切实际,
先查询select @@global.sql_mode;
查询结果
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION再把查询结果里面的ONLY_FULL_GROUP_BY值去掉
set @@global.sql_mode =‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION’ ;