如何在预览模式下使用sql server数据库?

时间:2014-07-09 03:20:08

标签: sql sql-server

正如我们在Oracle中所知,在我们调用提交之前,不会提交任何数据或操作查询。我想在SQL Server上实现这样的实现,我可以在db上运行操作查询,但数据不会永久更改,只是让我在操作查询之前和之后查看数据。

或者有没有办法在同一台服务器上镜像数据库,以便我可以在辅助数据库上测试我的查询,但它对主数据库没有任何影响。

3 个答案:

答案 0 :(得分:2)

您可以在同一个查询窗口中执行此操作,您在其中编写了'begin tran' 不遵守之前不要承诺。

您可以在同一个窗口中执行查询次数,这样可以在提交事务之前预览查询。

只能在同一查询窗口内。您无法在其他查询窗口中查看预览。

答案 1 :(得分:2)

您可以使用IMPLICIT_TRANSACTIONS设置来实现与Oracle相似的功能:

  

由于此设置为ON而自动打开的事务必须由用户在事务结束时显式提交或回滚。否则,当用户断开连接时,将回滚事务及其包含的所有数据更改。

如果您愿意,可以在Management Studio中更改设置,以便在打开新查询窗口时此设置始终有效:

enter image description here

答案 2 :(得分:0)

您可以将隔离级别从“读取提交”更改为“快照”以解决您的测试问题。(如果您不希望在事务期间看到数据更改)

请参阅以下链接了解快照隔离级别:

http://gavindraper.com/2012/02/18/sql-server-isolation-levels-by-example/