>>与软件开发有关的知识:操作系统,数据库,网络通信等 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 29480 个阅读者 刷新本主题
 * 贴子主题:  SQL PRIMARY KEY 约束 回复文章 点赞(0)  收藏  
作者:sunshine    发表时间:2019-08-12 13:07:23     消息  查看  搜索  好友  邮件  复制  引用

  

SQL  PRIMARY KEY 约束

SQL PRIMARY KEY 约束

     PRIMARY KEY 约束唯一标识数据库表中的每条记录。

     主键必须包含唯一的值。

     主键列不能包含 NULL 值。

     每个表都应该有一个主键,并且每个表只能有一个主键。            

CREATE TABLE 时的 SQL PRIMARY KEY 约束

     下面的 SQL 在 "Persons" 表创建时在 "P_Id" 列上创建 PRIMARY KEY 约束:

                 MySQL:

    CREATE TABLE Persons
    (

    P_Id int NOT NULL,

    LastName varchar(255) NOT NULL,

    FirstName varchar(255),

    Address varchar(255),

    City varchar(255),

    PRIMARY KEY (P_Id)

    )

             SQL Server / Oracle / MS Access:

   CREATE TABLE Persons
    (

    P_Id int NOT NULL PRIMARY KEY,

    LastName varchar(255) NOT NULL,

    FirstName varchar(255),

    Address varchar(255),

    City varchar(255)

    )

    如需命名 PRIMARY KEY 约束,并定义多个列的 PRIMARY KEY 约束,请使用下面的 SQL 语法:

                 MySQL / SQL Server / Oracle / MS Access:

    CREATE TABLE Persons
    (

    P_Id int NOT NULL,

    LastName varchar(255) NOT NULL,

    FirstName varchar(255),

    Address varchar(255),

    City varchar(255),

    CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)

    )

   注释:在上面的范例中,只有一个主键 PRIMARY KEY(pk_PersonID)。然而,pk_PersonID 的值是由两个列(P_Id 和

LastName)组成的。                

ALTER TABLE 时的 SQL PRIMARY KEY 约束

     当表已被创建时,如需在 "P_Id" 列创建 PRIMARY KEY 约束,请使用下面的 SQL:

                 MySQL / SQL Server / Oracle / MS Access:

    ALTER TABLE Persons

    ADD PRIMARY KEY (P_Id)

    如需命名 PRIMARY KEY 约束,并定义多个列的 PRIMARY KEY 约束,请使用下面的 SQL 语法:

                 MySQL / SQL Server / Oracle / MS Access:

    ALTER TABLE Persons

    ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)

                 注释:如果您使用 ALTER TABLE 语句添加主键,必须把主键列声明为不包含 NULL 值(在表首次创建时)。              

撤销 PRIMARY KEY 约束

     如需撤销 PRIMARY KEY 约束,请使用下面的 SQL:

                 MySQL:

    ALTER TABLE Persons

    DROP PRIMARY KEY

             SQL Server / Oracle / MS Access:

    ALTER TABLE Persons

    DROP CONSTRAINT pk_PersonID

    



程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-02-20 21:39:48 重新编辑]
  Java面向对象编程-->操作符
  JavaWeb开发-->访问数据库(Ⅰ)
  JSP与Hibernate开发-->使用JPA和注解
  Java网络编程-->非阻塞通信
  精通Spring-->Vue组件开发基础
  Vue3开发-->Vue组件开发高级技术
  TCP的三次握手建立链接和四次挥手释放链接
  一条垃圾SQL,把 64 核 CPU 快跑崩了!
  SaltStack 自动化运维实战
  MySQL 复制表
  MySQL 删除数据库
  SQL Server 和 MySQL 中的 Date 函数
  SQL ALTER TABLE 语句
  SQL的创建索引( CREATE INDEX) 语句的用法
  SQL DEFAULT 约束
  比较XML的子元素和属性
  MySQL:如何用 SELECT 语句的 WHERE 子句过滤返回的数据
  linux系列之常用运维命令整理
  数据库设计(一)——数据库设计-生命不息,奋斗不止
  MySQL的开发必会的SQL语句
  Mysql支持的数据类型(总结)
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。