news 2026/10/24 1:40:53

数据库 - 表结构变更

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据库 - 表结构变更

一、建表删表

1.建表语句

--建表语句createtableStudent(IDINTEGERconstraintStudent_KEY_1primarykey,--设定主键,同时会自动创建唯一索引NAME VARCHAR2(50)NOTNULL,--设定非空SEXCHAR(1)constraintSEX_CHKCHECK(SEXIN('0','1')),--添加检查性约束,值只能为0/1AGE NUMBER(3),BIRTHDAYDATE,Student_NUMBER NUMBER(3,1),--设定为:3位数字.1位数字Student_CHARCHAR(10)default'默认值1',--注意CHAR类型对于不足的长度会自动补空格Student_VARCHAR2 VARCHAR2(10)default'默认值2');--添加注释commentontableStudentis'学生表';commentoncolumnStudent.IDis'主键';commentoncolumnStudent.NAMEis'姓名';commentoncolumnStudent.SEXis'性别';commentoncolumnStudent.AGEis'年龄';commentoncolumnStudent.BIRTHDAYis'生日';commentoncolumnStudent.Student_NUMBERis'NUMBER类型测试';commentoncolumnStudent.Student_CHARis'CHAR类型测试';commentoncolumnStudent.Student_VARCHAR2is'VARCHAR2类型测试';

删除表

--删除表,包括表数据和结构droptable表名-- 清空表数据truncatetable表名

添加注释

--表注释commentontable表名is'注释';commentontable所有者.表名is'注释';--字段注释commentoncolumn表名.字段名is'注释';commentoncolumn所有者.表名.字段名is'注释';

2.字段类型

下表列出了几种常用数据类型。要注意,不同的关系数据库管理系统中支持的数据类型不完全相同

数据类型含义
CHAR(n),CHARACTER(n)长度为 n 的定长字符串,对于长度不足n的数据会自动补空格
VARCHAR(n) ,CHARACTERVARYING(n)最大长度为 n 的变长字符串
CLOB字符串大对象
BLOB二进制大对
INT,INTEGER长整数(4字节)
SMALLINT短整数(2字节)
BIGINT大整数(8字节)
NUMERIC(p,d)定点数,由 p 位数字(不包括符号、小数点)组成,小数点后面有 d 位数字。即(3,1)应为:3位数字.1位数字
DECIMAL(p,d),DEC(p,d)同 NUMERIC
REAL取决于机器精度的单精度浮点数
DOUBLE PRECISION取决于机器精度的双精度浮点数
FLOAT(n)可选精度的浮点数,精度至少为 n 位数字
BOOLEAN逻辑布尔量
DATE日期,包含年、月、日,格式为 YYYY - MM - DD
TIME时间,包含一日的时、分、秒,格式为 HH : MM : SS
TIMESTAMP时间戳类型
INTERVAL时间间隔类型

二、字段修改

--新增字段--新增字段名之后跟新增字段的类型altertable表名add(新增字段名 varchar2(4))--修改字段类型--修改字段名之后跟修改为的参数类型和长度altertable表名modify(修改字段名 NUMBER(8,2));--修改字段名altertable表名renamecolumn旧字段名to修改后的新字段名;--删除字段altertable表名dropcolumn删除字段名

修改字段默认值

--修改字段默认值--主要此修改不会影响到存量数据,之后影响之后的增量数据altertable表名modify字段default默认值;

三、关键字约束

1.类型和概念

类型含义备注
unique唯一约束创建唯一约束会自动创建唯一索引
primary主键约束创建主键约束会自动创建唯一索引
foreign外键约束

主键约束(PRIMARY KEY)

1、主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。
2、是不可能(或很难)更新.
3、主键列上没有任何两行具有相同值(即重复值),不允许空(NULL).
4、主健可作外健,唯一索引不可;

唯一性约束(PRIMARY KEY)
1、唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表上可以放置多个唯一性约束.
2、只要唯一就可以更新.
3、即表中任意两行在指定列上都不允许有相同的值, 允许空(NULL).
4、一个表上可以放置多个唯一性约束

2.相关语句

--新增单个唯一性约束altertable表名addconstraint添加的唯一性约束名unique(对应的字段列);--新增组合唯一性约束altertable表名addconstraint添加的唯一性约束名unique(对应的字段列1,对应的字段列2);--新增单个主键约束altertable表名addconstraint添加的关键字名称primarykey(对应的主键列);--新增组合主键约束altertable表名addconstraint添加的关键字名称primarykey(对应的主键列1,对应的主键列2);--新增外键约束--与外键关联的主表的字段必须设置为主键--要求从表不能是临时表,主从表的字段具备相同的数据类型、字符长度和约束。altertable表名addconstraint外键约束名foreignkey(表名对应的字段)references外键约束对应的表名(外键约束对应的字段名);--删除关键字约束altertable表名dropconstraint删除的关键字名称;--禁用关键字约束altertable表名disableconstraint关键字约束名;--启用关键字约束altertable表名enableconstraint关键字约束名;

3.关键字约束的区别

唯一性约束和主键约束的区别:(PRIMARY KEY)
1、唯一性约束允许在该列上存在NULL值,而主键约束的限制更为严格,不但不允许有重复,而且也不允许有空值。
2、在创建唯一性约束和主键约束时可以创建聚集索引和非聚集索引,但在 默认情况下主键约束产生聚集索引,而唯一性约束产生非聚集索引

四、检查约束

--添加检查约束--只能输入限定的值altertable表名addconstraint检查约束名称check(检查字段in('检查值1','检查值2'));--只能输入限制范围的值altertable表名addconstraint检查约束名称check(检查字段>0and检查字段<=100);--删除检查ALTERTABLE表名DROPconstraint检查约束名称

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/24 1:39:29

【02】VSCode详细安装教程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 1:38:29

IM核心结构体设计:消息状态、已读回执与多端同步

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 1:38:23

低功耗嵌入式电源管理:PMIC与MCU协同架构实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 1:38:02

Java爬取网页表格:Jsoup解析、合并单元格与翻页实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 1:37:06

4G远程断电报警器:工业级电力状态监护系统设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 1:36:53

DELL保修查询三分钟闭环指南:服务标签、ESC与激活日详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华