实在是不清楚到底mysql 还是VS 报了错。
原来说是在vs里面就报错,现在又是mysql报的错误。
没用过mysql但是在sql server 中也是用@来定义变量的,完全没有问题啊。 比如下面这段代码
using(SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NORTHWND.MDF;Integrated Security=True;User Instance=True"))
{
string commandText =
" DECLARE @ReportsToVar int; SET @ReportsToVar = 2;" +
"SELECT * FROM dbo.Employees WHERE ReportsTo = @ReportsToVar and Country = @param1;";
SqlCommand cmd = new SqlCommand(commandText, conn);
cmd.Parameters.AddWithValue("@param1", "USA");
conn.Open();
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
adapter.Fill(dt);
}
虽然没用过mysql,但在这方面我觉得应该是一样的,或者你可以去mysql的论坛去问问看。