【发布时间】:2019-04-20 15:32:22
【问题描述】:
我在 mySQL 中使用我的第一个存储过程如下:
CREATE DEFINER=`pubuducg`@`%` PROCEDURE `IsUserExists`(IN LoginEmail varchar(100))
BEGIN
SELECT LOGIN_USER_ID AS USERS
FROM login
WHERE LOGIN_EMAIL = @LoginEmail;
END
我在 C# ASP.net 中调用该过程如下:
if (oMySQLConnecion.State == System.Data.ConnectionState.Open)
{
MySqlCommand oCommand = new MySqlCommand("IsUserExists", oMySQLConnecion);
oCommand.CommandType = System.Data.CommandType.StoredProcedure;
oCommand.Parameters.AddWithValue("@LoginEmail", UserEmail.EmailAddress);
var sqlResult = oCommand.ExecuteReader();
userExists = (sqlResult.HasRows ? true : false);
oMySQLConnecion.Close();
}
如果我手动执行 SQL 语句:
SELECT LOGIN_USER_ID AS USERS
FROM login
WHERE LOGIN_EMAIL = @LoginEmail;
效果很好。
我的表格排序规则设置为“utf8 - 默认排序规则”。
列 (LOGIN_USER_ID) 排序规则设置为“表默认值”。
我在 mySQL Workbench 中调用存储过程如下:
CALL IsUserExists('abcdefg@gmail.com');
oCommand.ExecuteReader() 对象中始终不存在任何记录。
感谢任何帮助。
【问题讨论】:
标签: mysql asp.net stored-procedures