List:MySQL and .NET« Previous MessageNext Message »
From:Reggie Burnett Date:February 23 2007 3:24pm
Subject:RE: Prepared Statements
View as plain text  
All versions that support PS, yes.

> -----Original Message-----
> From: Ben Clewett [mailto:ben@stripped]
> Sent: Friday, February 23, 2007 2:08 AM
> To: Reggie Burnett
> Cc: dotnet@stripped
> Subject: Re: Prepared Statements
> 
> Reggie,
> 
> I understand, thank for the info.
> 
> Is the PS problem on all versions of MySql?
> 
> Ben
> 
> 
> Reggie Burnett wrote:
> > Ben,
> >
> >>> 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.
> >
> > Reggie
> >
> >
> >
> >
> >
> 
> 
> --
> MySQL on .NET Mailing List
> For list archives: http://lists.mysql.com/dotnet
> To unsubscribe:    http://lists.mysql.com/dotnet?unsub=1


Thread
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