既然我已经尝试了所有我知道的方法,我想是时候寻求一些关于这个错误的帮助了。基本上,我在MySQL中创建了一个名为AddUser的存储过程,数据库名为PersonalWebsiteColdfusion。我可以向你保证它确实存在。如果有用的话,我正在使用Windows IIS7.5和OpenBD for Coldfusion。我也只是想澄清一下,我已经在OpenBD web管理员中创建并验证了数据源。MySQL是5.6版本,它是一个x64位环境。问题是,它可以使用cfquery,但如果可能的话,我更喜欢使用cfstoredproc。错误基本上就是它在标题中所说的。希望有人能帮上忙。
更新以提供相关的过程代码。
<cfstoredproc datasource="PersonalWebsiteCF" procedure="AddUser" returnCode="yes">
<cfprocparam cfsqltype="cf_sql_varchar" value="#form.txtFirstName#" type="in" variable="strFirstName" />
<cfprocparam cfsqltype="cf_sql_varchar" value="#form.txtLastName#" type="in" variable="strLastName" />
<cfprocparam cfsqltype="cf_sql_varchar" value="#form.txtEmail#" type="in" variable="strEmail" />
<cfprocparam cfsqltype="cf_sql_varchar" value="#form.txtUsername#" type="in" variable="strUsername" />
<cfprocparam cfsqltype="cf_sql_varchar" value="#form.txtPassword#" type="in" variable="strPassword" />
<cfprocparam cfsqltype="cf_sql_timestamp" value="#Now()#" type="in" variable="strDateJoined" />
<cfprocparam cfsqltype="cf_sql_varchar" value="#cgi.remote_addr#" type="in" variable="strIP" />
<cfprocparam cfsqltype="cf_sql_varchar" value="Member" type="in" variable="strMembershipStatus" />
<cfprocparam cfsqltype="cf_sql_varchar" value="No" type="in" variable="strActive" />
<cfprocparam cfsqltype="cf_sql_integer" value="0" type="out" variable="strUserID" />
</cfstoredproc>也许存储过程本身也会很有用:
DELIMITER //
CREATE PROCEDURE AddUser (
IN strFirstName varchar(50),
IN strLastName varchar(50),
IN strEmail varchar(50),
IN strUsername varchar(50),
IN strPassword varchar(150),
IN strDateJoined datetime,
IN strIP varchar(50),
IN strMembershipStatus varchar(50),
IN strActive varchar(50),
OUT strUserID int
)
BEGIN
INSERT INTO tblUsers (FirstName, LastName, Email, Username, Password, DateJoined, IP, MembershipStatus, Active) VALUES (strFirstName, strLastName, strEmail, strUsername, strPassword, strDateJoined, strIP, strMembershipStatus, strActive);
SET strUserID = LAST_INSERT_ID();
END//;自从我第一次发帖以来,我一直在尝试各种方法,但我仍然没有找到解决方案。
谢谢
道格拉斯
发布于 2014-03-26 17:10:25
验证是否在您创建DSN的Admin部分的高级设置中选择了存储过程选项。
此外,一种解决方法是通过查询调用SP,尽管它不能解决最初的问题。
<cfquery name="SomeName" dataSource="SOME_DSN">
call Your_SP #Arg_1#,#Arg_2#
</cfquery>https://stackoverflow.com/questions/22643249
复制相似问题