include::../description.adoc[]

== Noncompliant Code Example

----
CREATE TABLE employee
(
  employee_id INTEGER NOT NULL,
  first_name VARCHAR(42) NOT NULL,
  last_name VARCHAR(42) NOT NULL  
);
----

== Compliant Solution

----
CREATE TABLE employee
(
  employee_id INTEGER NOT NULL PRIMARY KEY,
  first_name VARCHAR(42) NOT NULL,
  last_name VARCHAR(42) NOT NULL  
);
----

----
CREATE TABLE employee
(
  employee_id INTEGER NOT NULL,
  first_name VARCHAR(42) NOT NULL,
  last_name VARCHAR(42) NOT NULL,
  CONSTRAINT PK_Employee PRIMARY KEY (employee_id)
);
----

== Exceptions

No issue is reported on temporary tables as they are often used to manipulate data and do not always require a primary key.

Example:

----
CREATE TABLE #EmployeeName (last_name VARCHAR(42) NOT NULL); -- Compliant
----

ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
