插入错误Oracle

时间:2012-05-30 19:01:13

标签: sql vb.net oracle

我一直在尝试使用此脚本插入Oracle Table:

        Try
            conn.Close()
            conn.Open()
            cmd.CommandText = "INSERT INTO PERSONAL(KODEPERSON) VALUES(:KODE)"
            cmd.Parameters.Add(":KODE", "AN001")
            cmd.Connection = conn
            cmd.ExecuteNonQuery()
            MessageBox.Show("SUCESS")
        Catch ex As Exception
            MessageBox.Show(ex.ToString)
        End Try

但是当我在VB.NET中执行此操作时,它会在EXECUTENONQUERY中引发错误ORA-01036

有人可以告诉我发生了什么事吗?

谢谢大家,我已经苦苦挣扎了大约1个小时,现在我得到了解决方案,请注意,如果我们在任何声明中使用它时我们宣布Oracle Command为公开请注意我们必须处理它,使它不再离开前一个语句缓存。上帝保佑每个人

2 个答案:

答案 0 :(得分:0)

尝试改变 cmd.Parameters.Add(":KODE"," AN001") 至 cmd.Parameters.Add(" KODE"," AN001")

答案 1 :(得分:0)

如果您使用的是Microsoft OracleClient,则无需在Parameters.Add中使用冒号:

cmd.Parameters.Add("KODE", "AN001")

来自docs

  

对于Oracle,在SQL语句或存储过程中使用命名参数时,必须在参数名称前面加冒号(:)。但是,在代码中的其他位置引用命名参数时(例如,在调用Add时),请不要在命名参数前面加冒号(:)。 .NET Framework Data Provider for Oracle会自动提供冒号。

<强>更新

使用

cmd.Parameters.AddWithValue("KODE", "AN001")