SQL 如何添加主键

SQL 如何添加主键

在本文中,我们将学习如何向我们的SQL数据库表中的列添加主键。

主键 用于检索SQL表中的每条记录。定义为主键的字段必须包含不同且非空的值。您可以通过以下两种方法轻松地向列中添加主键:

  1. 使用创建表语句添加主键
  2. 使用修改表语句添加主键

如果您想要向表中的列添加主键,必须按照以下步骤按给定的顺序进行操作:

  1. 在系统中创建一个数据库。
  2. 在SQL数据库中创建表。
  3. 查看表结构。
  4. 在表中的列上添加主键。
  5. 查看表结构。

现在,我们将用一个示例来解释上述步骤。

步骤1:创建数据库

在结构化查询语言中,创建数据库是将结构化表格存储在数据库中的第一步。

使用以下SQL语法创建数据库:

CREATE DATABASE Database_Name;

假设您想创建Vehicles数据库。为此,您必须在结构化查询语言中输入以下命令:

CREATE DATABASE Vehicles;

步骤2:创建表并插入数据

现在,您需要使用以下SQL语法在数据库中创建一个表:

CREATE TABLE table_name  
(
column_Name_1 data type (size of the column_1),  
column_Name_2 data type (size of the column_2),  
column_Name_3 data type (size of the column_3),  
...  
column_Name_N data type (size of the column_1)
);  

假设您想在 Vehicles 数据库中创建 Cars 表。为此,您需要在SQL应用程序中键入以下查询语句:

CREATE TABLE Cars 
(
Car_Number INT AUTO_INCREMENT,
Model INT,  
Cars_Name VARCHAR (20),    
Colour VARCHAR (20),  
Price INT NOT NULL,
) ;

步骤3:在主键添加之前查看表结构

创建表和插入数据后,您可以通过在SQL应用程序中键入以下查询来查看Cars表的结构:

DESC Cars 
or
DESCRIBE Cars ;
Field Type NULL Key Default Extra
Car_Number INT NO - NULL auto_increment
Model INT Yes - NULL -
Car_Name Varchar(20) Yes - NULL
Color Varchar(20) Yes - NULL -
Price INT NO - NULL -

步骤4:在表中的列上添加主键

如果你想在表创建的同时添加主键,那么你需要使用以下SQL的CREATE TABLE语法:

CREATE TABLE table_name
(
Column_Name_1 data type (size of the column_1) NOT NULL PRIMARY  KEY, 
Column_Name_2 data type (size of the column_2), 
.......,
Column_Name_N data type (size of the column_N), 
) ;

示例

以下查询将创建’Cars’表,并在’Model’列上添加PRIMARY KEY约束:

CREATE TABLE Cars 
(
Car_Number INT AUTO_INCREMENT,
Model INT NOT NULL PRIMARY KEY,  
Cars_Name VARCHAR (20),    
Color VARCHAR (20) UNIQUE,  
Price INT NOT NULL
) ;

这个SQL查询不允许数据库用户在Cars表中插入相同型号的汽车。

步骤5:在主键添加后查看表结构

要检查在第4步执行的查询的结果, 你需要在SQL中输入以下DESC命令:

DESC Cars; 
Field Type NULL Key Default Extra
Car_Number INT Yes - NULL auto_increment
Model INT No PRI NULL -
Car_Name Varchar(20) Yes - NULL -
Color Varchar(20) Yes - NULL -
Price INT NO - NULL -
Average INT NO - 0 -

你可以在上面的SQL输出中看到Model列被创建为主键。现在,Model列必须包含唯一且非空的值。如果在这列中输入相同的和NULL值,SQL系统将显示错误。

从表中删除主键

如果你想要从表的列中删除主键,则必须在SQL中使用以下 ALTER 语法:

ALTER TABLE Table_Name DROP PRIMARY KEY;

以下查询从 Cars 表的 Model 列中删除了 PRIMARY KEY:

ALTER TABLE Cars DROP PRIMARY KEY;

向现有表添加主键

如果您想在现有表中添加主键,您必须使用以下SQL中的ALTER语法:

ALTER TABLE Table_Name ADD CONSTRAINT Constraint_Name PRIMARY KEY (Column_Name);

以下查询在数据库系统中,当Cars表已存在时,会在Color列上添加一个PRIMARY KEY约束:

ALTER TABLE Cars ADD CONSTRAINT clr_prmrykey PRIMARY KEY ( Color);

这个 SQL 中的 ALTER 查询不会允许你在 Cars 表中插入相同颜色的汽车。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程