C++ MySQL day7

一.回顾

在mysql里注释应该用-- 注释

点击查看代码
-- 求字符串的字符数 
SELECT CHAR_LENGTH('ABC');

-- 将字符串"超用心"和"在线教育"拼接成新的字符串
SELECT CONCAT("超用心", "在线教育");

--求"2019-05-04"到现在一共有多少天
SELECT TIMESTAMPDIFF(DAY, '2019-05-04', NOW());

--如果字段score的值大于90,则展示为优秀,否则展示为良好
SELECT IF(score>90, '优秀', '良好');

二.表与表之间的关系

1.表与表之间的关系

数据表是用来描述实体信息的
这种关系在数据库中体现就称之为表与表之间的关系。数据库通过主外键关联关系来体现表与表之间的关联关系。

2.主外键关联关系的定义

点击查看代码
DROP TABLE IF EXISTS cls;
CREATE TABLE cls(
number INT(11) AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT '班级编号,主键',
name VARCHAR(20) NOT NULL COMMENT '班级名称',
grade VARCHAR(20) NOT NULL COMMENT '年级'
)ENGINE=InnoDB CHARSET=UTF8 COMMENT='班级表';
DROP TABLE IF EXISTS student;
CREATE TABLE student(
number BIGINT(20) AUTO_INCREMENT NOT NULL COMMENT '学号,主键',
name VARCHAR(20) NOT NULL COMMENT '姓名',
sex VARCHAR(2) DEFAULT '男' COMMENT '性别',
age TINYINT(3) DEFAULT 0 COMMENT '年龄',
cls_number INT(11) NOT NULL COMMENT '所属班级',
PRIMARY KEY(number),
-- 字段cls_number与cls表中的number字段相关联
FOREIGN KEY(cls_number) REFERENCES cls(number)
)ENGINE=InnoDB CHARSET=UTF8 COMMENT='学生表';

3.约束

1.主键约束

点击查看代码
-- 添加主键约束:保证数据的唯一性
ALTER TABLE 表名 ADD PRIMARY KEY(字段名1,字段名2, ..., 字段名n)
-- 删除主键约束
ALTER TABLE 表名 DROP PRIMARY KEY;

2.外键约束

点击查看代码
-- 添加外键约束
ALTER TABLE 表名1 ADD CONSTRAINT 外键名称 FOREIGN KEY(表名1的字段名) REFERENCES 表名
2(表名2的字段名);
-- 删除外键约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;

3.唯一约束

点击查看代码
-- 为字段添加唯一约束
ALTER TABLE 表名 ADD CONSTRAINT 约束名称 UNIQUE(字段名1, 字段名2, ..., 字段名n);
-- 删除字段的唯一约束
ALTER TABLE 表名 DROP KEY 约束名称;

4.非空约束

点击查看代码
-- 为字段添加非空约束
ALTER TABLE 表名 MODIFY 字段名 列类型 NOT NULL;
-- 删除字段非空约束
ALTER TABLE 表名 MODIFY 字段名 列类型 NULL;

5.默认值约束

点击查看代码
-- 为字段添加默认值
ALTER TABLE 表名 ALTER 字段名 SET DEFAULT 默认值;
-- 删除字段的默认值
ALTER TABLE 表名 ALTER 字段名 DROP DEFAULT;

6.自增约束

点击查看代码
-- 为字段添加自增约束
ALTER TABLE 表名 MODIFY 字段名 列类型 AUTO_INCREMENT;
-- 为字段删除自增约束
ALTER TABLE 表名 MODIFY 字段名 列类型;
posted @ 2025-04-30 00:37  北燃  阅读(16)  评论(0)    收藏  举报