标签名称在查询批处理或存储过程中必须是唯一的



你好,我对这段代码有问题,当我按下按钮时,我得到以下错误:'Text:'附近的语法不正确。标签"Text"已声明。标签名称在查询批处理或存储过程中必须是唯一的。标签"Text"已声明。标签名称在查询批处理或存储过程中必须是唯一的。

private void DodajDelavcaa_Click(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection(global::Easy_Podjetnik.Properties.Settings.Default.Database1ConnectionString);
        try
        {
            string Spoll = "";
            if (RB_M.Checked)
            {
                Spoll = "Moški";
            }
            else if (RB_Z.Checked)
            {
                Spoll = "Ženski";
            }
            string sql = "INSERT INTO Delavci(Ime, Priimek, Spol, Leto_Rojstva, Placa) values(" + AddIme + "," + AddPriimek + "," + Spoll + "," + Add_Datum + "," + PlacaD + ")";
            SqlCommand exeSql = new SqlCommand(sql, con);
            con.Open();
            exeSql.ExecuteNonQuery();
            MessageBox.Show("Congrtz", "Good" ,MessageBoxButtons.OK, MessageBoxIcon.Hand);
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        finally
        {
            con.Close();
        }
        this.Close();
    }

这很可能是由Delavci表上的Insert触发器中的错误引起的。这不是唯一的可能性,但却是最有可能的。

如果不是这样,那么捕获它的唯一方法可能是在SQL Server上使用跟踪/探查器。


嗯,假设您正在合成SQL语句(而不是按照建议使用参数),这也可能是由Values(..)变量中的错误数据引起的。要对此进行检查,请在执行SQL命令之前使用Debug.Print记录该命令的实际文本。

最新更新