internal NpgsqlConnector Connector {
get
{
- if (connector == null && this.connection != null)
+ if (this.connection != null)
connector = this.connection.Connector;
return connector;
result = AddSingleRowBehaviorSupport(result);
+
+ result = AddSchemaOnlyBehaviorSupport(result);
return result;
}
return ProcessRefcursorFunctionReturn(result);
- return AddSingleRowBehaviorSupport(result);
+ result = AddSingleRowBehaviorSupport(result);
+
+ result = AddSchemaOnlyBehaviorSupport(result);
+
+ return result;
}
ResultCommandText = ResultCommandText.Trim();
- if ((commandBehavior & CommandBehavior.SingleRow) > 0)
+ if ((commandBehavior & CommandBehavior.SingleRow) == CommandBehavior.SingleRow)
{
if (ResultCommandText.EndsWith(";"))
ResultCommandText = ResultCommandText.Substring(0, ResultCommandText.Length - 1);
+ return ResultCommandText;
+
+ }
+
+ private String AddSchemaOnlyBehaviorSupport(String ResultCommandText)
+ {
+
+ ResultCommandText = ResultCommandText.Trim();
+
+ if ((commandBehavior & CommandBehavior.SchemaOnly) == CommandBehavior.SchemaOnly)
+ {
+ if (ResultCommandText.EndsWith(";"))
+ ResultCommandText = ResultCommandText.Substring(0, ResultCommandText.Length - 1);
+ ResultCommandText += " limit 0;";
+
+ }
+
+
return ResultCommandText;
}
CheckConnectionState();
// reset any responses just before getting new ones
- connector.Mediator.ResetResponses();
+ Connector.Mediator.ResetResponses();
if (parse == null)