[英]adding lock option to Create Table statement in Sql Server 2005
我正忙於從Sybase數據庫在Sql Server中創建表。 在創建表的Sybase數據庫中,使用了“鎖定所有頁”選項,當在Sql Server 2005中創建表時如何復制它。
在SQL Server中,不能為CREATE TABLE
的表指定鎖定選項。 您最多可以通過添加WITH ALLOW_ROW_LOCKS = OFF
或WITH ALLOW_PAGE_LOCKS_OFF
禁用行級別和頁面級別鎖定。 在表上運行查詢和更新時,等效於在SQL Server中鎖定整個表是使用鎖定提示WITH (TABLOCK)
,但不建議這樣做。
我的建議是在將表從Sybase傳輸到SQL Server時僅忽略此選項。
您想通過“鎖定所有頁面”選項實現什么? 您正在建立的數據庫是否可以高效運行? 如果沒有,則可以在SQL Server中將訪問整個數據庫的權限限制為單個用戶:
ALTER DATABASE YourDatabaseName SET SINGLE_USER
這樣一來,您就可以確定自己是否會束手無策,直到完全完成為止:-)
通過以下方式將其設置回“正常”用法:
ALTER DATABASE YourDatabaseName SET MULTI_USER
渣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.