mysql表添加字段语句_mysql-建表、添加字段、修改字段、添加索引SQL语句写法[通俗易懂]

mysql表添加字段语句_mysql-建表、添加字段、修改字段、添加索引SQL语句写法[通俗易懂]表的操作1、建表1、建表如果USERS表存在则删除DROPTABLEIFEXISTSUSERS;CREATETABLEUSERS(idINTUNSIGNEDNOTNULLAUTO_INCREMENT,#主键UNSIGNED无符号AUTO_INCREMENT自增nameVARCHAR(30)NOTNULLCOMMENT’用户名’,sexENUM(‘男…

大家好,欢迎来到IT知识分享网。

表的操作

1、建表

1、建表

–如果USERS表存在则删除

DROP TABLE IF EXISTS USERS;

CREATE TABLE USERS(

id INT UNSIGNED NOT NULL AUTO_INCREMENT, # 主键 UNSIGNED 无符号 AUTO_INCREMENT 自增

name VARCHAR(30) NOT NULL COMMENT ‘用户名’,

sex ENUM(‘男’,’女’) NOT NULL DEFAULT ‘男’, # 使用枚举类型, 在插入的时候可以数值来表示,从1开始。如1则代表男

age TINYINT UNSIGNED NOT NULL DEFAULT 1,

PRIMARY KEY (`Id`)

)DEFAULT CHARSET=UTF8 ENGINE=INNODB;

操作字段都是ALTER TABLE 表名 的格式

MySQL语句增加字段,修改字段名,修改类型,修改默认值

2、添加字段

ALTER TABLE USERS ADD alias varchar(20) COMMENT ‘别名’;

alter table 表名 ADD 字段 类型 约束 [默认值 注释]

ALTER TABLE video ADD category_id int(11) unsigned not null DEFAULT ‘0’ COMMENT ‘视频分类id’;

3、修改字段

3.1 不修改名称 使用modify 修改字段类型:

alter table users modify name varchar(20) not null comment ‘用户名’;

alter table 表名 modify column 字段名 类型 约束 [默认值, 注释];

ALTER TABLE video MODIFY COLUMN category_id smallint(5) unsigned not null DEFAULT ‘0’ COMMENT ‘视频分类id’;

3.2 修改名称 使用change 格式 是 change 要修改的名称 新名称 …

ALTER TABLE USERS CHANGE name username varchar(20) NOT NULL COMMENT ‘用户名’;

修改字段名

alter table 表名 rename column A to B

ALTER TABLE video RENAME COLUMN category_id TO cid;

修改字段默认值

alter table 表名 alter column 字段名 drop default; –(若本身存在默认值,则先删除)

alter table 表名 alter column 字段名 set default 默认值; –(若本身不存在则可以直接设定)

alter table video alter column sort set default ’50’;

4、删除字段

ALTER TABLE USERS DROP COLUMN alias;

— 删除多个字段

— ALTER TABLE USERS DROP COLUMN alias,DROP COLUMN age;

库的操作

1、建库

CREATE DATABASE test CHARACTER SET utf8;

2、修改库的默认编码

ALTER DATABASE test CHARACTER SET utf8;

3、删库跑路

DROP DATABASE test;

索引(约束)的操作

1、添加主键

–删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

ALTER TABLE USERS ADD PRIMARY KEY ( `id` )

2、添加唯一索引

ALTER TABLE USERS ADD UNiQUE ( `username` )

3、添加普通索引

ALTER TABLE `USERS` ADD INDEX index_name ( `age` )

4、添加全文索引

ALTER TABLE `表名` ADD FULLTEXT (

`列名`

)

5、添加多列索引

ALTER TABLE `表名` ADD INDEX index_name ( `列名1`, `列名2`, `列名3` )

6、添加外键

一般很少外键约束,外键约束靠代码逻辑实现

alter table 表名 add constraint fk_引用id foreign key(引用id) references 被引用表名 (被引用id)

alter table 表名 drop forign key fk_引用id

数据库的管理命令

1、连接

mysql -u root -p123456

mysql -u root -p

输入密码

2、查看操作

— 查看所有库

show databases;

— 查看所在库的表

show tables;

— 查看库的创建语句

show create database test;

— 查看表的创建语句

show create table test;

— 查看表的索引

— show index from table_name(表名)

show index from users;

— 查看mysql版本

select version();

— 查看当前用户

select user();

3、创建用户

— 特别需要注意,在 MySQL 中,账号由两部分组成:

— 1. user

— 2. host

— 即使 user 相同,只要 host 不同,也会被认为是不同账号。

— 这样可以非常方便对来自不同 ip 地址的访问进行精细的权限控制。

— 默认情况下,创建的用户 host 为 ‘%’,这是一个匹配符,跟模糊查询里的意思一样,表示匹配所有

create user [用户名] identified by ‘[密码]’;

create user vip identified by ‘vippp’; — 所有连接

create user vip@’127.0.0.1′ identified by ‘xxx’; — 本地连接

create user vip@’192.168.%’ identified by ‘yyy’; — 192.168 网段的连接

4、删除用户

drop user 用户名;

delete from mysql.user where user=’用户名’ and host=’%’

5、修改密码

set password from ‘用户名’ @host=password(‘新密码’);

update mysql.user set password=password(‘新密码’) where user=’用户名’ and host=’%’;

–使用password() 进行加密

6、设置用户权限

grant all on *.* to vip@’127.0.0.1′; –将所有数据库上的所有权利都授予通过本机连接的VIP用户;

grant all privileges on books.* to vip@’%’; –将数据库books上的说有权利都授予所有连接的vip用户;

grant select on books.users to vip@’%’; –将books数据库上的users表的访问权限开发给vip用户;

grant all on *.* to vip@’%’ with grant potions; –with grant potionss的意思是可以给vip给予权限给别的用户
flush privileges; –设置权限后要刷新权限

赞赏

82afdf36cef9226a00348d3bb04e1d78.png微信赞赏90432714904400da5d5bd172015dd080.png支付宝赞赏

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/24592.html

(0)
上一篇 2023-08-18 19:00
下一篇 2023-08-19 18:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信