C#MySQL NotScalarQuery方法在创建函数或过程时出错
我正在运行以下代码:C#MySQL NotScalarQuery方法在创建函数或过程时出错,c#,mysql,C#,Mysql,我正在运行以下代码: public bool notscalarquery(string s) { //open connection if (this.OpenConnection() == true) { try { MySqlCommand cmd = new MySqlCommand(s, connection);
public bool notscalarquery(string s)
{
//open connection
if (this.OpenConnection() == true)
{
try
{
MySqlCommand cmd = new MySqlCommand(s, connection);
cmd.ExecuteNonQuery();
CloseConnection();
return true;
}
catch (MySqlException e)
{
MessageBox.Show(e.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
CloseConnection();
return false;
}
}
return false;
}
查询值为=
"DELIMITER $$ \n CREATE FUNCTION `new_functionewqd` () \n RETURNS INTEGER \n BEGIN \n RETURN 1; \n END $$"
我还尝试了query.Replace(“\n”,”),但不起作用。
奇怪的是,如果我将其粘贴到workbench editor上:
DELIMITER $$
CREATE FUNCTION `new_functionewqd3124` ()
RETURNS INTEGER
BEGIN RETURN 1;
END $$
工作!!怎么可能呢?试试看
string cmdText = @"CREATE FUNCTION `new_functionewqd` () RETURNS INTEGER
BEGIN
RETURN 1;
END";
我认为分隔符$$只有在工作台编辑器(或类似工具)中才能理解 错误是什么?只是猜测一下,但是请尝试删除分隔符$$…$$从查询值来看.doens不起作用,在mysql中我必须使用分隔符,否则命令将被剪切mysql的哪个版本?
string cmdText = @"CREATE FUNCTION `new_functionewqd` () RETURNS INTEGER
BEGIN
RETURN 1;
END";