Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

е от тип, който е невалиден за използване като ключова колона в индекс

Едно уникално ограничение не може да бъде над 8000 байта на ред и дори тогава ще използва само първите 900 байта, така че най-безопасният максимален размер за вашите ключове би бил:

create table [misc_info]
( 
    [id] INTEGER PRIMARY KEY IDENTITY NOT NULL, 
    [key] nvarchar(450) UNIQUE NOT NULL, 
    [value] nvarchar(max) NOT NULL
)

т.е. ключът не може да бъде над 450 знака. Ако можете да превключите към varchar вместо nvarchar (напр. ако не е необходимо да съхранявате знаци от повече от една кодова страница), това може да се увеличи до 900 знака.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Избягвайте тези 4 често срещани грешки в DBA

  2. Изолирано изключение за съхранение:Не може да се определи самоличността на домейна

  3. Предният интерфейс на MS-Access не разпознава дати от SQL Server

  4. Обобщена таблица и конкатенирани колони

  5. Как да коригирате:JSON_VALUE връща NULL с дълги низове (SQL сървър)