G
Guest
I am having a "not all variables bound" issue when trying to delete a row
from a datagrid.
I have a datagrid populated with data from a oracle table as follows:
da = New OracleDataAdapter("SELECT a.inst, a.group, a.privs,
b.field FROM table a, table b WHERE.......
da.Fill(ds, "TW_GROUP_PRIVS")
da.datamember = "TW_GROUP_PRIVS")
I have the insert and update statements working correctly, they are as
follows:
Dim cmd As New OracleCommand("UPDATE TW_GROUP_PRIVS SET group =
riginal_group, inst = :Original_inst, privs = rivs WHERE inst =
riginal_inst AND group = riginal_group")
cmd.Parameters.Add(New OracleParameter("riginal_group",
OracleType.VarChar, 30, "GROUP"))
cmd.Parameters.Add(New OracleParameter("riginal_inst",
OracleType.VarChar, 10, "Inst"))
cmd.Parameters.Add(New OracleParameter("RIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd.Parameters.Add(New OracleParameter(":ORIGINAL_DESCRIPTION",
OracleType.VarChar, 100, "DESCRIPTION"))
Dim cmd2 As New OracleCommand("INSERT INTO TW_GROUP_PRIVS
(group, inst, privs, description)
VALUES group_name, :institution_id, rivs, :field)")
cmd2.Parameters.Add(New OracleParameter(":group",
OracleType.VarChar, 30, "GROUP"))
cmd2.Parameters.Add(New OracleParameter(":inst",
OracleType.VarChar, 10, "Inst"))
cmd2.Parameters.Add(New OracleParameter("RIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd2.Parameters.Add(New OracleParameter(":field",
OracleType.VarChar, 100, "field"))
cmd.Connection = Conn
cmd2.Connection = Conn
da.UpdateCommand = cmd
da.InsertCommand = cmd2
Conn.Open()
da.Update(ds, "TW_GROUP_PRIVS")
I am running into issues with the delete portion of the code.
First, I remove the row from the datagrid:
if (Me.BindingContext(ds, "TW_GROUP_PRIVS").Count > 0) Then
Me.BindingContext(ds,
"TW_GROUP_PRIVS").RemoveAt(Me.BindingContext(ds, "TW_GROUP_PRIVS").Position)
end if
Now I want to delete the row from the source table:
'Dim cmd3 As New OracleCommand("DELETE FROM TW_GROUP_PRIVS WHERE
inst = riginal_inst" _
&" AND group = riginal_group AND privs = riginal_privs and
description = riginal_field")
cmd3.Parameters.Add(New OracleParameter(":Original_group",
OracleType.VarChar, 30, "GROUP"))
cmd3.Parameters.Add(New OracleParameter(":Original_inst",
OracleType.VarChar, 10, "Inst"))
cmd3.Parameters.Add(New OracleParameter(":Original_PRIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd3.Parameters.Add(New OracleParameter(":Original_field",
OracleType.VarChar, 100, "field"))
cmd3.Connection = Conn
da.DeleteCommand = cmd3
Conn.Open()
da.Update(ds, "TW_GROUP_PRIVS") <---- ERROR LINE
Getting the error on the final line here. The error being "ORA-010008: Not
all variable bound"
Any ideas on why this is failing?
Thanks in advance.
from a datagrid.
I have a datagrid populated with data from a oracle table as follows:
da = New OracleDataAdapter("SELECT a.inst, a.group, a.privs,
b.field FROM table a, table b WHERE.......
da.Fill(ds, "TW_GROUP_PRIVS")
da.datamember = "TW_GROUP_PRIVS")
I have the insert and update statements working correctly, they are as
follows:
Dim cmd As New OracleCommand("UPDATE TW_GROUP_PRIVS SET group =
riginal_group, inst = :Original_inst, privs = rivs WHERE inst =
riginal_inst AND group = riginal_group")
cmd.Parameters.Add(New OracleParameter("riginal_group",
OracleType.VarChar, 30, "GROUP"))
cmd.Parameters.Add(New OracleParameter("riginal_inst",
OracleType.VarChar, 10, "Inst"))
cmd.Parameters.Add(New OracleParameter("RIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd.Parameters.Add(New OracleParameter(":ORIGINAL_DESCRIPTION",
OracleType.VarChar, 100, "DESCRIPTION"))
Dim cmd2 As New OracleCommand("INSERT INTO TW_GROUP_PRIVS
(group, inst, privs, description)
VALUES group_name, :institution_id, rivs, :field)")
cmd2.Parameters.Add(New OracleParameter(":group",
OracleType.VarChar, 30, "GROUP"))
cmd2.Parameters.Add(New OracleParameter(":inst",
OracleType.VarChar, 10, "Inst"))
cmd2.Parameters.Add(New OracleParameter("RIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd2.Parameters.Add(New OracleParameter(":field",
OracleType.VarChar, 100, "field"))
cmd.Connection = Conn
cmd2.Connection = Conn
da.UpdateCommand = cmd
da.InsertCommand = cmd2
Conn.Open()
da.Update(ds, "TW_GROUP_PRIVS")
I am running into issues with the delete portion of the code.
First, I remove the row from the datagrid:
if (Me.BindingContext(ds, "TW_GROUP_PRIVS").Count > 0) Then
Me.BindingContext(ds,
"TW_GROUP_PRIVS").RemoveAt(Me.BindingContext(ds, "TW_GROUP_PRIVS").Position)
end if
Now I want to delete the row from the source table:
'Dim cmd3 As New OracleCommand("DELETE FROM TW_GROUP_PRIVS WHERE
inst = riginal_inst" _
&" AND group = riginal_group AND privs = riginal_privs and
description = riginal_field")
cmd3.Parameters.Add(New OracleParameter(":Original_group",
OracleType.VarChar, 30, "GROUP"))
cmd3.Parameters.Add(New OracleParameter(":Original_inst",
OracleType.VarChar, 10, "Inst"))
cmd3.Parameters.Add(New OracleParameter(":Original_PRIVS",
OracleType.VarChar, 37, "PRIVS"))
cmd3.Parameters.Add(New OracleParameter(":Original_field",
OracleType.VarChar, 100, "field"))
cmd3.Connection = Conn
da.DeleteCommand = cmd3
Conn.Open()
da.Update(ds, "TW_GROUP_PRIVS") <---- ERROR LINE
Getting the error on the final line here. The error being "ORA-010008: Not
all variable bound"
Any ideas on why this is failing?
Thanks in advance.