Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để thay đổi độ dài của varchar trong khóa chính tổng hợp?

Bằng cách thay đổi kiểu dữ liệu thành varchar(4000) , bạn làm cho nó chấp nhận NULLs .

Hãy thử điều này:

ALTER TABLE [mytable] DROP CONSTRAINT PK_mytable_data;
ALTER TABLE [mytable] ALTER COLUMN data varchar(4000) NOT NULL;
ALTER TABLE [mytable] ADD CONSTRAINT PK_mytable_data PRIMARY KEY (fkid, data);

Lưu ý rằng kích thước chỉ mục (được tạo ngầm định cho PK ) được giới hạn ở 900 byte và việc chèn các giá trị lớn hơn sẽ không thành công.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để kiểm tra các biến bảng và bảng tạm thời trong phiên gỡ lỗi trong SSMS 2008?

  2. Tại sao SQL Server tiếp tục tạo một ràng buộc DF?

  3. Đặt DefaultDataPath và DefaultLogPath khi triển khai trong dự án cơ sở dữ liệu VS2010

  4. Chúng ta có thể viết câu lệnh tình huống mà không cần câu lệnh khác không

  5. Chọn các hàng trên cùng cho đến khi giá trị trong cột cụ thể xuất hiện hai lần