Maison > Article > base de données > Oracle définit la clé primaire
Dans la base de données Oracle, la clé primaire est une contrainte utilisée pour identifier de manière unique les données de ligne dans chaque table. Les contraintes de clé primaire peuvent garantir que chaque ligne de données de la table possède une identité unique. Par conséquent, lors de la conception d'une base de données, il est très important de définir une clé primaire pour la table. Ci-dessous, nous expliquerons en détail comment configurer les clés primaires dans Oracle.
Lors de la création d'une table, vous pouvez définir la clé primaire de la table en définissant la clé primaire contraintes. Voici la syntaxe permettant de définir les contraintes de clé primaire lors de la création d'une table :
CREATE TABLE table_name ( column1 datatype constraint constraint_name PRIMARY KEY, column2 datatype, column3 datatype, ..... );
Dans la syntaxe ci-dessus, column1
représente le nom de la colonne dans la table et datatype
représente le type de données de la colonne. La contrainte PRIMARY KEY
est utilisée pour définir la contrainte de clé primaire, et constraint_name
est le nom de la contrainte de clé primaire. column1
代表表中的列名,datatype
代表该列的数据类型。而 PRIMARY KEY
约束用来设置主键约束,constraint_name
则是主键约束的名称。
例如,我们可以创建一个 Employee
表,并将 EmployeeID
列设置为主键:
CREATE TABLE Employee ( EmployeeID number(10) constraint pk_Employee PRIMARY KEY, FirstName varchar2(50), LastName varchar2(50), Age number(3) );
如果在创建表时没有设置主键约束,我们也可以在表创建后再添加主键约束。以下是在已存在表中添加主键约束的语法:
ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n);
在以上语法中,table_name
代表要添加主键约束的表名,constraint_name
是主键约束的名称,(column1, column2, ... column_n)
代表要设置为主键的列名,可以设置多个列作为主键。
例如,如果我们已经创建了一个 Orders
表,我们可以在该表中添加 OrderID
和 OrderDate
列作为主键:
ALTER TABLE Orders ADD CONSTRAINT pk_Orders PRIMARY KEY (OrderID, OrderDate);
在设置主键约束后,Oracle 会自动禁止表中出现 Null 值。如果插入任何一行数据时,包含一个 Null 值,则会被拒绝并触发错误消息。因此,要确保表中主键列中的全部值不为 Null。
在某些情况下,我们需要主键允许有 Null 值。此时,需要在主键列中使用 NULL
关键字来允许 Null 值。
例如,在 Employee
表中,如果我们不想要通过 EmployeeID
Employee
et définir la colonne EmployeeID
comme clé primaire :
CREATE TABLE Employee ( EmployeeID number(10) constraint pk_Employee PRIMARY KEY, FirstName varchar2(50), LastName varchar2(50), Age number(3), AltEmpID number(10) NULL );
table_name
représente le nom de la table à laquelle la contrainte de clé primaire doit être ajouté, constraint_name code> est le nom de la contrainte de clé primaire, <code>(column1, column2, ... column_n)
représente le nom de la colonne à définir comme clé primaire . Plusieurs colonnes peuvent être définies comme clé primaire. #🎜🎜##🎜🎜#Par exemple, si nous avons créé une table Commandes
, nous pouvons ajouter OrderID
et OrderDate
à la colonne de la table comme clé primaire : #🎜🎜#rrreeeNULL
dans la colonne de clé primaire pour autoriser les valeurs Null. #🎜🎜##🎜🎜#Par exemple, dans la table Employee
, si nous ne voulons pas identifier les employés via la colonne EmployeeID
, nous pouvons la configurer pour autoriser Null valeurs : #🎜🎜#rrreee#🎜🎜#Ce qui précède est la méthode de définition des contraintes de clé primaire dans Oracle. La définition des clés primaires est très importante pour les performances de la base de données et l'intégrité des données. Par conséquent, lors de la conception de la base de données, veillez à définir des contraintes de clé primaire pour garantir la cohérence et l'intégrité des données. #🎜🎜#Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!