c# - 使用输出参数执行 MySqlCommand (StoredProcedure)

标签 c# mysql connector-net

我不知道如何使用 Connector/NET 3.6.5 提供的 MySQLCommand。基本上这里是我正在使用的代码和我在运行 ExecuteNonQuery 时得到的异常。我在这里做错了什么?我没有想法了:(

var connection = GetConnection();
connection.Open();

var command = new MySqlCommand("PredictPaperRankInInterval", connection);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add(new MySqlParameter("p_journalId", SqlDbType.VarChar) { Value = "test" });
command.Parameters.Add(new MySqlParameter("p_publishDate", SqlDbType.DateTime) { Value = paper.PublishDate });
command.Parameters.Add(new MySqlParameter("p_intervalInDays", SqlDbType.Int) { Value = 7 });
command.Parameters.Add(new MySqlParameter("p_viewsCount", SqlDbType.Int) { Value = paper.ViewsCount });
var rank = new MySqlParameter("p_rank", SqlDbType.Int) { Direction = ParameterDirection.Output };
command.Parameters.Add(rank);

command.ExecuteNonQuery();

异常

Input string was not in a correct format.

DDL

CREATE PROCEDURE `PredictPaperRankInInterval`(IN p_journalId VARCHAR(32), 
                                              IN p_publishDate DATETIME, 
                                              IN p_intervalInDays INT, 
                                              IN p_viewsCount INT, 
                                              OUT p_rank INT)

最佳答案

 MySqlCommand command = new MySqlCommand("PredictPaperRankInInterval", con);
 command .CommandType = System.Data.CommandType.StoredProcedure;

关于c# - 使用输出参数执行 MySqlCommand (StoredProcedure),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6319642/

相关文章:

c# - Request.Url.Host 是否包含子域?

php - 无重复日期

mysql - 将 MySQL 查询转换为 Laravel

mysql - 必须定义参数 '?'

c# - 在 UITableView 的编辑模式下允许多重选择

c# - 使用 LibGit2Sharp 暂存未跟踪文件时,Commands.Stage() 不会增加 Staged.Count

javascript - 如果使用 jquery timepicker,则无法从模式弹出窗口发布表单

mysql - 与 SQL Server 相比,如何提高 mySQL 中大量更新的速度?

c# - 为什么 DELETE 语句在 MySql Workbench 和 PHP/PDO 中运行时会在 MySQL Connector/net 中默默失败?