List:MySQL++« Previous MessageNext Message »
From:Chris Morgan Date:June 8 2009 7:18pm
Subject:Re: Possible bug in ssqls
View as plain text  
Hi Adrian,

It's usually a bad idea to use SQL reserved words as table/column names.  Is
it absolutely required that your schema use that table name?

MySQL 5.1 reserved word list:
http://dev.mysql.com/doc/refman/5.1/en/reserved-words.html

hth,

-Chris

On Mon, Jun 8, 2009 at 12:04 PM, Adrian Cornish <mysql@stripped>wrote:

> Hi All,
>
> I am just trying out mysql++ for the first time (fantastic bit of code) and
> I think I have discovered a small bug.
>
> When creating tables with the ssql macro sql_create - It isnt quoting the
> table name Option as mysql expect its to be.
>
> Versions:
> mysql++: mysql++-3.0.9
> mysql:     5.1.34-log
> gcc:        version 4.4.0 (GCC)
> kernel:    2.6.29.2
>
> Table def:
> CREATE TABLE `Option` (
>  `PKey` int(11) NOT NULL,
>  PRIMARY KEY (`PKey`)
> ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
>
> Code:
> <plusplus@stripped>#include <mysql++.h>
> #include <ssqls.h>
> #include <iostream>
>
> sql_create_1(Option, 1, 0, mysqlpp::sql_int, PKey)
>
> int main(int argc, char *argv[])
> {
>
>   if(argc>1)
>      Option::table("`Option`");
>
>   try
>   {
>   mysqlpp::Connection conn("test", "localhost", "adrianc");
>
>   Option opt(23);
>   mysqlpp::Query query=conn.query();
>   query.insert(opt);
>   query.exec();
>   }
>   catch(const std::exception &e)
>   {
>      std::cout << "EXCEPTION: " << e.what() << '\n';
>   }
>
>   return 0;
> }
>
> Results
> dluadrianc:/home/adrianc/tmp> g++ bug.cc -I/usr/local/include/mysql
> -I/usr/local/include/mysql++ -L/usr/local/lib -lmysqlpp
> dluadrianc:/home/adrianc/tmp> a.out
> EXCEPTION: You have an error in your SQL syntax; check the manual that
> corresponds to your MySQL server version for the right syntax to use near
> 'Option (PKey) VALUES (23)' at line 1
> dluadrianc:/home/adrianc/tmp> a.out 1
> dluadrianc:/home/adrianc/tmp>
>
>
>
> Adrian Cornish
>

Thread
Possible bug in ssqlsAdrian Cornish8 Jun
  • Re: Possible bug in ssqlsChris Morgan8 Jun
    • Re: Possible bug in ssqlsAdrian Cornish8 Jun
      • Re: Possible bug in ssqlsWarren Young8 Jun
        • Re: Possible bug in ssqlsAdrian Cornish8 Jun
          • Re: Possible bug in ssqlsWarren Young8 Jun
            • Re: Possible bug in ssqlsAdrian Cornish10 Jun
              • Re: Possible bug in ssqlsWarren Young11 Jun