>>与软件开发有关的知识:操作系统,数据库,网络通信等 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 28661 个阅读者 刷新本主题
 * 贴子主题:  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开发-->面向对象开发方法概述之UML语言(下)
  JSP与Hibernate开发-->接口
  Java网络编程-->Web运作原理(Ⅲ)
  精通Spring-->JavaWeb应用入门(Ⅰ)
  Vue3开发-->Servlet技术详解(Ⅲ)
  Linux系统的五种IO模型
  Mysql--所有版本安装以及完全卸载
  SaltStack 自动化运维实战
  centos7.4安装配置使用简介Kubernetes (k8s)
  excel数据对比-----查找两列(表)的相同数据
  作为一个程序员,CPU的这些硬核知识你必须会!
  打开黑盒:从 MySQL架构设计出发,看它是如何执行一条SQL语句...
  MySQL ALTER命令
  MySQL 删除数据表
  MySQL 管理
  SQL统计数据:COUNT() 函数
  SQL 通配符
  MySQL5.7慢查询日志时间与系统时间差8小时原因
  MySQL的开发必会的SQL语句
  我心中的MySQL DBA
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


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