Database 问题调用存储过程
我有一个关于在WindowsSQLServer2005上创建的存储过程的问题。我有ColdFusion代码来调用这个过程。我第一次尝试时,它失败了,因为该过程没有正确的权限,所以我添加了一个新用户,即Database 问题调用存储过程,database,sql-server-2005,stored-procedures,coldfusion,Database,Sql Server 2005,Stored Procedures,Coldfusion,我有一个关于在WindowsSQLServer2005上创建的存储过程的问题。我有ColdFusion代码来调用这个过程。我第一次尝试时,它失败了,因为该过程没有正确的权限,所以我添加了一个新用户,即db_owner,并添加到该过程中,然后它正常运行 但后来我注意到数据库中出现了一些错误。我的问题是,即使我看到了错误,您认为该过程是否已经开始运行? 由于权限问题,它被不正确地停止(可能没有必要的参数,无法访问每个表?)?您是否认为它也可能导致DB崩溃 错误! 存储过程错误通常不会使整个数据
db_owner
,并添加到该过程中,然后它正常运行
但后来我注意到数据库中出现了一些错误。我的问题是,即使我看到了错误,您认为该过程是否已经开始运行?
由于权限问题,它被不正确地停止(可能没有必要的参数,无法访问每个表?)?您是否认为它也可能导致DB崩溃
错误!
存储过程错误通常不会使整个数据库崩溃,除非它正在做一些非常不正常的事情。SQL Server之类的数据库旨在防止此类事件的发生 至于存储过程是否开始运行:当您试图在没有正确权限的情况下启动它时,它不会启动。如果您在添加正确的权限时说它“正常运行”,那么它就启动了。它将取决于存储过程的具体情况,即它是否实际执行了任何操作或更改了任何内容,或者是否在没有错误和执行任何操作的情况下退出
您需要提供存储过程的代码和数据库结构的相关部分,然后才能有人确定地说。尝试转储错误的一些详细信息:
<cfcatch>
<cfoutput>
#cfcatch.message#
#cfcatch.detail#
</cfoutput>
</cfcatch>
#cfcatch.message#
#细节#
甚至
<cfcatch>
<cfdump var="#cfcatch#">
<cfcatch>
总之,在任何人回答您的问题之前,您需要提供更多信息。DB中出现了问题,具体是什么出了问题?正如下面提到的,您需要转储实际错误,而不仅仅是打印“error!”RE:您认为程序是否已经开始运行,这取决于发生的错误类型。转储错误并包含完整的错误消息。
<cfcatch>
<cfdump var="#cfcatch#">
<cfcatch>