DROP TABLE IF EXISTS t1; CREATE TABLE t1 (a PRIMARY KEY, b ) ENGINE= ; SHOW KEYS IN t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment t1 0 PRIMARY 1 a # # NULL NULL # # INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'); INSERT INTO t1 (a,b) VALUES (1,'c'); ERROR 23000: Duplicate entry '1' for key 'PRIMARY' # Statement ended with one of expected results (ER_DUP_ENTRY,ER_DUP_KEY). # If you got a difference in error message, just add it to rdiff file DROP TABLE t1; CREATE TABLE t1 (a PRIMARY KEY, b PRIMARY KEY ) ENGINE= ; ERROR 42000: Multiple primary key defined CREATE TABLE t1 (a , b , PRIMARY KEY (a,b) ) ENGINE= ; SHOW INDEX IN t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment t1 0 PRIMARY 1 a # # NULL NULL # # t1 0 PRIMARY 2 b # # NULL NULL # # INSERT INTO t1 (a,b) VALUES (1,'a'),(1,'b'),(2,'a'),(2,'b'); INSERT INTO t1 (a,b) VALUES (1,'b'); ERROR 23000: Duplicate entry '1-b' for key 'PRIMARY' # Statement ended with one of expected results (ER_DUP_ENTRY,ER_DUP_KEY). # If you got a difference in error message, just add it to rdiff file DROP TABLE t1; CREATE TABLE t1 (a KEY, b , (b) ) ENGINE= ; SHOW INDEX IN t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment t1 0 PRIMARY 1 a # # NULL NULL # # t1 1 b 1 b # # NULL NULL # # DROP TABLE t1; CREATE TABLE t1 (a , b PRIMARY KEY ) ENGINE= ; SHOW INDEX IN t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment t1 0 PRIMARY 1 b # # NULL NULL # # ALTER TABLE t1 DROP INDEX `PRIMARY`; ALTER TABLE t1 ADD CONSTRAINT PRIMARY KEY pk (a); SHOW KEYS IN t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment t1 0 PRIMARY 1 a # # NULL NULL # # ALTER TABLE t1 DROP PRIMARY KEY; DROP TABLE t1;