我有一个使用MS SQL管理工作室脚本向导创建的. SQL文件。它包含整个数据库模式,包括视图、存储过程、表、索引等。
我正在寻找一种方法来自动化使用ColdFusion或Java甚至。net创建数据库的过程。
我试过使用CFQUERY,但它抛出各种错误与。sql文件。
我已经尝试使用ANT与sqljdbc4.jar,但它也失败了在第一行与" [sql]未能执行:BEGIN TRAN " com.microsoft.sqlserver.jdbc.SQLServerException:语法不正确附近" .
我非常怀疑您是否可以在MS工具之外使用向导生成的脚本。向导大量使用了GO
,这不是标准的T-SQL。此外,像CREATE PROCEDURE
这样的命令需要是批处理中的第一条语句。要运行向导脚本,需要使用sqlcmd.exe等MS工具。使用正确的权限,您应该能够从<cfexecute>
运行sqlcmd.exe
。
您应该能够执行<cfquery中的所有SQL,假设您具有适当的权限。>
我们在ColdFusion
您是否有适当的权限,您得到了什么错误
如果您使用ORM,您可以将this.ormsettings.sqlscript
设置为指向Application.cfc
中的.sql文件,当this.ormsettings.dbcreate
设置为dropcreate
时,它将在ORMReload()
上运行。