mysql2

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 第三章   保证数据完整性 3.1 数据完整性的概述:实体完整性  域完整性  引用完整性  用户自定义完整性 3.2 数据完整性的实现   3.2.1 创建非空约束  (在定义列后加上  not null )默认为 null   3.2.2 创建主键约束-- primary key   主键列不允许储存null值。

第三章   保证数据完整性

3.1 数据完整性的概述:实体完整性  域完整性  引用完整性  用户自定义完整性
3.2 数据完整性的实现
  3.2.1 创建非空约束  (在定义列后加上  not null )默认为 null
  3.2.2 创建主键约束-- primary key   主键列不允许储存null值。
  3.2.3 设置唯一约束   unique
  3.2.4 设置默认值  default

  3.2.5 设置检查约束(MySQL不支持)

创建表:student
3.2.6 使用自动编号列:auto_increment  
1: 改变自动增长值:
 alter table  student  auto_increment=1000;
2:添加主键约束 ,唯一约束,默认约束,自动增长(自动增长只能用在主键上),都用 change
alter table student  change  id id primary key ;
alter table student  chang gender gender varchar(4) unique;
alter table student  change name name varchar(20) default "张三";
alter table student  change id id int primary key  auto_increment; 

3:删除主键约束,唯一约束(删除唯一约束的时候  实际上是删除索引),默认约束,外键约束 ,都用drop 

alter table student drop primary key;
alter table student drop index gender;
alter table student drop name name varchar(20);
alter table student drop primary key fk_name;

4:添加外键约束用add。

5:contraint   约束 ; references 引用 ; foreign key 外键 ;default 默认;unique 唯一;auto_increment 自动增长;
 
第四章  使用DML语句更改数据
     本章目标   使用insert语句添加数据   使用update语句修改数据   使用delete语句删除数据
4.1 添加新数据
4.1.1 插入单行记录:
                   insert into <表名> (列名列表)values (<值列表>)
  或者       insert  into <表名> values (<值列表>)    -- 简写

4.1.2 插入多行记录 :
      insert into <表名> (<列名列表>) values (<值列表>),(<值列表>),。。。。;
或者   insert  into <表名> values (<值列表>);
          insert  into <表名> values (<值列表>);
          insert  into <表名> values (<值列表>);

4.1.3 数据表的复制 
      1: 以创建新表的复制形式
create table student_bak1 select * from student;
   2:复制数据
create table student_bak2(
pk_id int primary key auto_increment,
name varchar(20) not null,
age int ,
gender char(3)  default "男",
birthday date,
phoneNo char(12)
);
insert into  student_bak2_select * from student; 

4.2 更改已有数据

update <表名> set <新列植列表> where <过滤条件>;
4.3 删除数据 
delete from <表名> where <过滤条件>;
 
删除 student_bak2的所有信息
delete from  student_bak2;  -- delete 语句删除会记录日志 删完数据以后 自动增长依然继续递增
truncate table student_bak2; -- truncate 不会在日志中记录的   删完数据以后 自动增长回到初始值 1
  删除 
update student set age=null  where name="未成年";
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
Prometheus 负载均衡 监控
详解Gateway
详解Gateway
1903 0
|
存储 Java Linux
10分钟入门Flink--安装
本文介绍Flink的安装步骤,主要是Flink的独立部署模式,它不依赖其他平台。文中内容分为4块:前置准备、Flink本地模式搭建、Flink Standalone搭建、Flink Standalong HA搭建。
10分钟入门Flink--安装
|
存储 关系型数据库 计算机视觉
高精度恒流/恒压(CC/CV)原边反馈功率转换器
一、产品概述 PR6214是一款应用于小功率AC/DC充电器和电源适配器的高性能离线式功率开关转换器。PR6214采用PFM工作模式,使用原边反馈架构,无需次级反馈电路,因此省去了光耦和431,应用电路简单,降低了系统的成本和体积,提高了可靠性。芯片内置了高达±5%精度的恒流/恒压(CC/CV)控制电路,输出曲线如图所示。 PR6214 在恒流控制(CC)时,恒流值和输出功率可以通过 CS 引脚的限流电阻 RS 设定,内置电感补偿电路保证输出的电流具有较高的恒流精度。在恒压控制(CV)时,内置输出采样电路和线损补偿电路既保证了芯片输出电压的高精度又保证了较好的负载调整率,同时,内置的准谐振
215 1
|
7月前
|
前端开发 JavaScript
什么是深拷贝;深拷贝和浅拷贝有什么区别;深拷贝和浅拷贝有哪些方法(详解)
浅拷贝适用于只复制对象的第一层属性,且这些属性不是引用类型。深拷贝适用于需要完全独立的副本,包括对象和数组的嵌套结构。选择哪种拷贝方式取决于你的具体需求和场景。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
SQL 安全 关系型数据库
SQL 注入神器:SQLMap 简单使用
SQL 注入神器:SQLMap 简单使用
|
人工智能 数据处理 语音技术
通义语音AI技术问题之查看KAN-TTS在ModelScope上的模型列表如何解决
通义语音AI技术问题之查看KAN-TTS在ModelScope上的模型列表如何解决
142 10
python编写下象棋游戏|4-14
python编写下象棋游戏|4-14
|
Java 数据库连接
解决No enum constant org.apache.ibatis.type.JdbcType.XXX
解决No enum constant org.apache.ibatis.type.JdbcType.XXX
920 0
|
机器学习/深度学习 数据可视化 Python
使用LIME解释各种机器学习模型代码示例
机器学习模型变得越来越复杂和准确,但它们的不透明性仍然是一个重大挑战。理解为什么一个模型会做出特定的预测,对于建立信任和确保它按照预期行事至关重要。在本文中,我们将介绍LIME,并使用它来解释各种常见的模型。
923 0
|
机器学习/深度学习 监控 算法
yolov8_track追踪加分割(yolo目标检测+追踪+分割)
yolov8_track追踪加分割(yolo目标检测+追踪+分割)