对于 SqlClient,我可以为很多查询指定 CommandBehavior.SchemaOnly 以获取查询结果架构。但是,当对 Oracle 使用相同的命令行为时,OracleClient 似乎执行查询而不是仅获取模式。在以下示例中,我可以看到该行确实已插入到我的数据库中,而我只是希望运行仅模式查询:
OracleCommand command = connection.CreateCommand();
command.CommandText = "insert into Test (ID, Name) values (1, 'test')";
var reader = command.ExecuteReader(CommandBehavior.SchemaOnly);
var dataTable = reader.GetSchemaTable();
我在 OracleClient 文档上找不到太多关于 CommandBehavior 的信息。OracleClient 是否实现此选项?或者我应该使用不同的方式在不运行查询的情况下获取架构?