1、-32768至32767(2字节)MEDIUMINT-sqrt(2,23)至sqrt(2,23)-1INT-sqrt(2,31)至sqrt(2,31)-1BIGINT-sqrt(2,63)至sqrt(2,63)-1浮点型浮点数类型FLOAT(M,N)DOUBLE(M,N)字符类型CHAR(N)定长1至255个字符VARCHAR(N)可变长1至65535TINYTEXT(N)TEXT(N)MEDIUMTEXT(N)LONGTEXT(N)SQL语句的书写规范SQL语句中不区分关键字的大小写SQL语句中不区分列名和对象名的大小写SQL语句对数据库中数据的大小写敏感SQL语句中使用-注释,当使用-注释
2、时,-后面至少有-个空格,多行注释用/* */数据库的创建与删除数据库的创建CREATE DATABASE database_name;在MYSQL COMMAND LINE CLIENT中书写SQL语句时,在SQL语句后面都要加上分号数据库的删除DROP DATABASE database_name;数据表的创建与更新数据库中的表数据记录:在数据表中的每一行被称为数据记录字段:数据表中的每一列被称为字段主键(PRIMARY KEY):作为数据表中唯一的表示,保证了每一天数记录的唯一性。主键在关系数据库中约束实体完整性。所谓的实体完整性,是指对数据表中行的约束。外键(FOREIGN KEY):
3、外键用来定义表与表之间的关系。在数据表中,如果属性列F是关系B中的一个属性(并不是关系B的主键),并且属性列F是关系A的主键,则F就是B的外键。外键在关系数据库中约束参照完整性。所谓的参照完整性是指表与表之间的约束。索引:索引是指向数据表中的一个指针,指向索引字段在数据表中的物理位置。一般可以在如下几种情况下建立索引在主键列中创建索引多表连接时,在经常使用的连接列上创建索引在经常使用WHERE子句查询的列上创建索引在经常进行分组GROUP BY及排序ORDER BY的列上创建索引约束:为了保证数据的完整需要使用约束1. 唯一约束(UNIQUE)使用唯一约束的某一列或者某一组中没有相同的值,即保
4、证了值的唯一性。但是唯一约束中可以插入NULL值2. 主键约束(PRIMARY KEY)保证使用主键约束的列中只能有唯一的值,并且不能包含NULL值,数据表中每一列只能定义一个PRIMARY KEY3. 外键约束(FOREIGN KEY)保证表参照完整性,确保对一个数据表的数据操作不会对与之关联的表造成不利的影响4. 检查约束(CHECK)限制列的取值范围或者取值条件,可以为一个列定义多个CHECK约束5. 非空约束(NOT NULL)用于对列的约束创建数据表CREATE TABLE table_name(column_name1 datatype constraint_condition1,
5、column name2 datatype constraint_condition2)使用约束1.唯一约束(UNIQUE)用来保证某一列或者某一组列中没有相同的值,一般为列创建了一个唯一约束后,数据库会自动为该列建立一个唯一索引,其索引名与约束名相同 例如:CREATE TABLE T_dept(dept_ID VARCHAR(15) UNIQUE,dept_Name VARCHAR(10) 2.主键约束CREATE TABLE T_result(stuID VARCHAR(15),cruID VARCHAR(15),result DOUBLE,PRIMARY KEY(stuID,curID
6、)3.外键约束FOREIGN KEY表名1(列名1) REFERENCES 表名2 (列名2)ON UPDATE CASCADE|SET NULL|RESTRICTON DELETE CASCADE|SET NULL|RESTRICT其中,FOREIGN KEY是关键字,表名1是可选的,列名1是指定数据表中用于外键约束的外键,表名2表示主表的名字,列名2主表中与从表中列名1对应列的名字,后面的ON UPDATE ON DELETE表示对表中的数据的修改或者删除,主从表之间采取什么样的操作方式,是可选的CASCADE:级联删除,如果主表中一条数据记录被删除,从表中的数据也将删除SET NULL:
7、置空删除,如果主表中的一条数据记录南北删除,从表中与之相连的数据也将置空RESTRICT:受限删除,如果主表中的一条数据被删除,则在执行DELETE语句时系统会报错,通知用户与主表相对应的数据在从表中仍然存在,但是与主表相对应的数据在从表中不被删除,它是默认的方式curID VARCHAR(15),FOREIGN KEY (stuID) REFERCES T_student (stuID) ON DELETE CASCADE,3.检查约束CHECKCREATE TABLE T_curriculum(curID VARCHAR(15) PRIMARY KEY,curName VARCHAR(10
8、),credit INT,CHECK(credit BETWEEN 3 AND 8)4.非空约束NOT NUL使用索引1. 唯一索引:在数据表中使用UNIQUE可以为一个数据列定义一个唯一索引,唯一索引中的每一个索引值只对应数据表中的一条记录,保证了数据列中记录的唯一性2. 主索引:在数据表中使用PRIMARY KEY可以为一个数据列定义一个主索引,所谓的主索引就是在主键列中建立索引3. 单列索引:定义在数据表中一个数据列上的索引就是单列索引,一般在数据查询时,如果WHERE子句中经常用到的数据表中的某一列作为查询条件,就可以把该列创建为单列索引4. 复合索引:索引可以定义在一个数据表的多个数
9、据列上,像这样的索引被称为复合索引5. 聚簇索引:创建与删除索引CREATE UNIQUE|CLUSTER INDEX index_nameON table_name(column_name 排序方式)排序:关键字ASC表示升序排列,关键字DESC表示降序排列修改数据库中的表1. 向表中增加一列ALTER TABLE table_name ADD(column_name datatype constraint_condition)例如:ALTER TABLE T_teacher ADD salary INT NOT NULL2. 增加一个约束ALTER TABLE table_name ADD
10、 constraint_type (column_name)例如:ALTER TABLE dept ADD PRIMARY KEY (dept_ID)3. 增加一个索引ALTER TABLE table_name ADD INDEX(column_name1,column_name2)ALTER TABLE T_curriculum ADD INDEX i_credit(credit)4. 修改表中的某一列ALTER TABLE table_name MODIFY column_name datatypeALTER TABLE T_student MODIFY sex CHAR(2)5. 删除
11、表中的某一列ALTER TABLE table_name DROP column_name6. 删除一个约束条件ALTER TABLE table_name DROP constraint_type7. 删除数据库中的表DROP TABLE table_nameCASCADE CONSTRAINTS删除表时要使用CASCADE CONSTRAINTS级联删除从表中的外键约束数据的查询操作查询全部列的数据记录SELECT * FROM table_name or view_name,table_name1 or view_name1查询表中指定的列SELECT 目标列,目标列FROM 表名或者视
12、图名,表名或者视图名在SELECT语句中查询数据表或者视图指定的列时,在SELECT语句中指定的列名必须是指定的数据表或者视图中存在的列查询表中不重复的记录SELECT DISTINCT 目标列,目标列使用列别名查询SELECT 目标列 AS 列别名 ,目标列 AS 列别名FROM 表名或者视图名 ,表名或者视图名在SELECT语句中使用列别名的形式对数据表或者视图查询时,可以再在查询的列名后面使用一个空格键来代替AS,空格后面再跟上列别名的名字。如果列别名对字母大小写敏感,或者在使用包含有空格或者特殊字符的列别名,则必须使用单引号或者双引号将其引起来,否则系统将报错对查询的记录进行运算SELECT语句还可以使用算数运算符对指定的列进行运算,其中算术运算符包括加减乘除以及模除,在SELECT语句中对指定的列进行算术运算符进行运算时,只会改变显示的结果,并不会改变数据表中列的原有值使用连接符(|)连接字段在ORACLE中,可以使用|连接符连接多个字段,在使用连接符时,连接的数据类型应该是相同的,如果不同系统将会报错,如果需要在连接的字段中加入字符或者是日期类型的值,需要将该字符值或者日期类型的值使用单引号引起来。注意,在MYSQL和MS SQL SERVER中并不支持连接符|,在MYSQL中可以使用CONCAT函数,在MS SQL SERVER中可以使用+来连接关于N
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1