xin3721网络学院为广大学员,准备了丰富了教学视频。为了更好的让大学配合视频进行学习,拓展学员的知

识面,我站特整理了大量的,技术文章,供学员参考。因此本教案需配合视频教程学习,

视频教程地址为:vb.net教程

外来键是一个(或数个)指向另外一个表格主键的栏位。外来键的目的是确定资料的参考完整性(referential integrity)。换言之,只有被准许的资料值才会被存入资料库内。

举例来说,假设我们有两个表格:一个 CUSTOMER 表格,里面记录了所有顾客的资料;另一个 ORDERS 表格,里面记录了所有顾客订购的资料。在这里的一个限制,就是所有的订购资料中的顾客,都一定是要跟在 CUSTOMER 表格中存在。在这里,我们就会在 ORDERS 表格中设定一个外来键,而这个外来键是指向 CUSTOMER 表格中的主键。这样一来,我们就可以确定所有在 ORDERS 表格中的顾客都存在 CUSTOMER 表格中。换句话说,ORDERS表格之中,不能有任何顾客是不存在于 CUSTOMER 表格中的资料。

这两个表格的结构将会是如下:

CUSTOMER 表格栏位名

性质

SID

主键

Last_Name

First_Name

ORDERS 表格

栏位名

性质

Order_ID

主键

Order_Date

Customer_SID

外来键

Amount

在以上的例子中,ORDERS 表格中的 customer_SID 栏位是一个指向 CUSTOMERS 表格中 SID 栏位的外来键。

以下列出几个在建置 ORDERS 表格时指定外来键的方式:

MySQL:

CREATE TABLE ORDERS

(Order_ID integer,

Order_Date date,

Customer_SID integer,

Amount double,

Primary Key (Order_ID),

Foreign Key (Customer_SID) references CUSTOMER(SID));

Oracle:

CREATE TABLE ORDERS

(Order_ID integer primary key,

Order_Date date,

Customer_SID integer references CUSTOMER(SID),

Amount double);

SQL Server:

CREATE TABLE ORDERS

(Order_ID integer primary key,

Order_Date datetime,

Customer_SID integer references CUSTOMER(SID),

Amount double);

以下的例子则是藉着改变表格架构来指定外来键。这里假设 ORDERS 表格已经被建置,而外来键尚未被指定:

MySQL:

ALTER TABLE ORDERS

ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);

Oracle:

ALTER TABLE ORDERS

ADD (CONSTRAINT fk_orders1) FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);

SQL Server:

ALTER TABLE ORDERS

ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);

mysql外键设置sql语句,SQL Server 2008之SQL语句外键相关推荐

  1. SQL Server 2008中SQL增强之三:Merge(在一条语句中使用Insert,Update,Delete)

    SQL Server 2008中SQL增强之三:Merge(在一条语句中使用Insert,Update,Delete) SQL Server 2008提供了一个增强的SQL命令Merge,用法参看MS ...

  2. 结局就在附近! (对于SQL Server 2008和SQL Server 2008 R2)

    介绍 (Introduction) As with everything else, all good things must come to an end. After hanging around ...

  3. SQL Server 2008中SQL应用系列及BI学习笔记系列--目录索引 @邀月

    邀月 的数据库学习 http://www.cnblogs.com/downmoon/archive/2011/03/10/1980172.html SQL Server 2008中SQL应用系列及BI ...

  4. SQL Sever 各版本下载 SQL Server 2012下载SQL Server 2008下载SQL Server 2005 下载SQL Server 2000 下载...

    SQL Server 2016简体中文企业版 文件名:cn_sql_server_2016_enterprise 64位下载地址:ed2k://|file|cn_sql_server_2016_ent ...

  5. SQL Server 2008中SQL之WaitFor

    SQL Server 2008中SQL应用系列--目录索引 在SQL Server 2005以上版本中,在一个增强的WaitFor命令,其作用可以和一个job相当.但使用更加简捷. 看MSDN: ht ...

  6. SQL Sever 各版本下载 SQL Server 2012下载SQL Server 2008下载SQL Server 2005 下

    SQL Sever 各版本下载 SQL Server 2012下载SQL Server 2008下载SQL Server 2005 下载SQL Server 2000 下载 SQL Server 20 ...

  7. sql2008和2012区别_SQL server 2008 和SQL server 2012 的优势

    SQL server 2008 和SQL server 2012 的优势 SQL server 数据库有SQL server 2008.SQL server 2012.SQL server 2014. ...

  8. sql服务器状态已停止,SQL SERVER 2008 SSMS - SQL Server Management Studio 已停止工作

    Overall summary: Final result:                  已通过 Exit code (Decimal):           0 Exit message:   ...

  9. sql server 2008 年累计数_Windows Server 2008 和 SQL Server 2008将终止支持 迁移至Azure 微软提供3年免费技术支持...

    点击上方蓝色字关注我们~ 迁移至 Azure 并利用免费扩展安全更新.了解有关支持终止建议的更多信息,请使用浏览器访问: https://www.microsoft.com/zh-cn/sql-ser ...

最新文章

  1. 网课谁的最好_报补习班,还是“上网课”?利用课余时间提高成绩,网课更加适合...
  2. OpenCV图像发现轮廓函数findContours()的使用
  3. pthread_join函数
  4. Eclipse导入类库【Java】
  5. GARFIELD@09-11-2004
  6. mysql java 问题_【Java】连接MySQL问题总结
  7. 洛谷——P1075 [NOIP2012 普及组] 质因数分解
  8. 电机不动 米兔机器人_深度解密米兔积木机器人八大黑科技
  9. PDF预览之PDFObject.js总结
  10. ResHacker使用小解
  11. Python实现视频转代码舞
  12. 奢华酒店品牌美高梅将入驻上海西岸;ClinChoice昆翎完成1.5亿美元融资 | 美通企业日报...
  13. 一定要独立,一定要争气
  14. line-height的理解
  15. 更改Linux系统的主机名(hostname)两种实用的方法
  16. java中Scanner类用法的详解
  17. 下级对上级回复已阅知_阅示、阅知、阅悉之间有什么区别
  18. 极简html4网页布局,浅淡极简的网页设计:少即多
  19. 安大计算机学院李伟教授,安徽大学高教所研究生导师聘任仪式在我校举行
  20. C语言从菜鸟到笨鸟 第一天

热门文章

  1. jQuery 计时器(jquery timers)简单应用
  2. Python读写ini文件的封装类
  3. linux常用特殊符号
  4. ExecutorService源码解读
  5. 哈工大C语言公开课练兵编程(二)
  6. 小波基函数构造matlab,五种常见小波基函数及其matlab实现全解.docx
  7. java byte 正数最大_关于JAVA中Byte类型的取值范围的推论(*零为正数,-128在计算机中的表示方法...)...
  8. faster rcnn resnet_RCNN, Fast R-CNN 与 Faster RCNN理解及改进方法
  9. python如何使用字典_Python-如何使用点“。” 访问字典成员?
  10. 生活质量衡量系统_数据质量与数据质量八个维度指标