小知识,大挑战!本文正在参与「程序员必备小知识」创作活动
简介
数据库是我们所有应用程序的基础,没有数据库的程序不是一个好程序,一般情况下我们都是通过可视化工具来创建数据库和数据库表格,今天给大家介绍一点不一样的,使用命令行工具来创建数据库的主键和外键。
这里选择3个常用的数据库,mysql、oracle和sqlserver分别介绍。
创建主键
所谓主键就是数据库中用来做主要索引的字段,应该怎么创建呢?
假设我们的数据表格名字叫做Customer,它有三个字段,分别是SID,Last_Name和First_Name。我们看下在这三个数据库中创建字段有什么区别:
MySQL
创建数据库表格:
CREATE TABLE Customer
(SID integer,
name varchar(30),
phone varchar(30),
PRIMARY KEY (SID));
复制代码
创建主键:
ALTER TABLE Customer ADD PRIMARY KEY (SID);
复制代码
Oracle
创建数据库表格:
CREATE TABLE Customer
(SID integer PRIMARY KEY,
name varchar(30),
phone varchar(30));
复制代码
创建主键:
ALTER TABLE Customer ADD PRIMARY KEY (SID);
复制代码
SQL Server
创建数据库表格:
CREATE TABLE Customer
(SID integer PRIMARY KEY,
name varchar(30),
phone varchar(30));
复制代码
创建主键:
扫描二维码关注公众号,回复:
13166152 查看本文章

ALTER TABLE Customer ADD PRIMARY KEY (SID);
复制代码
创建外键
外键表示的是数据库的关联关系,上面我们创建了Customer这张表,里面有个SID字段。现在我们再创建一个ORDERS表格,然后需要引用Customer表格的SID字段作为外键。看下怎么处理。
mysql
首先创建表格:
CREATE TABLE ORDERS
(ID integer,
Create_date date,
Customer_SID integer,
Amount double,
Primary Key (ID),
Foreign Key (Customer_SID) references CUSTOMER(SID));
复制代码
创建外键:
ALTER TABLE ORDERS
ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);
复制代码
Oracle
首先创建表格:
CREATE TABLE ORDERS
(ID integer primary key,
Create_date date,
Customer_SID integer references CUSTOMER(SID),
Amount double);
复制代码
创建外键:
ALTER TABLE ORDERS
ADD (CONSTRAINT fk_orders) FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);
复制代码
SQL Server
首先创建表格:
CREATE TABLE ORDERS
(ID integer primary key,
Create_date datetime,
Customer_SID integer references CUSTOMER(SID),
Amount double);
复制代码
创建外键:
ALTER TABLE ORDERS
ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);
复制代码
总结
以上就是三个数据库中创建主键和外键的基本操作,你学会了吗?
本文已收录于 www.flydean.com/01-db-prima…
最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!
欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!