uTools-Manuals/docs/sql/UNIQUE 约束.html
2019-05-07 10:15:08 +08:00

5 lines
2.8 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="m-bg">
<h1>SQL UNIQUE 约束</h1>
<h2>SQL UNIQUE 约束</h2> <p>UNIQUE 约束唯一标识数据库表中的每条记录。</p> <p>UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。</p> <p>PRIMARY KEY 约束拥有自动定义的 UNIQUE 约束。</p> <p>请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。</p> <h2>CREATE TABLE 时的 SQL UNIQUE 约束</h2> <p>下面的 SQL 在 "Persons" 表创建时在 "P_Id" 列上创建 UNIQUE 约束:</p> <p><b>MySQL</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> CREATE TABLE Persons<br/> (<br/> P_Id int NOT NULL,<br/> LastName varchar(255) NOT NULL,<br/> FirstName varchar(255),<br/> Address varchar(255),<br/> City varchar(255),<br/> UNIQUE (P_Id)<br/> )</div></code></pre></div> <p><b>SQL Server / Oracle / MS Access</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> CREATE TABLE Persons<br/> (<br/> P_Id int NOT NULL UNIQUE,<br/> LastName varchar(255) NOT NULL,<br/> FirstName varchar(255),<br/> Address varchar(255),<br/> City varchar(255)<br/> )</div></code></pre></div> <p>如需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束,请使用下面的 SQL 语法:</p> <p><b>MySQL / SQL Server / Oracle / MS Access</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> CREATE TABLE Persons<br/> (<br/> P_Id int NOT NULL,<br/> LastName varchar(255) NOT NULL,<br/> FirstName varchar(255),<br/> Address varchar(255),<br/> City varchar(255),<br/> CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)<br/> )</div></code></pre></div> <h2>ALTER TABLE 时的 SQL UNIQUE 约束</h2> <p>当表已被创建时,如需在 "P_Id" 列创建 UNIQUE 约束,请使用下面的 SQL</p> <p><b>MySQL / SQL Server / Oracle / MS Access</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> ALTER TABLE Persons<br/> ADD UNIQUE (P_Id)</div></code></pre></div> <p>如需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束,请使用下面的 SQL 语法:</p> <p><b>MySQL / SQL Server / Oracle / MS Access</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> ALTER TABLE Persons<br/> ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)</div></code></pre></div> <h2>撤销 UNIQUE 约束</h2> <p>如需撤销 UNIQUE 约束,请使用下面的 SQL</p> <p><b>MySQL</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> ALTER TABLE Persons<br/> DROP INDEX uc_PersonID</div></code></pre></div> <p><b>SQL Server / Oracle / MS Access</b></p> <div class="code notranslate"><pre><code class="language-sql"><div> ALTER TABLE Persons<br/> DROP CONSTRAINT uc_PersonID</div></code></pre></div> <br/><div class="text-center padding-10 margin-t-5">
</div>
</div>