我正在尝试使用以下内容查询我的数据库:
connection.Query(@"SELECT timestamp FROM hdd_local_data_v1_2 WHERE date = " +
date.ToString("yyyy-MM-dd") +
" AND measured_dist = bit_loc AND rop > 0")
我的问题是它产生了一个看起来像这样的字符串:
SELECT timestamp FROM hdd_local_data_v1_2 WHERE date = 2012-08-21 AND measured_dist = bit_loc AND rop > 0
在 SQLite 中运行此查询,我最终得到 0 个结果。但是,如果我运行:
// Quotes around the date
SELECT timestamp FROM hdd_local_data_v1_2 WHERE date = "2012-08-21" AND measured_dist = bit_loc AND rop > 0
我得到了我期望的结果。我意识到我可以通过以下方式获得我期望的结果:
connection.Query("SELECT timestamp FROM hdd_local_data_v1_2 WHERE date = \"" +
date.ToString("yyyy-MM-dd") +
"\" AND measured_dist = bit_loc AND rop > 0")
我的问题是,是否可以在不使用转义的情况下获得预期的查询\
?在更大程度上,有没有办法在建立连接后使用 LINQ 查询数据库?