List:MySQL and .NET« Previous MessageNext Message »
From:Reggie Burnett Date:February 22 2007 1:38pm
Subject:RE: Prepared Statements
View as plain text  

> > I'm not sure where you misunderstood.  The SQL syntax part you
> referred to
> > is just that, SQL syntax.  It's the same prepared statements under
> the hood.
> I understand that it's the same 'under the hood'.  That's really not
> what I asked.
> The difference between the two is that one is prepared in a text string
> using the standard protocol (here in c):
>    mysql_query(mysql, "PREPARE stmt1 FROM 'SELECT ....'");
>    mysql_query(mysql, "SET @a=1");
>    mysql_query(mysql, "SET @b=2");
>    mysql_query(mysql, "EXECUTE stmt1 USING @a, @b");
> As an SQL text string.
> The binary version uses a binary channel, as called by:
>    mysql_stmt_prepare(stmt, "SELECT ...", 	// Prepare statement
>    mysql_stmt_bind_param(stmt, bind);		// Send variables
> binary
> The two forms have different SQL syntax, and the two forms use
> different
> channels in the MySql transport protocol, the first text, the second
> binary.
> As the second uses a binary protocol, it is far more efficient at
> getting data into MySql fast.
> Again when returning data, the first version uses the textual transport
> protocol, the second uses the binary transport protocol.  Which is
> obviously far faster.
> So although they are the same 'under the hood'. there is a vast
> difference.
> Which is what I was trying to ask this mailing list on my first email,
> which version does MySql.NET use?

Sorry about the confusion.  The connector uses the binary protocol to
execute PS.

> > Not sure what you mean by 'trying the C# when available'.  We've had
> a .NET
> > connector out for > 2 years now.  We have one that is built with .NET
> 1.1
> > and one that is targeted at .NET 2.0
> Not the connector, I have been using that since first released.  It's
> an
> excelent piece of software.  Works just as well on Mono as MS.
> I was talking about prepared statements.  The part of the .NET which is
> not working currently.  I was asking whether the developers are still
> planning support for .NET 1.1 in the future and when this is fixed.
> Which I am hoping as we are stuck with 1.1.

The problem with PS is not in the connector.  The problem we found was in
the server.  The server was not always executing PS correctly.  All the
connectors added options to disable PS at the users request.  When the PS
subsystem on the server becomes more robust, then users can remove the
connection string option to disable PS and they will start working again.


Prepared StatementsBen Clewett1 Feb
  • Re: Prepared StatementsFrank1 Feb
  • RE: Prepared StatementsReggie Burnett20 Feb
    • Re: Prepared StatementsBen Clewett21 Feb
      • RE: Prepared StatementsReggie Burnett21 Feb
        • Re: Prepared StatementsBen Clewett22 Feb
          • RE: Prepared StatementsReggie Burnett22 Feb
            • Re: Prepared StatementsBen Clewett23 Feb
              • RE: Prepared StatementsReggie Burnett23 Feb