测试SQL:
select id as ID, :Test as TEST from dual where code=:Test;
1.System.Data.OracleClient.dll(ADO.NET) 里应该没有问题。
command.CommandText = "select id as ID, :Test as TEST from dual where code=:Test"
command.Parameters.Add("Test", OracleType.VarChar, 30).Value= "test"
Dim oda As OracleDataAdapter = New OracleDataAdapter(command)
Dim dt As DataTable = New DataTable("Test")
da.Fill(dt)
2.Oracle.ManagedDataAccess.Client里需要设置【BindByName】属性,否则可能会报错(ORA-01008: 并非所有变量都已绑定)。
command.CommandText = "select id as ID, :Test as TEST from dual where code=:Test"
'默认是false按照顺序进行参数匹配。true是按照名称进行参数匹配。
command.BindByName = true
command.Parameters.Add("Test", OracleType.VarChar, 30).Value= "test"
Dim oda As OracleDataAdapter = New OracleDataAdapter(command)
Dim dt As DataTable = New DataTable("Test")
da.Fill(dt)
3.BindByName属性的说明可以参照官网。
如果资源学习了,可以点赞支持!