Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# FROM子句中的语法_C#_Sql_Ms Access 2007 - Fatal编程技术网

C# FROM子句中的语法

C# FROM子句中的语法,c#,sql,ms-access-2007,C#,Sql,Ms Access 2007,我得到这个错误: FROM子句中的语法 我哪里做错了?还在学C# access7ConnectionString是数据库的字符串路径,我将其删掉以缩短文章,但与数据库的连接已建立,一切正常。表名和位置之间没有空格,请放置一个空格,如: private void DeleteQuestion_Click(object sender, EventArgs e) { try { using (OleDbConnection conn = new OleDbConnect

我得到这个错误:

FROM子句中的语法

我哪里做错了?还在学C#


access7ConnectionString
是数据库的字符串路径,我将其删掉以缩短文章,但与数据库的连接已建立,一切正常。

表名和位置之间没有空格,请放置一个空格,如:

private void DeleteQuestion_Click(object sender, EventArgs e)
{
    try
    {
        using (OleDbConnection conn = new OleDbConnection(access7ConnectionString))
        {
            conn.Open();

            using (OleDbCommand cmd = new OleDbCommand("DELETE FROM Questions" + "WHERE ID=@ID", conn))
            {
                cmd.Parameters.AddWithValue("@ID", currentRecord);
                cmd.ExecuteNonQuery();
            }
        }
    }
    catch (OleDbException ex)
    {
        MessageBox.Show(ex.ToString());
    }
}
不太清楚为什么必须使用字符串连接。这一切都可以与一个字符串相媲美。比如:

"DELETE FROM Questions" + " WHERE
                        ///^^^

你缺少一个空间,改变

using (OleDbCommand cmd = new OleDbCommand("DELETE FROM Questions WHERE ID=@ID", conn))


哦,出于某种原因,我认为必须将SQL的每个部分分开。那是个简单愚蠢的错误。谢谢。@zzwyb89,不,您不必这样做,如果您希望您的查询在多行上,而不是您可以使用的话
"DELETE FROM Questions" + "WHERE ID=@ID"
"DELETE FROM Questions WHERE ID=@ID"