将参数用于选择查询

时间:2014-06-06 02:02:49

标签: c# mysql parameters

我有这个查询,它在代码行和我的 MySQL管理器中完美运行:

SELECT field1, field2, field3
FROM Mytable
WHERE date_start >= STR_TO_DATE(' 01/07/2014 ', '%d/%m/%Y')  

现在,在使用参数 CodeBehind 中,它不会返回单行......

sql = @"SELECT field1, field2, field3
    FROM Mytable
    WHERE date_start >= STR_TO_DATE('@data', '%d/%m/%Y')"

MySQLCOMMAND.Parameters.Add(new MySqlParameter("@data", MySqlDbType.Date)).Value = data;  

数据= 01/07/2014。

为什么它不能使用参数?

1 个答案:

答案 0 :(得分:1)

您的参数已经是日期。你不需要转换它:

SELECT field1, field2, field3
FROM Mytable
WHERE date_start >= @data;