2016-04-28 1106 views
-1

UNIQUE和UNIQUE KEY有什么区别?哪个更好?UNIQUE和UNIQUE KEY之间的区别mySQL

例如:

CREATE TABLE `table1` (
attr1 INT PRIMARY KEY AUTO_INCREMENT, 
attr2 INT, 
attr3 INT, 
attr4 INT, 
UNIQUE (attr3,attr4) 
); 

AND

CREATE TABLE `table1` (
attr1 INT PRIMARY KEY AUTO_INCREMENT, 
attr2 INT, 
attr3 INT, 
attr4 INT, 
UNIQUE KEY `constraintName` (attr3,attr4) 
); 

我的问题是特别是约UNIQUE的使用和UNIQUE KEY关键字和结果中的每个的执行的差异。

+0

@VincentOrback在发布此问题之前,我阅读了该问题的答案。它讲述了UNIQUE而不是UNIQUE KEY。 –

+0

对不起,我误解了答案,我想你可以通过结合来自不同主题的答案找到你的解决方案。 http://stackoverflow.com/questions/707874/differences-between-index-primary-unique-fulltext-in-mysql,http://stackoverflow.com/questions/10908561/mysql-meaning-of-primary-key- unique-key-and-key-when-together,http://dev.mysql.com/doc/refman/5.0/en/create-index.html –

+0

@VincentOrback我知道StackOverflow的政策,我真的很尊重他们。在发布这个问题之前,我花了相当多的时间进行研究,因为我无法得出令人满意的结论。请建议一些线索,我可以找到答案将是一个巨大的好处。 –

回答

2

UNIQUE和UNIQUE KEY是完全相同的。关键操作是在语法定义中的非必要关键字:

create_definition: 
    col_name column_definition 
    | [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) 
     [index_option] ... 
    | {INDEX|KEY} [index_name] [index_type] (index_col_name,...) 
     [index_option] ... 
    | [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] 
     [index_name] [index_type] (index_col_name,...) 
     [index_option] ... 
    | {FULLTEXT|SPATIAL} [INDEX|KEY] [index_name] (index_col_name,...) 
     [index_option] ... 
    | [CONSTRAINT [symbol]] FOREIGN KEY 
     [index_name] (index_col_name,...) reference_definition 
    | CHECK (expr) 

进一步的详情请参见documentation

相关问题