Mysql和sqlServer命令比较
按语句功能划分,依次讲解
目录
一数据定义    2
1 数据库操作基本命令    2
2 CREATE TABLE --创建一个数据库表    2
2.1    PRIMARY KEY 约束(主键)区别解析:    2
2.1.1 创建primary key    2
2.1.2 撤销 PRIMARY KEY 约束    3
2.1.3 创建外健约束    3
2.1.4 撤销外健约束    4
2.2    UNIQUE 约束(唯一的,独一无二的)区别解析    4
2.2.1 创建UNIQUE约束    4
2.2.2 撤销 UNIQUE 约束    5
2.3    CHECK 约束    5
2.3.1 创建 CHECK约束    5
2.3.2 撤销 CHECK约束    6
2.4    DEFAULT 约束(系统默认值)    6
2.4.1 创建DEFAULT约束    6
2.4 .2 撤消DEFAULT约束    7
2.5    索引区别    7
2.6    主键自动增加的区别    7
2.7    MySQL支持enum,和set类型,SQL Server不支持    8
2.7.1    枚举enum    8
2.7.2    集合set    9
2.8    MySQL不支持nchar,nvarchar,ntext类型    10
3    DROP TABLE –删除一个数据库表    10
4    显示库表    11
5    alter 修改库表    11
二 数据操作    12
2.1 limit和top    12
2.2 ISNULL()函数    12
2.3 select查询    12
2.4 insert 插入    12
2.6 update 修改    12
2.7 delete 删除    13
三 语法定义    13
3.1 注释符区别    13
3.2 识别符的区别    13
3.3存储过程的区别(未经验证,从网上的)    13
3.4字符串连接    14
四 函数和数据类型的区别    14
4.1 Date 函数    14
五性能比较    15
数据定义
1 数据库操作基本命令
Mysql:
create database name; 创建数据库
use databasename; 选择数据库
drop database name 直接删除数据库,不提醒 –
2 CREATE TABLE --创建一个数据库表
1
2
2.1 PRIMARY KEY 约束(主键)区别解析:
2.1.1 创建primary key
Mysql:   
CREATE TABLE Persons
(
Id_P  int  NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)              //声明主健写在最后
)
SqlServer:
CREATE TABLE Persons
(
Id_P int NOT NULL PRIMARY KEY,    //声明主健 紧跟列后
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
但是如果表存在,之后给表加主健时:
Mysql 和SqlServer
ALTER TABLE Persons ADD PRIMARY KEY (Id_P)
2.1.2撤销 PRIMARY KEY 约束
MySQL:
ALTER TABLE Persons DROP PRIMARY KEY
SQL Server
ALTER TABLE Persons DROP CONSTRAINT pk_PersonID
2.1.3 创建外健约束
MySQL:
CREATE TABLE Orders
(
O_Id  int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (O_Id),
FOREIGN  KEY (Id_P)  REFERENCES  Persons(Id_P)    //写在最后
)
SQL Server
CREATE TABLE Orders
(
O_Id  int  NOT NULL  PRIMARY KEY,
OrderNo  int NOT NULL,
Id_P  int  FOREIGN KEY REFERENCES Persons(Id_P)    //顺序不同
)
如果在 "Orders" 表已存在的情况下为 "Id_P" 列创建 FOREIGN KEY 约束,请使用下面的 SQL:
MySQL / SQL Server
ALTER  TABLE  Orders ADD  FOREIGN KEY  (Id_P) REFERENCES  Persons(Id_P)
2.1.4 撤销外健约束
MySQL:
ALTER TABLE Orders DROP  FOREIGN KEY f k_PerOrders
SQL Server
ALTER TABLE Orders DROP CONSTRAINT  fk_PerOrders
2.2 UNIQUE 约束(唯一的,独一无二的)区别解析
UNIQUE 约束唯一标识数据库表中的每条记录。
UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
2.2.1 创建UNIQUE约束
MySQL:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (Id_P)                //写在最后
)
SQL Server
CREATE TABLE Persons
(
Id_P int NOT NULL UNIQUE,        //紧跟列后
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
2.2.2 foreign key references用法撤销 UNIQUE 约束
MySQL:
ALTER TABLE Persons DROP INDEX  uc_PersonID
SQL Server
ALTER TABLE Persons DROP CONSTRAINT uc_PersonID
2.3 CHECK 约束
CHECK 约束用于限制列中的值的范围。
如果对单个列定义 CHECK 约束,那么该列只允许特定的值。
如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
2.3.1 创建 CHECK约束
下面的 SQL 在 "Persons" 表创建时为 "Id_P" 列创建 CHECK 约束。CHECK 约束规定 "Id_P" 列必须只包含大于 0 的整数。
My SQL:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)                      //写在最后
)
SQL Server
CREATE TABLE Persons
(
Id_P int NOT NULL CHECK (Id_P>0),    //紧跟列后
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
MySQL / SQL Server:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes') //多个条件
)
如果在表已存在的情况下为 "Id_P" 列创建 CHECK 约束,请使用下面的 SQL:
MySQL / SQL Server:
ALTER TABLE Persons ADD CHECK (Id_P>0)
2.3.2 撤销 CHECK约束
Sqlserver:
ALTER  TABLE  Persons  DROP CONSTRAINT chk_Person
Mysql我没有到怎么删除。
2.4 DEFAULT 约束(系统默认值)
DEFAULT 约束用于向列中插入默认值。
如果没有规定其他的值,那么会将默认值添加到所有的新纪录。
2.4.1 创建DEFAULT约束
下面的 SQL 在 "Persons" 表创建时为 "City" 列创建 DEFAULT 约束:
My SQL / SQL Server:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'    //紧跟列后,默认值字符串Sandnes

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。