表与数据完整性
来源:互联网 发布:铝合金模板设计软件 编辑:程序博客网 时间:2024/05/17 02:06
1.表
/*修改表*/
/*增加一列数据*/
ALTER TABLE t_student ADD phone BIGINT;
/*删除一列数据( column列)*/
ALTER TABLE t_student DROP COLUMN phone;
/*修改列的名称 (有下划线的为更改后的名称)*/
ALTER TABLE t_student CHANGE COLUMN phonenum phonenumber BIGINT;
ALTER TABLE t_student CHANGE COLUMN phonenumber phonenum BIGINT;
/*修改列的数据类型*/
ALTER TABLE t_student CHANGE phonenumber phonenumber BIGINT;
ALTER TABLE t_student MODIFY phonenumber VARCHAR(100);
/*修改表名*/
ALTER TABLE t_student RENAME t_stu;
SELECT * FROM t_stu;
2.索引
含义:提高整个数据库操作进度的数据库对象,通过创建一个内部的索引表来达到快速搜索的目的。(一般作用于一到多个列)
劣势:会降低INSERT UPDATE DELETE 的操作性能。(原因:这些操作发生时内部索引会更新,会降低数据库的整体性能)
/*创建索引*/
CREATE INDEX nameIndex ON t_stu(s_name);
SELECT * FROM t_stu WHERE s_name="姓名";
SELECT * FROM t_stu WHERE s_name="%名"; #索引不会起作用(从左到右执行)
SELECT * FROM t_stu WHERE s_name="姓%" #索引会起作用
/*删除索引*/
ALTER TABLE t_stu DROP INDEX nameIndex;
3.保证数据完整性
数据完整性:数据的可靠性和准确性。
Why:防止存储垃圾数据,提高数据库效率。
数据完整性分类:
1).实体完整性:将行定义为特定表的唯一实体。
Why:保证每一行数据有效,保证实体能相互区别。
如何实现:设置主键约束、唯一约束、或标识列属性来实现。
主键约束:是应用于表的列的一个约束。主键列不能为空,不可有重复 ,主键列默认为非空;
* 主键可以是一个列组成,也可以由多个列组成一个复合主键。**一个表中只能使用一次,
一个列时: CREATE TABLE t_student( CREATE TABLE t_student(
s_id INT, s_id INTPRIMARY KEY,
s_name VARCHAR(20), s_name VARCHAR(20),
s_phone BIGINT UNIQUE, s_phone BIGINT UNIQUE,
PRIMARY KEY (s_id) );
);
多个列时:CREATE TABLE t_student(
s_id INT,
s_name VARCHAR(20),
s_age INT,
s_phone BIGINT UNIQUE,
PRIMARY KEY (s_id,s_name,s_age)
);
唯一约束:指给定列的所有的值必须是唯一的。
**一个表中能使用多次,允许空置,可定义在允许为NULL值的列上,主键约束只能定义在not null值的列上。
s_age INT NOT NULLUNIQUE,
2)域完整性:只给定列的输入有效性。
实现方法:限制类型,外键约束、检查约束、默认值定义、非空约束。
非空约束:在定义是假上NOT NULL加上关键词。
默认值定义:当没有给定值时,表格会自动填充默认值。
s_phone BIGINTDEFAULT 132,
外键约束:外键关联主键上强制的一个约束。(用约束将两个表关联起来)
3).引用完整性:引用的编号是有效的。
外键约束:外键关联主键上强制的一个约束。(用约束将两个表关联起来)
/*外键*/ *s_t_id INTNOT NULL REFERENCES t_tea(t_id); 一列单独定义
SELECT * FROM t_student;
CREATE TABLE t_student(
s_id INT NOT NULL,
s_name VARCHAR(20) NOT NULL,
s_age INT NOT NULL UNIQUE,
s_phone BIGINT DEFAULT 132 ,
s_t_id INT,
PRIMARY KEY (s_id),
CONSTRAINT teaKey FOREIGN KEY (s_t_id) REFERENCES t_tea(t_id)
);
CREATE TABLE t_tea(
t_id INT PRIMARY KEY,
t_name VARCHAR(20),
t_age INT
);
4).用户自定义完整性:保证自定义规则。
- 表与数据完整性
- 表的修改与数据完整性
- 数据完整性与约束
- 索引与数据完整性约束
- Mysql之数据完整性约束与表维护语句
- MySQL入门之数据完整性约束与表维护
- 6- hadoop 数据完整性与校验
- 数据完整性
- 数据完整性
- 数据完整性
- 数据完整性
- 数据完整性
- 创建表和定义数据完整性
- 数据库之表、保证数据的完整性
- 数据完整性及多表查询
- 01创建表和定义数据完整性
- SQLServer_第7章 索引与数据完整性
- SQL应用与开发:(八)数据完整性
- #ifdef DEBUG的理解
- Android 通过串口模拟 模拟物理按键
- 梦想还是要有的,万一实现了呢
- bzoj2594 水管局长数据加强版
- Iteration Vs Recursion Java
- 表与数据完整性
- JavaScript 操作 Cookie
- 大数据系列第五课:scala基础
- clientHeight / scrollHeight / offsetHeight 等属性的区别图
- 属性动画中的插值器和估值器
- 找出两链表的交点
- DT大数据梦工厂- 第6课 精通Spark集群搭建与测试
- TCP客户端和服务器多个socket连接的问题求助
- Android输入法界面管理(打开/关闭/状态获取)