我正忙于从 Sybase 数据库在 Sql Server 中创建表。在 Sybase 数据库中创建表时使用了“锁定所有页面”选项,在 Sql Server 2005 中创建表时如何复制此选项。
Charmiane
问问题
1054 次
2 回答
1
在 SQL Server 中,您不能为CREATE TABLE
. 您最多可以通过添加WITH ALLOW_ROW_LOCKS = OFF
or来禁用行级和页级锁定WITH ALLOW_PAGE_LOCKS_OFF
。在 SQL Server 中锁定整个表的等效方法是WITH (TABLOCK)
在对表运行查询和更新时使用锁定提示,但不建议这样做。
我的建议是在将表从 Sybase 传输到 SQL Server 时忽略此选项。
于 2009-08-20T14:52:52.783 回答
0
你想用这个“锁定所有页面”选项来实现什么?您正在处理的数据库是否启动并高效运行?如果没有,在 SQL Server 中,您可以将整个数据库的访问权限限制为单个用户:
ALTER DATABASE YourDatabaseName SET SINGLE_USER
这样一来,您就可以确定没有其他人会挡住您的去路并摆弄直到您完全完成:-)
将其设置回“正常”使用:
ALTER DATABASE YourDatabaseName SET MULTI_USER
马克
于 2009-08-20T11:27:33.977 回答