Pgsql 与MySQL
1.create table table_name (…)
格式PSQL与MySQL相同,细节上,接下来我一一说明:
①建表主键自增:
MySQL 使用 AUTO_INCREMENT
PgSQL 使用 SERIAL
#MySQL
create table table_name(
id int(10) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (id)
)
#PSQL
create table table_name(
id SERIAL PRIMARY KEY
);
②复合主键
MySQL 使用 PRIMARY KEY (…)
PSQL 使用 CONSTRAINT constrant_name PRIMARY KEY (…)
#MySQL
create table table_name(
id int(10) NOT NULL AUTO_INCREMENT,
name varchar(30) NOT NULL,
PRIMARY KEY (id,name)
);
#PSQL
create table table_name(
id SERIAL,
name varchar(30) ,
CONSTRAINT constrant_name PRIMARY KEY (id,name)
);
③唯一键
mysql 使用 unique key unique_name (…)
PSQL 使用 CONSTRAINT constrant_name unique(…)
-- MySQL
create table table_name(
id int(10) NOT NULL AUTO_INCREMENT,
name varchar(30) NOT NULL,
id1 int(10) NOT NULL,
id2 int(10) NOT NULL,
PRIMARY KEY (id,name),
unique key unique_name (id1,id2)
)
-- PSQL
create table table_name(
id SERIAL,
name varchar(30) NOT NULL,
id1 int NOT NULL,
id2 int NOT NULL,
CONSTRAINT constrant_key PRIMARY KEY (id,name),
CONSTRAINT constrant_key unique (id1,id2),
)