如何将UNIQUE列添加到SQL Server数据库中的表?

Pau*_*lia 0 database sql-server unique

UNIQUE我的表中需要列.

我的桌子:

CREATE TABLE my_table
(
      id int IDENTITY PRIMARY KEY,
      name text NOT NULL UNIQUE,
      blabla text NOT NULL
);
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

表'my_table'中的列'name'的类型无效,无法用作索引中的键列.无法创建约束或索引.查看以前的错误.

那么,如何UNIQUE在表中添加列?

Hor*_*ria 5

您应该使用VARCHAR/NVARCHAR而不是TEXT,因为不推荐使用TEXT数据类型 - 请参阅https://msdn.microsoft.com/en-us/library/ms187993.aspx

CREATE TABLE my_table
(
      id int IDENTITY PRIMARY KEY,
      name VARCHAR(100) NOT NULL CONSTRAINT UQ_my_table_name UNIQUE,
      blabla VARCHAR(100) NOT NULL
);
Run Code Online (Sandbox Code Playgroud)

另外,请考虑命名约束而不是为其指定默认名称.