一、内容:
- SQL ALTER TABLE 语句
- SQL AUTO INCREMENT 字段
- SQL Views(视图)
- SQL Date(日期) 函数
- SQL NULL值
- SQL NULL 函数
- SQL 通用数据类型
- SQL DB 数据类型
二、具体内容:
-
SQL ALTER TABLE 语句
ALTER TABLE 语句用于在已有的表中添加、删除或修改列。
-
SQL ALTER TABLE语法:
如需在表中添加列,如下:
ALTER TABLE table_name ADD column_name datatype
如需删除表中的列,如下:
ALTER TABLE table_name DROP COLUMN column_name #注:某些数据系统不允许这种在数据库中删除列的方式
改变表中列的数据类型,如下:
-
SQL Server / MS Access:
ALTER TABLE table_name ALTER COLUMN column_name datatype
-
My SQL / Oracle:
ALTER TABLE table_name MODIFY COLUMN column_name datatype
-
-
-
SQL AUTO INCREMENT 字段
Auto-increment 会在新纪录插入表中时生成一个唯一的数字。
-
用于MySQL 的语法
把SQL语句把“Persons”表中的“ID”列定义为 auto-increment主键字段:
CREATE TABLE Persons ( ID int NOT NULL AUTO_INCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), PRIMARY KEY(ID) )
MySQL 使用 AUTO_INCREMENT 关键字来执行 auto-increment任务。
默认地, AUTO_INCREMENT的开始值是1,每条新纪录递增1.
要让 AUTO_INCREMENT序列以其他的值起始,请使用如下SQL语法:
ALTER TABLE Persons AUTO_INCREMENT=100
要再“Persons”表中插入新纪录,不必为“ID”列规定值(会自动添加一个唯一的值):
INSERT INTO Persons (FirstName,LastName) VALUES (‘Lars‘,‘Monsen‘)
上面的 SQL 语句会在 "Persons" 表中插入一条新记录。"ID" 列会被赋予一个唯一的值。"FirstName" 列会被设置为 "Lars","LastName" 列会被设置为 "Monsen"。
-
-
SQL Views(视图)
视图是可视化的表。
-
SQL CREATE VIEW语句
视图包含行和列,就像一个真实的表,视图中的字段就是来自 一个或多个数据库中的真实的表中的字段。
可以向视图添加SQL函数,WHERE以及JOIN语句,也可以呈现数据,就像这些数据来自于某个单一的表一样。
-
SQL CREATE VIEW语法:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
-
-
SQL 更新视图
可以使用下面的语法来更新视图。
-
SQL CREATE OR REPLACE VIEW 语法:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
-
-
SQL 撤销视图
可以通过DROP VIEW命令来撤销视图。
-
SQL DROP VIEW 语法:
DROP VIEW view_name
-
-
-
SQL Date(日期) 函数
-
MySQL Date 函数
下面的表格列出了MySQL 中最重要的内建日期函数:
函数 描述 NOW() 返回当前的日期和时间 CURDATE() 返回当前的日期 CURTIME() 返回当前的时间 DATE() 提取日期或日期/时间表达式的日期部分 EXTRACT() 返回日期/时间的单独部分 DATE_ADD() 向日期添加指定的时间间隔 DATE_SUB() 从日期减去指定的时间间隔 DATEDIFF() 返回两个日期之间的天数 DATE_FORMAT() 用不同的格式显示日期/时间 -
SQL Server Date函数
下面的表格列出了SQL Server 中最重要的内建日期函数:
函数 描述 GETDATE() 返回当前的日期和时间 DATEPART() 返回日期/时间的单独部分 DATEADD() 在日期中添加或减去指定的时间间隔 DATEDIFF() 返回两个日期之间的时间 CONVERT() 用不同的格式显示日期/时间 -
SQL Date 数据类型
-
MySQL
使用下列数据类型在数据库中存储日期或日期/时间值:
- DATE -格式 :YYYY-MM-DD
- DATETIME - 格式:YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式:YYYY-MM-DD HH:MM:SS
- YEAR - 格式:YYYY 或 YY
-
SQL Server
- DATE -格式 :YYYY-MM-DD
- DATETIME - 格式:YYYY-MM-DD HH:MM:SS
- SMALLDATETIME - 格式:YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式:唯一的数字
-
-
-
SQL NULL值
NULL值代表遗漏的未知数据。
表的列可以存放NULL值。
NULL值的处理方式与其他值不同。
NULL用作未知的或不适用的值的占位符。
-
SQL IS NULL
#选取在“Address”列中带有NULL值的记录 SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NULL;
-
SQL IS NOT NULL
#选取在“Address”列中不带有NULL值的记录 SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NOT NULL;
-
-
SQL NULL 函数
SQL ISNULL() 、NVL() 、 IFNULL() 和 COALESCE() 函数:
微软的 ISNULL() 函数用于规定如何处理 NULL 值。
NVL()、IFNULL() 和 COALESCE() 函数也可以达到相同的结果。
-
SQL 通用数据类型
数据类型定义列中存放的值的种类。
数据库表中的每个列都要求 有名称和数据类型。
-
SQL DB 数据类型
在MySQL中,有三种主要的类型:Text(文本)、 Number(数字) 和 Date/Time(日期/时间) 类型。