>我收到以下错误 Sybase 2762 - 'tempdb'数据库中的多语句转换中不允许使用'创建表'命令" - 在旧 STOR 程序上
数据库设置是预期的:sp_dboption,tran 中的 ddl 设置为"true">
这是一个旧的程序,以前没有改变过,运行良好。 但是,我们最近在服务器上执行了一个主要版本。
我的问题是,删除并重新创建程序会有所帮助吗?
这是一个生产错误。
在任何数据库中收到此错误时 - 无论是用户数据库还是 tempdb(如果表名称以 # 开头或在 tempdb 中显式指定(,它将指定数据库名称。可以从官方网站验证:
The '%s' command is not allowed within a multi-statement transaction in the '%.*s' database.
如 markp-fuso 所述,可以根据应用程序的系统要求使用多个 tempdb。
请使用该数据库并启用"ddl in tran"选项,如下所示:
USE master
go
exec sp_dboption 'db_name', 'ddl in tran', true
go
USE db_name
go
checkpoint
go
我希望这将解决根本问题。不需要删除和重新创建过程。