2011-11-21 30 views

Trả lời

37

Một schema mặc định là người dùng cụ thể:

USE yourDatabase; 
ALTER USER [yourUser] WITH DEFAULT_SCHEMA = myschema; 

Thông tin thêm về ALTER TABLE cho SQL 2005 có thể giúp bạn là tốt.

Vì đây là người dùng cụ thể, nếu bạn có nhiều người dùng, bạn sẽ cần thực hiện truy vấn này (trên mỗi cơ sở dữ liệu) cho mỗi người dùng có lược đồ mặc định bạn muốn cập nhật.

Điều quan trọng cần lưu ý là:

The value of DEFAULT_SCHEMA is ignored if the user is a member of the sysadmin 
fixed server role. All members of the sysadmin fixed server role have a default 
schema of dbo. 
+0

Kịch bản lệnh của bạn biên dịch thành công nhưng vấn đề vẫn tồn tại – user960567

+0

Tập lệnh sau đây. chọn schema_name() hiển thị dbo – user960567

+0

@ user960567 Tôi đã thử nghiệm điều này và nó đã làm việc cho tôi. (cũng chỉ được thử nghiệm 'schema_name()') Bạn đã cung cấp lược đồ mặc định cho cơ sở dữ liệu chính xác chưa? là người dùng bạn đang cố cập nhật liên kết với thông tin đăng nhập sqlServer? –

3

Bạn có thể sử dụng:

ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing; 

Để thiết lập các sơ đồ mặc định cho người dùng.

+0

này không hoạt động. – user960567

+0

chỉ cần chú ý AdamWenger note [here] (http://stackoverflow.com/a/8208124/426315) - 'sysadmin' sẽ luôn có' dbo' làm lược đồ mặc định. – itsho

Các vấn đề liên quan