Đây có thể là một câu hỏi ngớ ngẩn, nhưng tại sao tôi không thể thay đổi Đặc điểm Nhận dạng hoặc (Nhận dạng) từ 'Không' thành 'Có'?Không thể thay đổi Thông số Nhận dạng thành Có trong bảng Sql Server
Trả lời
Bạn không thể thay đổi thuộc tính IDENTITY của cột trên bảng hiện có. Những gì bạn có thể làm là thêm một cột mới với thuộc tính IDENTITY, xóa cột cũ và đổi tên cột mới với tên cột cũ.
Tất nhiên, những gì xảy ra sau đó (đối với một số người) là họ không thích thực tế là cột mới xuất hiện "ở cuối" của danh sách các cột (mặc dù bạn không nên quan tâm đến các vị trí cột - bạn nên luôn sử dụng tên của chúng). Trong trường hợp đó, bạn cần thực hiện cùng một thủ thuật, nhưng ở mức cao hơn - tạo một bảng mới (với định nghĩa cột bị thay đổi), sao chép dữ liệu từ bảng cũ sang bảng mới, thả bảng cũ và đổi tên bảng mới .
Tôi nghĩ SSMS vẫn cố giả vờ rằng điều đó là có thể, bằng cách thực hiện mẹo thứ hai sau hậu trường.
Kiểm tra loại dữ liệu cột của bạn.
Nếu đó là varchar
thì bạn không thể thay đổi cột nhận dạng.
Để thay đổi cột nhận dạng, cột phải có loại dữ liệu int
.
cảm ơn bạn. vấn đề của tôi là về điều này – Ritz
Bạn có thể tắt Tùy chọn "ngăn lưu thay đổi yêu cầu tạo lại bảng" nhưng điều này không được khuyến cáo bởi msdn.
để làm như vậy đi:
Tools -> Options -> thiết kế Có bỏ: "ngăn chặn những thay đổi tiết kiệm đòi hỏi bảng tái tạo"
Nếu bạn nhận thấy nhận xét cho câu hỏi của tôi, tôi đã tìm ra vấn đề là gì. – malckier
Ngoài ra kiểm tra để đảm bảo rằng không có một giá trị mặc định hoặc ràng buộc trên cột.
Đây là câu trả lời thực sự của câu hỏi này theo ý kiến của tôi. –
Theo dõi từ bình luận của Damien_The_Unbeliever ở trên, bạn có thể chỉnh sửa thứ tự cột trong giao diện thiết kế của Visual Studio.
Tôi đã thực hiện thành công việc này. Để xác nhận, các bước như sau:
- Thêm một cột mới với SẮC tài sản
- xóa các cột cũ,
- Đổi tên cột mới với tên cột cũ.
- (Tùy chọn) Sắp xếp lại các cột để có cột IDENTITY từ Visual Studio.
Xóa giá trị mặc định hoặc ràng buộc.
- 1. Tôi có thể tạo một trường nhận dạng bao trùm nhiều bảng trong SQL Server không?
- 2. Làm thế nào để Thay đổi một bảng cho Identity Specification là nhận dạng SQL Server
- 3. Thiết nhận dạng để bật hoặc tắt trong SQL server
- 4. Đổi tên Bảng SQL Server, xếp tầng thay đổi thông qua PK và FK's
- 5. Tại sao SQL Server buộc tôi bỏ bảng để có thể thay đổi một trường từ DateTime thành DateTime2 (3)?
- 6. Chuyển đổi tên tháng thành số tháng trong SQL Server
- 7. SQL Server Chuyển đổi số nguyên thành chuỗi nhị phân
- 8. Chuyển đổi Varchar thành Thời gian trong SQL Server
- 9. Bảng máy chủ sql có thể có hai cột nhận dạng không?
- 10. Thay đổi Sql-Server (express) từ một cá thể có tên thành localhost?
- 11. SQL Server chuyển đổi chuỗi thành datetime
- 12. Các thông số có thể không đổi?
- 13. Chuyển đổi varchar thành datetime trong SQL Server
- 14. Thay đổi tên cột trong SQL Server 2008
- 15. Chuyển đổi "\ n" thành dòng mới thực trong SQL Server
- 16. Thay đổi nội dung kích thước cột trong SQL Server
- 17. Thay đổi cột khóa chính trong SQL Server
- 18. Cách tạo bảng có cột nhận dạng
- 19. Chuyển đổi giá trị Varchar thành giá trị số nguyên/thập phân trong SQL Server
- 20. Chia nhỏ XML từ cột bảng thành dạng xem trong SQL Server
- 21. Thay đổi nhận dạng Tor trong R
- 22. Cách nhận năm theo định dạng YY trong SQL Server
- 23. Cách thêm cột nhận dạng mới vào bảng trong SQL Server?
- 24. Hibernate, thay đổi số nhận dạng/khóa chính
- 25. sql cập nhật bảng bộ - Mã nhận dạng đa phần không thể bị ràng buộc
- 26. Thay đổi cột dữ liệu từ varchar (max) thành nvarchar (max) trong SQL Server 2008
- 27. Thay đổi loại cột có số từ varchar thành int
- 28. Làm thế nào để thay đổi ngôn ngữ và định dạng ngày trong SQL Server?
- 29. Có thể mất một số thay đổi thông qua git
- 30. BLOB thành chuỗi, SQL Server
Yup, đó là một câu hỏi ngớ ngẩn. Cột khóa chính không được đánh dấu. – malckier