首页 > 解决方案 > 我的查询出错,解析查询时出错

问题描述

我的查询中似乎有一个错误,但对于我的生活,我似乎无法找到它,如果有人能看一看,将不胜感激。我试过谷歌搜索,看看是否有人遇到过同样的问题,但还没有运气。对不起,如果它是重复的。

    public static void InsertMake()
    {

        try
        {
            using (var conn = new SqlCeConnection(_connectionstring))
            {
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }                    
                using (var command = new SqlCeCommand(@"INSERT INTO MAKE(description,lastupdatedone,is_deleted,on_server) VALUES (@Description, @DateTime, @Is_deleted, @On_server", conn))
                {
                    command.Parameters.AddWithValue("@Description", Program.Form_mmm.textBoxMake.Text);
                    command.Parameters.AddWithValue("@DateTime", DateTime.Now);
                    command.Parameters.AddWithValue("@Is_deleted", 0);
                    command.Parameters.AddWithValue("@On_server", 0);
                    command.ExecuteNonQuery();                      
                    conn.Close();                        
                }
            }
        }
        catch (Exception e)
        {
            MessageBox.Show(e.ToString());
        }

错误信息是

(0x80004005) 解析查询时出错。[token line number = 1, token line offset = 114, token in error = @On_server]

标签: c#sql.net

解决方案


您在 VALUES 之后缺少右括号,但您可能应该包含错误消息以 100% 确定这是问题所在。

尝试更改此行

using (var command = new SqlCeCommand(@"INSERT INTO MAKE(description,lastupdatedone,is_deleted,on_server) VALUES (@Description, @DateTime, @Is_deleted, @On_server", conn))

对此

using (var command = new SqlCeCommand(@"INSERT INTO MAKE(description,lastupdatedone,is_deleted,on_server) VALUES (@Description, @DateTime, @Is_deleted, @On_server)", conn))

推荐阅读