我正在尝试使用来自 MySQL 网站的 .net 的 mysql 连接器从 C# 到 MySQL(版本 5.5.27)运行查询。
我正在开发的 .dll 的最终目标是跟踪我读过的行。
我用来读取数据库的查询是:
string strSQL = "SELECT date,ask,bid,volume FROM gbpjpy where `read` = 0";
要阅读日期,我有:
DateTime dateTime = mysqlReader.GetDateTime(0);
这很好用。
该表有 5 列,最后一列称为“读取”。选择查询和解析完成后,我立即执行以下查询:
string sqlFormattedDate = dateTime.ToString("yyyy/MM/dd HH:mm:ss");
string query = "UPDATE gbpjpy SET `read` = 1 WHERE `date` = " + sqlFormattedDate;
但是,当我检查日志时,出现以下错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“01:20:08”附近使用正确的语法。
读入的第一个日期是 2012/08/30 01:20:08(这就是它在 MySQL 表中的显示方式,因此它是从 01:20:08 获得的)。
我试过 var sqlFormattedDate,将 ToString 重载更改为 yyyy-MM-dd(使用破折号而不是正斜杠)和 dateTime.ToString() 都无济于事。
为什么 MySQL 没有拾取整个字符串?