当前位置: 首页 > news >正文

表的约束及代码练习

一.表的约束

查看表:mysql> select * from t_hero;

1.设置t_hero的主键为t_id
alter table t_hero add primary key(t_id);

 2.设置t_hero t_id属性非空
alter table t_hero modify t_id int not null;

3.设置name属性为非空非重复 
alter table t_hero modify name varchar(255) not null;
alter table t_hero add unique (name);

4.设置检查约束
alter table t_hero add constraint chk_gender check(sex in ('男', '女'));
desc t_hero;

二,句练习

1.基本查询语句

-- 查询所有数据
select * from t_hero;
 
-- 查询需要的字段信息
SELECT t_id, name, age FROM t_hero;


-- 查询一个字段,一个等值条件
select name from t_hero where t_id = 1;
 

 2.聚合函数使用
select count(*) from t_hero;

如果想要使用别称:

 3.常见条件查询
SELECT t_id, name, sex FROM t_hero WHERE t_id IN (2, 4);

 4.模糊查询
select * from t_hero where name like "猪%";

5.逻辑运算符and
SELECT t_id, name, sex FROM t_hero WHERE name LIKE '贾%' AND sex = '男';

6. 分组查询
select sex from t_hero group by sex;

这里可以和前面的聚合函数配合使用:

SELECT sex, COUNT(*) AS total 
FROM t_hero 
GROUP BY sex;

7.结果排序 
SELECT * FROM t_hero WHERE t_id <= 6 ORDER BY t_id;

三.外键与多表关联

1.创建用于外键关联的表

我已经创建好了如图:

2.创建外键相关字段

alter table t_hero add book int;

 

创建好之后,查看一下:desc t_hero;

3.创建外键约束

alter table t_hero 
add constraint fk_hero_book 
foreign key (book) references book(b_id);
  • alter table t_hero:指定修改目标表为 t_hero
  • add constraint fk_hero_book:添加名为 fk_hero_book 的约束。
  • foreign key (book):声明 t_hero 表的 book 列为外键。
  • references book(b_id):指定该外键关联 book 表的主键 b_id

4.多表关联
UPDATE t_hero SET book = 1 WHERE name = '猪八戒'; 

UPDATE t_hero SET book = 3 WHERE name = '贾宝玉'; 

UPDATE t_hero SET book = 2 WHERE name = '貂蝉'; 

UPDATE t_hero SET book = 4 WHERE name = '武松';

http://www.dtcms.com/a/91586.html

相关文章:

  • django入门教程之templates和static资源【五】
  • 八纲辨证总则
  • 如何优化 docker 镜像体积?
  • 【深度学习基础 2】 PyTorch 框架
  • EMQX Dashboard
  • Java 大视界 -- Java 大数据在智能金融区块链跨境支付与结算中的应用(154)
  • C#多态性入门:从零到游戏开发实战
  • Unity URP自定义Shader支持RenderLayer
  • 【Unity3D实现UI轮播效果】
  • 无人机+evtol:低空经济市场硬通货技术详解
  • HCIP(二)
  • 六十天Linux从0到项目搭建(第八天)(缓冲区、gitee提交)
  • 让 AI 更智能的检索增强生成(Retrieval-Augmented Generation)
  • 组态软件之万维组态介绍(web组态、html组态、vue2/vue3组态、组态软件、组态编辑器)
  • Redis 集群配置
  • 代码随想录算法训练营Day12 | Leetcode 226翻转二叉树、101对称二叉树、104二叉树的最大深度、111二叉树的最小深度
  • PHP框架 ThinkPHP 漏洞探测分析
  • 基于SpringBoot+Vue的在教务管理(课程管理)系统+LW示例
  • 技术迭代、流量困境与营销突破:基于开源AI大模型与S2B2C模式的创新路径研究
  • HCIA-AI人工智能笔记4:神经网络类型
  • SpringSecurity + OAuth2 限制一个用户(同端互斥)登录
  • c# winform 提高界面加载速度
  • 毕设知识点
  • 图解AUTOSAR_SWS_UDPNetworkManagement
  • 探索抓包利器ProxyPin,实现手机APP请求抓包,支持https请求
  • Pyecharts入门之绘制地图数据
  • 基于赛灵思 Xilinx RFSoC 的 VPX 6U 高速数据采集模块技术讨论
  • 查看linux系统文件描述符限制
  • 以鸿道Intewell工业操作系统为核心,构建AI机器人新生态
  • 34.[前端开发-JavaScript基础]Day11-王者轮播图-书籍购物车-BOM对象-JSON