关于约束的增删改查、关于数据表的管理和关于DML数据操作(增删改查)

1.关于约束的增删改查的一些整理

1.给表追加主键约束

alter table 表名 add primary key (字段名);

2.删除主键约束

alter table 表名 drop primary key;

3.默认情况下AUTO_INCREMENT 的开始值是1,如果希望修改开始值不为1,可以使用如下SQL:

ALTER TABLE 表名 AUTO_INCREMENT = 开始值;

4.在建表时加联合主键

CREATE table myunion(
mid int,
mname varchar(10),
maddress VARCHAR(10),
-- constraint 联合主键约束名 PRIMARY key (字段名1,字段名2,......)
constraint uk PRIMARY key (mid,mname)
);

5.追加唯一约束

alter table 表名 add unique(列名);

6.删除唯一约束

alter table 表名 drop index 列名;

7.追加非空/空约束

alter table 表名 modify 列名 数据类型 not null/null;

8.删除非空约束

alter table 表名 modify 列名 数据类型 null;

9.添加外键约束

1)在建表时添加外键约束,这里建议在添加外键约束时使用constraint关键字给外键约束添加一个名字,方便后面做外键删除的操作

-- 建立一个课程表,引用讲师表的编号字段
CREATE table mycourse(
cid int PRIMARY KEY auto_increment,
cname VARCHAR(20),
tid int,
-- 添加外键约束,利用constraint关键字自定义约束名
constraint fk_mycourse foreign key(tid) references myteacher(tid)
);
​

2)-- 事后追加外键约束

ALTER TABLE mycourse add constraint fk_mycourse1 FOREIGN key(tid) references myteacher(tid);

10.删除外键约束(关于外键约束可以查看我的主页,其中一篇文章—“如何删除外键约束”主要介绍了如何删除外键约束)

1)先查看外键约束名

查看外键约束有多种方式,第一种,前提:如果是在建表时或者事后添加的外键给起了名字,

可以通过SHOW INDEX IN 表名;

第二种通过show CREATE TABLE 表名 查看建表语句;

如果在建表时,没有自定义外键的名字,系统会自动添加,第一种和第二种方法可能不适用,不同的客户端可尝试一下,不行的话通过找设计表—外键 查看外键名称

2)删除外键约束

ALTER TABLE mycourse drop foreign key fk_mycourse1;

2.关于数据表的管理

1.查看某个数据库中的所有表

show tables;

2.查看表结构

desc 表名;

3.查看创建表的SQL语句

SHOW CREATE TABLE 表名;

4.同时复制表结构和数据

CREATE TABLE 新表名 查询语句;

5.删除表

drop table 表名;

6.为已经存在的表添加新列

alter table 表名 add 列名 类型;

ALTER TABLE student ADD hobby VARCHAR(100);

7.修改已经存在的列的数据类型

alter table 表名 modify 列名 新的数据类型;

例:将student表中的爱好列的数据类型扩充到VARCHAR(200)
ALTER TABLE student MODIFY hobby VARCHAR(200);  

8.修改列名

alter table 表名 change 旧列名 新列名 类型;

9.删除列

alter table 表名 drop 列名;

10.修改表名

pename table 表名 to 新表名;

11.修改字符集

alter table 表名 character set 字符集;

例:将sutden2表的编码修改成gbk  
ALTER TABLE student2 CHARACTER SET gbk;

12.截断表

截断表的作用是把原来的表摧毁,重新创建一个结构和原来一模一样的新表,语法如下:

truncate table 表名;

TRUNCATE TABLE table;

3.关于DML数据操作(增删改查)

1.插入数据

INSERT INTO 表名 ( 列名1 ,列名2, ......列名n ) VALUES (值1, 值2, ... 值n),(值1, 值2, ... 值n),(值1, 值2, ... 值n),......;

2.插入日期值

1)sysdate();

2)now();

3.通过子查询插入多行数据

INSERT INTO 表名 (列名1, 列名2, 列名3…) 查询语句;

4.修改数据

update 表名 set 列名=值 where ;

5.删除所有行

delete from 表名;

6.删除某行

delete from 表名 where ;

  • 33
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
在关系型数据库中,DML(Data Manipulation Language,数据操作语言)是用于添加、修改和删除数据的语言。以下是DML的基本操作: 1. 添加数据(INSERT):将新数据添加到表中,语法如下: ``` INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); ``` 其中,table_name是表名,column1、column2、column3等是列名,value1、value2、value3等是要添加的值。 例如,向名为“students”的表中添加一条记录,包括id、name和age三个字段,值分别为1、“Tom”和18,可以这样写: ``` INSERT INTO students (id, name, age) VALUES (1, 'Tom', 18); ``` 2. 修改数据(UPDATE):修改表中已有的数据,语法如下: ``` UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition; ``` 其中,table_name是表名,column1、column2等是要修改的列名,value1、value2等是新的值,condition是修改的条件。 例如,将名为“students”的表中id为1的记录的age字段修改为20,可以这样写: ``` UPDATE students SET age = 20 WHERE id = 1; ``` 3. 删除数据(DELETE):从表中删除数据,语法如下: ``` DELETE FROM table_name WHERE condition; ``` 其中,table_name是表名,condition是删除的条件。 例如,将名为“students”的表中id为1的记录删除,可以这样写: ``` DELETE FROM students WHERE id = 1; ``` 需要注意的是,DML语句会直接修改数据库中的数据,因此在使用时需要谨慎操作,避免误操作导致数据丢失。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序筱王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值