On Mon, Apr 20, 2009 at 11:47, Rainer Gerhards <[email protected]> wrote:
> The real issue, as I see it, is "string vs. API call". Your sample above is
> API-call, and this requires different ways of doing things. David is
> suggesting doing EVERYTHING via a single exec() API call and that API
> receives a single string. The string then describes the different modes. I
> doubt that the single string approach actually works across databases (but
> may be wrong ;)).

Perhaps I'm confused - by API do you refer to database-specific
libraries (like libpq) or the rsyslog-internal API between the core &
database output modules?  If the latter, I've completely misunderstood
your questions.

I was most specifically responding to this statement by you, which
seemed supported in your later Oracle/PosgreSQL-specific questions:
> There is a problem with this example - and that is that each database
> provides its own API for prepared statements.

Although this is true, most databases also have a pure-SQL interface
for defining and calling [stored procedures|prepared statements] that
can be used with a simple exec(SQL) call instead of the
language-specific [C|C++|Java|Lisp] API calls.  The tradeoff is (as
usual) efficiency versus flexibility.
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com

Reply via email to