插入期间,MySql读取参数名称为列

时间:2013-03-26 09:08:42

标签: c# mysql

这应该很简单。基本上我只是将数据插入表中:

string sql = "insert into Files(filename, filedate, filedata, filesize) values(xname, xdate, xdata, xsize);select last_insert_id() as lastid from Files";

此处指定的值(xnamexdate等)只是参数,我在执行查询之前设置它们的值。

不幸的是,出了点问题,我收到了以下错误:

  

“字段列表”中的未知列'xname'

我可以理解,由于某些或其他原因,它正在寻找一个名为“xname”的列,它显然不存在。我无法理解的是为什么会这样做。

通常我使用@符号(@ name,@ date等)“标记”参数,这通常有效,但我正在研究公司中另一位开发人员编写的系统,我必须维护约定。

任何人都可以解释为什么我会收到此错误吗?

1 个答案:

答案 0 :(得分:0)

如果xname,xdate,xdata和xsize是变量,那么你可以这样做:

string sql = "insert into Files(filename, filedate, filedata, filesize) values(" +
     xname + ", " + xdate + ", " +
     xdata + ", " + xsize +
     ");select last_insert_id() as lastid from Files";