文档介绍:1: 数据模型 = 信息结构 + 数据
2 数据结构,数据操作(操作规则)
3 数据库系统作用:组织存取,定义数据结构,增删改,
4 drop删除 alter 修改 index索引
5 select (目标,多个可用逗号astName
其他连接选项
JOIN: 如果表中有至少一个匹配,则返回行 同JOIN ON只要有至少一个匹配就返回可以返回多个但是没有的话就不会再返回
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行(区别上表中至少一个)
FULL JOIN: 只要其中一个表中存在匹配,就返回行(只要在任意一个表中存在该id就返回这一行)
17 表的结合,,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
18 SELECT LastName,Firstname
INTO Persons_backup
FROM Persons
WHERE City='Beijing'
充分表现出语法的扩展性。
INNER JOIN Orders
ON =
19 创建数据库
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
数据类型
描述
integer(size)
int(size)
smallint(size)
tinyint(size)
仅容纳整数。在括号内规定数字的最大位数。
decimal(size,d)
numeric(size,d)
容纳带有小数的数字。
"size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。
char(size)
容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
在括号中规定字符串的长度。
varchar(size)
容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
在括号中规定字符串的最大长度。
date(yyyymmdd)
容纳日期。
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
NOT NULL,
作为修饰符表明接受限制
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
注意:创建表时MySQL一般把额外属性加在表的最下方(另开一行加UNIQUE (lastname) 或者primary key(lastname))其他类型数据库直接在列后面加上额外属性(lastname varchar(255)UNIQUE Primary key)
1 Unique约束:如果需要命名 UNIQUE 约束,以及为多个列定义 UNIQUE 约束,请使用下面的 SQL 语法:
CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
当表已被创建时,如需在 "P_Id" 列创建 UNIQUE 约束,请使用下列 SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE PersonsADD UNIQUE (P_Id)多个的话逗号并列前面类似的加上??为什么?CONSTRAINT uc_PersonID(命名Unique约束在撤销的时候用)
撤销 UNIQUE 约束
MySQL:
ALTER TABLE Persons
DROP INDEX uc_PersonID
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID
2 :Primary Key 属性用法同Unique(数据库之间差异性依然存在)
3 :Foreign Key 用法(均为在Order中定义person的一个属性为外键)
MySQL:FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)定义属性在声明之后
SQL Server / Oracle / MS Access:
Id_P int FOREIGN KEY REFERENCES P