我有一个数组列表,其中包含某些项目的 id。我想从 SQL Server CE 数据库中一次执行多项选择,并使用我的数组列表,其中包含要选择的项目 id,例如在 oracle (ODP.NET) 中执行多项更新时类似的操作,如下所述:Oracle使用 ODP.NET 进行批量更新
您可以在其中将数组作为参数传递。
我想做同样的事情,但在 SQL Server CE 的情况下使用多项选择。可能吗?
关于我想做的草稿:
SqlCeCommand = SqlCeConnection.CreateCommand()
SqlCeCommand.CommandText = "SELECT * FROM MyTable WHERE Id=:ids"
SqlCeCommand.CommandType = CommandType.Text
SqlCeCommand.Parameters.Add(":ids", DbType.Int32, ArrayListOfIds, ParameterDirection.Input)
Using reader As System.Data.SqlServerCe.SqlCeDataReader = SqlCeCommand.ExecuteReader()
Using targetDb As Oracle.DataAccess.Client.OracleBulkCopy = New Oracle.DataAccess.Client.OracleBulkCopy(con.ConnectionString)
targetDb.DestinationTableName = "MyTable"
targetDb.BatchSize = 100
targetDb.NotifyAfter = 100
targetDb.BulkCopyOptions = Oracle.DataAccess.Client.OracleBulkCopyOptions.UseInternalTransaction
AddHandler targetDb.OracleRowsCopied, AddressOf OnOracleRowsCopied targetDb.WriteToServer(reader)
targetDb.Close()
End Using
reader.Close()
End Using