SQL数据库对表操作

对表格的操作无非就是
1.创建表
2.更新内容
3.增加内容
4.删除内容
5.修改列,增加一个列,删除一个列,修改一个列的属性。

**

1.创建一张表

**
在这里插入图片描述
创建一张表

#创建表的时候写注释
CREATE TABLE userinfo(
	id INT COMMENT '编号',
	uname VARCHAR(40) COMMENT '用户名',
	address VARCHAR(120) COMMENT '家庭住址',
	hobby VARCHAR(200) COMMENT '爱好'
 
)COMMENT = '用户信息表';
 
#修改表的注释
ALTER TABLE userinfo COMMENT '用户信息资料表';
 
#修改字段的注释,注意:字段名和字段类型照写就行
ALTER TABLE userinfo MODIFY COLUMN uname VARCHAR(40) COMMENT '姓名';
 
#查看表注释的方法,在生成的SQL语句中看
SHOW CREATE TABLE userinfo;
#在元数据的表里面看
USE information_schema;
SELECT * FROM TABLES WHERE TABLE_SCHEMA='shoppingcart' AND TABLE_NAME='userinfo';
 
#查看字段注释的方法
SHOW FULL COLUMNS FROM userinfo;
#在元数据的表里面看
SELECT * FROM COLUMNS WHERE TABLE_SCHEMA='shoppingcart' AND TABLE_NAME='userinfo';

给表加一些注释。

CREATE TABLE admin(
		id int(4) not NUll auto_increment, -- 设置一下自增长,只有主键可以自增长
		username VARCHAR(24) NOT NULL,
		age int(2),
		classes VARCHAR(100),
		PRIMARY KEY(id) -- 设置一下,我们这个是住建
		
		
)

给表增加一个列
记得可以后面加一个default()默认给一些操作是比较好。额
表格最后还可以加一个comment给表一个备注
在这里插入图片描述

ALTER TABLE admin ADD COLUMN sm VARCHAR(10) PRIMARY KEY -- 增加一个列

修改表的格式和字段
在这里插入图片描述

ALTER TABLE admin MODIFY COLUMN sex int(10) -- 修改一个列的属性

modify代表的是,修改一些属性,就是我们常说的小改。

在这里插入图片描述
change代表进行大的修改,就是大改。

在这里插入图片描述
删除一个字段。
删除一个到多个字段,就是drop。

在这里插入图片描述
**

修改列的类型或者约束

**

在这里插入图片描述

修改一个列的类型
在这里插入图片描述
在这里插入图片描述
记住,删除列和删除行,本身是不一样的!!!!
删除行,本身对表的整体架构,没有任何影响,就像一只部队
从军区到军到师团营排连,每一套班子,都是这只部队的整体架子,架子,而每个位置上的人都是部队的内容,撤换一个人,或者几个人都是小事,都是没改变整体架构的小时,真正的大事是对整体架构动手的时候。

主键不许为空,建立一张表,主键非空。
在这里插入图片描述

给一个表格插入数据

insert into 表名字

在这里插入图片描述
这样实际上是一口气插入的意思,但是我们工作时候并不是一口气插入,而是分开插入

insert into 表名 set 字段 = ?,字段 = ?
或者insert into 表名 values(…),(…),(…)一口气插入一大堆。

或者我们只是插入一部分
在这里插入图片描述

修改表

在这里插入图片描述
修改更新表,一般都是要加限定条件,不然会修改太多了
在这里插入图片描述
删除一个外连接的表
在这里插入图片描述
多表就是,本质就是,我要和别的表连接到一起之后,才能知道,我这个表中数据是不是需要被删除。根据和别人的表进行拼接之后,我才能知道这个数据是不是需要被删除。
两个情况:
1.在连接后,我只需要删除一个表的数据
2.在连接之后需要删除两个表的数据

就像,共产党部队铲除内奸一样,需要分别属于两个部门的两个人进行对峙,看情况可能两个人都需要被铲除。
在这里插入图片描述
我们在多个表拼接,删除一个信息的时候,也是需要经常性判断,是删除两个表的信息,还是只删除一个表的信息,都是有可能的。

联合表删除

联表删除

1、从数据表t1 中把那些id值在数据表t2 里有匹配的记录全删除掉

DELETE t1 FROM t1,t2 WHERE t1.id=t2.id 或

DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id

2、从数据表t1里在数据表t2里没有匹配的记录查找出来并删除掉

DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL 或

DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL

3、从两个表中找出相同记录的数据并把两个表中的数据都删除掉

DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25

注意此处的delete t1,t2 from 中的t1,t2不能是别名

如:delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在数据里面执行是错误的(MYSQL 版本不小于5.0在5.0中是可以的)

delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在数据里面执行是错误的(MYSQL 版本小于5.0在5.0中是可以的)

删除一个表的数据

直接删除一个普通表中的数据
DELETE FROM 表名 WHERE 字段1 = ‘’ and 字段2 = ‘’ and …

复制一张表
在这里插入图片描述
在这里插入图片描述
复制表中的一部分数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值