序
这里主要记录下Mysql中的Mysql库&表&属性命令的一些用法
库&表&属性命令
-
SELECT INTO
-
SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中
-
SELECT column_name(s) INTO new_table_name [IN externaldatabase] FROM old_tablename
-
IN 子句可用于向另一个数据库中拷贝表
-
SELECT * INTO Persons IN ‘Backup.mdb’ FROM Persons
-
-
CREATE DATABASE
-
CREATE DATABASE 用于创建数据库
-
CREATE DATABASE database_name
-
-
CREATE TABLE
- CREATE DATABASE 用于创建数据库
CREATE TABLE 表名称 ( 列名称1 数据类型, 列名称2 数据类型, 列名称3 数据类型, .... )
- CREATE DATABASE 用于创建数据库
-
NOT NULL
- NOT NULL 约束强制列不接受 NULL 值
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
- NOT NULL 约束强制列不接受 NULL 值
-
UNIQUE
- UNIQUE 约束唯一标识数据库表中的每条记录
CREATE TABLE Persons ( Id_P int NOT NULL, City varchar(255), UNIQUE (Id_P) )
- 如果需要命名 UNIQUE 约束,以及为多个列定义 UNIQUE 约束
CREATE TABLE Persons ( Id_P int NOT NULL, City varchar(255), CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName) )
-
当表已被创建时,如需在 “Id_P” 列创建 UNIQUE 约束,请使用下列 SQL:
ALTER TABLE Persons ADD UNIQUE (Id_P)
-
如需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束,请使用下面的 SQL 语法:
ALTER TABLE Persons ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
-
如需撤销 UNIQUE 约束,请使用下面的 SQL:
ALTER TABLE Persons DROP INDEX uc_PersonID
- UNIQUE 约束唯一标识数据库表中的每条记录
-
PRIMARY KEY
- PRIMARY KEY 约束唯一标识数据库表中的每条记录
CREATE TABLE Persons ( Id_P int NOT NULL, City varchar(255), PRIMARY KEY (Id_P) )
- PRIMARY KEY 约束唯一标识数据库表中的每条记录
-
FOREIGN KEY
- 一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY
CREATE TABLE Orders ( Id_O int NOT NULL, Id_P int, PRIMARY KEY (Id_O), FOREIGN KEY (Id_P) REFERENCES Persons(Id_P) )
- 一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY
-
CHECK
- CHECK 约束用于限制列中的值的范围
CREATE TABLE Persons ( Id_P int NOT NULL, City varchar(255), CHECK (Id_P>0) )
- CHECK 约束用于限制列中的值的范围
-
DEFAULT
- 创建 DEFAULT 约束
CREATE TABLE Persons ( Id_P int NOT NULL, City varchar(255) DEFAULT 'Sandnes' )
-
如果在表已存在的情况下为 “City” 列创建 DEFAULT 约束,请使用下面的 SQL
ALTER TABLE Persons ALTER City SET DEFAULT ‘SANDNES’
-
如需撤销 DEFAULT 约束,请使用下面的 SQL
ALTER TABLE Persons ALTER City DROP DEFAULT
- 创建 DEFAULT 约束
-
CREATE INDEX
-
在表上创建一个简单的索引
CREATE INDEX index_name ON table_name (column_name)
-
在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
-
假如您希望索引不止一个列,您可以在括号中列出这些列的名称,用逗号隔开:
CREATE INDEX PersonIndex ON Person (LastName, FirstName)
-
删除
ALTER TABLE table_name DROP INDEX index_name
-
-
DROP
-
DROP TABLE 语句用于删除表(表的结构、属性以及索引也会被删除):
DROP TABLE 表名称
-
DROP DATABASE 语句用于删除数据库:
DROP DATABASE 数据库名称
-
SQL TRUNCATE TABLE 语句
如果我们仅仅需要除去表内的数据
TRUNCATE TABLE 表名称
-
-
ALTER
-
如需在表中添加列,请使用下列语法
ALTER TABLE table_name ADD column_name datatype
-
要删除表中的列,请使用下列语法
ALTER TABLE table_name DROP COLUMN column_name
-
要改变表中列的数据类型,请使用下列语法
ALTER TABLE table_name ALTER COLUMN column_name datatype
-
-
AUTO INCREMENT
- 通常希望在每次插入新记录时,自动地创建主键字段的值
CREATE TABLE Persons ( P_Id int NOT NULL AUTO_INCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), PRIMARY KEY (P_Id) )
-
默认地,AUTO_INCREMENT 的开始值是 1,每条新记录递增 1
-
要让 AUTO_INCREMENT 序列以其他的值起始,请使用下列 SQL 语法:
ALTER TABLE Persons AUTO_INCREMENT=100
- 通常希望在每次插入新记录时,自动地创建主键字段的值
-
VIEW
-
视图是基于 SQL 语句的结果集的可视化的表
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
-
使用下面的语法来更新视图
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
-
删除
DROP VIEW view_name
-