You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(3) |
Oct
(1) |
Nov
|
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(7) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
(5) |
Jul
(1) |
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
2002 |
Jan
|
Feb
(1) |
Mar
|
Apr
(3) |
May
(3) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
(1) |
Oct
(15) |
Nov
(23) |
Dec
|
2003 |
Jan
|
Feb
(6) |
Mar
(5) |
Apr
(11) |
May
(8) |
Jun
|
Jul
|
Aug
(5) |
Sep
(4) |
Oct
(5) |
Nov
(7) |
Dec
(19) |
2004 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
(24) |
Sep
(2) |
Oct
(4) |
Nov
(3) |
Dec
(2) |
2005 |
Jan
(3) |
Feb
|
Mar
(6) |
Apr
|
May
(5) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
(2) |
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
(4) |
Feb
(5) |
Mar
|
Apr
(2) |
May
(3) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Karel F. <kar...@st...> - 2003-05-07 12:33:51
|
Hello, I 'm hoping to use mysqlcppapi in Microsoft visual C++ 6.0. Is that possible? Do I have to do something special for that? Thank you! Karel Frederix student 1e lic. INFORMATICA LUC, Diepenbeek BELGIUM |
From: Karel F. <kar...@st...> - 2003-05-07 11:46:37
|
Hello, I 'm hoping to use mysqlcppapi in Microsoft visual C++ 6.0. Is that possible? Do I have to do something special for that? Thank you! Karel Frederix student 1e lic. INFORMATICA LUC, Diepenbeek BELGIUM |
From: Radoslaw G. <rga...@ay...> - 2003-04-15 14:36:52
|
Hi, I have problems with mysqlcppapi-1.9.2-0 - particularly with an exceptio= ns=20 handling mechanism. In certain situations my application receives SIGABRT and ends - I know = for=20 sure that it happens in get_index() method (when an exception is thrown). As I know the problem is with the gcc's exceptions handling mechanism - = I=20 have checked that exceptions generated by mysqlcppapi are not caught by m= y=20 application - it seems as the exceptions do not rise at all and the stand= ard=20 behavior (application termination) is invoked. I know (by the Internet searching) that the problem is as old as gcc (;-)= , but=20 the only suggestions I have found are as e.g. change to the latest gcc, l= ook=20 at the stack to find out the function which causes the abortion, recompil= e it=20 with a g++ instead of a gcc etc. I have to use the gcc in a version I hav= e to=20 keep the back compatibility. Additional information: =09Everything works fine with the old mysqlcppapi (1.7). =09The mysqlcppapi in version 1.9.2-0 I use is recompiled on my machine (= the=20 specification below). Any suggestions appreciated. Thanks in advance. System spec: =09linux:=09Suse 8.0 (upgraded)=20 =09gcc:=09=092.95.3 =09mysqlcppapi.spec (the compilation part, I have added CC=3Dg++): >>> CFLAGS=3D"$RPM_OPT_FLAGS" CXXFLAGS=3D"$RPM_OPT_FLAGS" ./configure CC=3Dg+= +\ =09=09--with-mysql=3D/usr\ --host=3Di386-linux\ =09=09--prefix=3D$RPM_BUILD_ROOT/usr\ $LOCALFLAGS %build # Setup for parallel builds numprocs=3D`egrep -c ^cpu[0-9]+ /proc/stat || :` if [ "$numprocs" =3D "0" ]; then numprocs=3D1 fi make -j$numprocs make check <<< --=20 //=09Radoslaw Garbacz |
From: Radoslaw G. <rga...@ay...> - 2003-04-14 15:56:36
|
Hi, My previous post concerned memory leaks problems. I used the libc mtrace() function for more detailed study of the problem = and=20 it appeared that it had been caused mainly by the "mysqlclient" library f= rom=20 "mysql" package. There were also some problems with strstring class but a= s I=20 checked, the latest version of "mysqlcppapi" uses the newest solution=20 (stringstream) which should not cause any problems with memory allocation= =2E So, according to the results of my "detailed" studies, I have download th= e=20 latest version of the mysql package (4.0.12-0) - and after all recompilat= ions=20 there are no problems with memory allocations inside it BUT, unfortunatel= y=20 the new problems arises with the mysqlcppapi library: The output from mtrace() (the memory which was allocated and never freed)= : =20 1) /usr/lib/libmysqlcppapi-1.9-1.9.so.3:(my_malloc+0x1f)[0x402c83bf] +=20 0x8061ad8 0x40 2) /usr/lib/libmysqlcppapi-1.9-1.9.so.3:(my_once_alloc+0x5e)[0x402cd0ae]= +=20 0x80644c8 0xff8 Please let me know in case of the need of any additional information. current packages versions: MySQL : 4.0.12-0 mysqlcppapi : 1.9.2-0 all packages were recompiled on my system:=20 Linux Suse 8.0 (upgraded) glibc-2.2.5-158 gcc-2.95.3-216 Any help appreciated. ps. the problem with a segmentation fault error has not appeared so far w= ith=20 the new mysql library, --=20 //=09Radoslaw Garbacz // aycan Digitalsysteme GmbH // Innere Aumuehlstrasse 5 // 97076 Wuerzburg // phone: +49 931-2 70 40 9-0 // fax: +49 931-2 70 40 9-1 // http://www.aycan.de |
From: Radoslaw G. <rga...@ay...> - 2003-04-03 10:15:07
|
Hello everybody. I would like to ask for an explanation of a strange (for me) behavior of= the=20 mysqlcppapi library. It seems that there are memory leaks - but, of course, my testing method= =20 could be completely wrong.=20 I am the new in this subject so please forgive my ignorance. I have searched the internet, but I have not found any information conce= rning=20 the mysqlcppapi and memory leaks so that I post this mail. 1.Main problem: =09memory leaks 2.Tests description: The tests I have done are quite simple. I invoke a simple select query w= ith=20 the use of the mysqlcppapi in a loop with a defined counter (each loop=20 creates a connection to a database, invokes a query and closes the=20 connection) - then I test the size of an allocated memory with the use of= =20 e.g. a "ps". I do this with the line: "mysqlcppapi::Result_Store res =3D query.store();" a) compiled in b) commented (not compiled) 3. Results: a) the size of a used memory does not increase b) the size of a used memory constantly increases (it is noticeable after= =20 about 100 iterations) 4. Environment specification: my system:=09=09Linux SuSe v.8.0 my gcc:=09=09=09gcc-2.95.3-216 my mysqlcppapi:=091.7-2 (I have tested also the latest version 1.9.2-0) 5. The final description: I use mysqlcppapi version 1.7-2, but I have also tested the version 1.9.= 2-0=20 (the latest at the time of tests) and it behaves in the same way - in=20 addition a segmentation fault occurred when an application was trying to=20 create a connection to a non existing mysql demon (so I returned to the=20 previous version). I have also tested the mysql++ library, but it behaves= =20 much worse. I would be very obliged to any suggestions which would help me to solve = this=20 problem or to understand it. =20 5. A testing source code: It is attached.=20 Here I quote only the function which contains all mysqlcppapi invocations= : void createConnection(int _loop) { // mysqlcppapi::Connection * conn =3D new mysqlcppapi::Connection(); mysqlcppapi::Connection sconn; mysqlcppapi::Connection * conn =3D &sconn; // sleep(1); conn->connect(); conn->ping(); conn->select_database("dicom"); mysqlcppapi::Query query =3D conn->create_Query(); query << "select * from testD where uid > 2 and uid <=3D 3" << ends; =20 // the following line causes memory leaks - when it is compiled in mysqlcppapi::Result_Store res =3D query.store();=09=20 conn->close(); // conn->shutdown(); cout << "\r" << "_loop =3D " << _loop << flush; // cout << "\t res.size=3D" << res.size() << flush; // delete conn; }; Thanks in advance. -- //=09Radoslaw Garbacz |
From: Norbert K. <nor...@sc...> - 2003-04-03 09:36:29
|
hello everybody, can anybody please give me a hint what's going wrong. the code should run on an smp machine with debian-woody, gcc-3.2.3, mysqlcppapi-1.9.2. the program is multithreaded. <codesnippet> mysqlcppapi::Query query = connection_->create_Query(); query << "select * from browser"; mysqlcppapi::Result_Store res = query.store(); mysqlcppapi::Result_Store::iterator it = res.begin(); while( it != res.end() ) { //do something } query << "select * from os" ; res = query.store(); it = res.begin(); while( it != res.end() ) { //do something } </codesnippet> please take a look at mysql.log: 601 Init DB WebstatMeta 601 Query select * from browser 030403 10:57:06 601 Query select * from browserselect * from os 503 Quit please reply to my email address since i am not ( yet ) subscriber of the list. thx norbert -- First newbie rule: IGNORE the flamers... Second newbie rule: DON'T give up... Jerry McBride in Alt.Linux THIRD newbie rule: see first rule... alt.os.linux.slackware FAQ: http://wombat.san-francisco.ca.us/perl/fom |
From: Thomas D. M. <tho...@se...> - 2003-03-28 13:18:05
|
Hi again, My bad: I had an array bounds issue. Floats are working fine. Apologies for the inbox clutter. Naturally, I would find this five seconds after posting... --thomas -- Freedom is slavery. Ignorance is strength. War is peace. -- George Orwell |
From: Thomas D. M. <tho...@se...> - 2003-03-28 13:09:25
|
Hi, I am getting a segmentation fault when trying to do the following: Result_Store result = query.store(); double d = result[0][0]; where the result is a float in the database. I have also tried casting to float (just in case), and outputting via a stream operator with the same result. I started to look at ColData.h, but thought I would report it in case it is a known issue and there is already a fix (probably a new macro definition) available. I am using mysqlcppapi-1.7 (though everything is installed as 1.9??) on Linux with the new mysql-4.0.12. Everything else works fine. (It would probably be a good idea to regression test against all possible MySQL column types for these sorts of things.) I might add that I find it a very useful library, that behaves exactly as I expect it should, with minimal overhead. Good job, and thanks! --thomas -- Please use an explicit test - I know gcc suggest just an extra set of parenthesis, but I'm personally convinced that is just because some gcc people have been damaged by too much LISP. - Linus Torvalds discussing gcc requirements on linux-kernel |
From: Ryan L. <ry...@gf...> - 2003-03-24 20:35:06
|
I am unable to get my application to compile with mysql++ under visual C++ 7. I am trying to compile the MFC_ex project that is distributed with the 1.7.1 set of binaries. The compile error that I keep receiving is: =20 "c:\Develop\Libs\mysql++\include\resiter1.hh(29): error C2977: 'std::reverse_iterator' : too many template arguments" =20 The only thing that I can think of is that either Mysql++ or VC++7 uses a non standard version of STL. Which would completely defeat the purpose of the 'Standard' in STL. =20 Thanks Ryan Lim =20 |
From: Hausmann J. I. <joh...@si...> - 2003-02-18 14:23:16
|
Hello , I'm trying the new 1.9.2 release , but I'm missing a function like "IsNull" to check wheather a element of a mysqlcppapi::Row is Null or not ? Are ther any exsamples. I'm not able to check the stuff in null.h and Coldata.h Man thanks Johannes |
From: Samo G. <ro...@ve...> - 2003-02-17 13:31:20
|
Hello! i have downloaded and installed mysqlcppapi-1.7.5. I`m getting random sql errors, i have enabled mysql log support and then saw that query get`s an random char at the end [somethimes] and that`s why it doesnt get executed. My query line is ----- mysqlcppapi::Query query = con.create_Query(); query << "insert into missed_calls (date,wav_file,phone_nr) values ('" << timest << "','" << fn <<"','" << user <<"')"; query.execute(); ------ I don`t see how can a char get behind the query since i execute it right afterwards .. but in mysql log i got this [it does get executed without error from time to time or should i say it does the random thing from time to time ]: Query insert into missed_calls (date,wav_file,phone_nr) values ('14:26:34 17/02/2003','/stuff/20030217_142633.wav','root [10.0.0.1]')@ Query insert into missed_calls (date,wav_file,phone_nr) values ('14:27:17 17/02/2003','/stuff/20030217_142713.wav','root [10.0.0.1]')w ... ... |
From: Thomas S. <tho...@my...> - 2003-02-15 09:56:33
|
Oops, sorry. Just forget this mail. That was my first try with 1.7.5. I now tried 1.9.2 and it works fine so far or at least compiled :-). Keep up the good work! Thanks, Thomas On Sat, 15 Feb 2003 10:52:44 +0100 Thomas Seifert <tho...@my...> wrote: > Hi folks, > > anyone got this to work at redhat8? > I can't compile it successfully. > The last messages from the compile are attached. > > I would appreciate any help. > > TIA, > > Thomas > > > > make-> > > In file included from date_base.h:4, > from Date.h:5, > from Date.cc:1: > datetime_base.h:20: ISO C++ forbids declaration of `ostream' with no type > datetime_base.h:20: `ostream' declared as a `virtual' field > datetime_base.h:20: parse error before `&' token > datetime_base.h:22: syntax error before `(' token > datetime_base.h:25: parse error before `(' token > datetime_base.h:25: syntax error before `(' token > datetime_base.h:32: `struct mysqlcppapi::datetime_base::DTbase' does not > declare a template type > datetime_base.h:34: invalid use of `virtual' in template declaration of ` > virtual short int mysqlcppapi::datetime_base::DTbase::compare(const T&) > const' > datetime_base.h: In member function `bool > mysqlcppapi::datetime_base::DTbase::operator==(const T&) const': > datetime_base.h:37: parse error before `;' token > date_base.h:7: confused by earlier errors, bailing out > make[3]: *** [Date.lo] Fehler 1 > make[3]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa > pi-1.7.5/mysqlcppapi/datetime« > make[2]: *** [all-recursive] Fehler 1 > make[2]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa > pi-1.7.5/mysqlcppapi« > make[1]: *** [all-recursive] Fehler 1 > make[1]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa > pi-1.7.5« > make: *** [all-recursive-am] Fehler 2 > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Mysqlcppapi-main mailing list > Mys...@li... > https://lists.sourceforge.net/lists/listinfo/mysqlcppapi-main > |
From: Thomas S. <tho...@my...> - 2003-02-15 09:51:34
|
Hi folks, anyone got this to work at redhat8? I can't compile it successfully. The last messages from the compile are attached. I would appreciate any help. TIA, Thomas make-> In file included from date_base.h:4, from Date.h:5, from Date.cc:1: datetime_base.h:20: ISO C++ forbids declaration of `ostream' with no type datetime_base.h:20: `ostream' declared as a `virtual' field datetime_base.h:20: parse error before `&' token datetime_base.h:22: syntax error before `(' token datetime_base.h:25: parse error before `(' token datetime_base.h:25: syntax error before `(' token datetime_base.h:32: `struct mysqlcppapi::datetime_base::DTbase' does not declare a template type datetime_base.h:34: invalid use of `virtual' in template declaration of ` virtual short int mysqlcppapi::datetime_base::DTbase::compare(const T&) const' datetime_base.h: In member function `bool mysqlcppapi::datetime_base::DTbase::operator==(const T&) const': datetime_base.h:37: parse error before `;' token date_base.h:7: confused by earlier errors, bailing out make[3]: *** [Date.lo] Fehler 1 make[3]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa pi-1.7.5/mysqlcppapi/datetime« make[2]: *** [all-recursive] Fehler 1 make[2]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa pi-1.7.5/mysqlcppapi« make[1]: *** [all-recursive] Fehler 1 make[1]: Verlassen des Verzeichnisses Verzeichnis »/home/ts77/download/mysqlcppa pi-1.7.5« make: *** [all-recursive-am] Fehler 2 |
From: Bryan W. H. <bwh...@ea...> - 2002-11-14 16:52:30
|
Since our friend did not answer, I'll do so, Quoting from the MySql++ manual, > 6. Template Queries > > The idea of template queries is too provide a query with replaceable parameters that can be changed between query calls with out having to reform the queries. > > 6.1 Setting Them Up > > To set up a template query simply enter the query like it is a normal query. For example: > > query << "select (%2:field1, %3:field2) from stock where %1:wheref = %q0:what" > > And then execute the Query::parse() method. For example: > > query.parse() > > > 6.2 Template Format > > An example template looks like this > > select (%2:field1, %3:field2) from stock where %1:wheref = %q0:what > > The numbers represent the element number in SQLQueryParms (see the next section). > > The format of the substation parameter is: > > %(modifier)##(:name)(:) > > Where Modifier can be any one of the following: > > % > Print an actual "%" > "" > "" means nothing. Don't quote or escape no matter what. > q > This will quote and escape it using mysql_escape_string if it is a string or char *, or another Mysql specific types that needs to be quoted. > Q > Quote but don't escape based on the same rules. This can save a bit of time if you know the strings will never need quoting > r > Always quote and escape even if it is a number. > R > Always quote but don't escape even if it is a number. > > ## represents a number up to two digits > > ``:name'' is for an optional name which aids in filling SQLQueryParms. Name can contain any alpha-numeric characters or the underscore. If you use name it must be proceeded by non-alpha-numeric charter. If this is not the case add a column after the name. If you need to represent an actual colon after the name follow the name by two-columns. The first one will end the name and the second one won't be processed. > > 6.3 Setting the Parameters > > The parameters can either be set when the query is executed or ahead of time by using default parameters. > > 6.3.1 At Execution Time > > To specify the parameters when you want to execute a query simply use Query::store(const SQLString &parm0, [..., const SQLString &parm11]) (or Query::use or Query::execute). Where parm0 corresponds to parameter number 0, etc. You may specify from 1 to 12 different parameters. For example: > > Result res = query.store("Dinner Roles", "item", "item", "price") > > with the template query provided in section 6.2 would produce: > > select (item, price) from stock where item = "Dinner Roles" > > The reason for why we didn't make the template the more logical: > > select (%0:field1, %1:field2) from stock where %2:wheref = %q3:what > > will become apparent shortly. > > 6.3.2 Using Defaults > > You can also set the parameters one at a time by means of the public data member def. To change the values of the def simply use the subscript operator. You can refer to the parameters either by number or by name. For example: > > query.def[0] = "Dinner Roles"; > query.def[1] = "item"; > query.def[2] = "item"; > query.def[3] = "price"; > > and > > query.def["what"] = "Dinner Roles"; > query.def["wheref"] = "item"; > query.def["field1"] = "item"; > query.def["field2"] = "price"; > > would both have the same effect. > > Once all the parameters are set simply execute as you would have executed the query before you knew about template queries. For example: > > Result res = query.store() > > 6.3.3 Combining the Two > > You can also combine the use of setting the parameters at execution time and setting them by use of the def object by simply using the extended form of Query::store (or use or execute) without all of necessary parameters specified. For example: > > query.def["field1"] = "item"; > query.def["field2"] = "price"; > Result res1 = query.store("Hamburger Buns", "item"); > Result res2 = query.store(1.25, "price"); > > Would store the query: > > select (item, price) from stock where item = "Hamburger Buns" > > for res1 and > > select (item, price) from stock where price = 1.25 > > for res2. > > Because the extended form of Query::store can only effect the beginning (by number not by location) parameters the more logical template query: > > select (%0:field1, %1:field2) from stock where %2:wheref = %q3:what > > would not of worked in this case. Thus the more twisted ordering of > > select (%2:field1, %3:field2) from stock where %1:wheref = %q0:what > > was needed so that we can specify wheref and what each time. > > One thing to watch out for, however, is that Query::store(const char* q) is also defined for executing the query q. For this reason when you use the Query::store (or use, or execute) with only one item and that item is a const char* you need to explicitly convert it into a SQLString. For example: > > Result res = query.store(SQLString("Hamburger Buns")). > > 6.3.4 Error Handling > > If for some reason you did not specify all the parameters when executing the query and the remaining parameters do not have there values set via def the query object will throw a SQLQueryNEParms object. In which case you you can find out what happened by checking the value of SQLQueryNEParms::string. > > For example: > > query.def["field1"] = "item"; > query.def["field2"] = "price"; > Result res = query.store(1.25); > > would throw SQLQueryNEParms because the wheref is not specified. > > In theory this exception should never be thrown. If the exception is thrown it probably a logic error on you part. (Like in the above example) -- ____ .:. ____ Bryan W. Headley - bwh...@ea... |
From: Bryan W. H. <bwh...@ea...> - 2002-11-12 23:14:48
|
Keith Hayes wrote: > List, > > Thanks so much for your responses to my "Just a little help: post. > > I feel I need to clarify my question a bit plus I had more time to test > different configurations. > > Here's a sample program. > I don't have gcc 2.96; that's a Redhat-ism. Murray will have to check it out for you. I pasted your code & compiled with g++-3.2; everything ran fine. (I changed val so it was set in a for() loop; inserts 100 records) > > ??? Were query templates add to this branch yet??? I havn't found any > examples yet :- ) No, and I don't know how Murray feels about them. > > Anyway, thanks again for the responses. > Sorry if this was too long.. > > Keith > > > -- ____ .:. ____ Bryan W. Headley - bwh...@ea... |
From: Keith H. <kei...@ch...> - 2002-11-12 22:23:11
|
List, Thanks so much for your responses to my "Just a little help: post. I feel I need to clarify my question a bit plus I had more time to test = different configurations. Here's a sample program. ---------------CODE--------------------------- ----headers---- main ()=20 { int val =3D 0; mycppapi::Connection con; con.set_Host("localhost"); con.set_User("root"); con.set_Password("1234"); con.set_Port(3306); con.connect(); /* connects just fine */ con.select_database("mydb"); /* selects the database fine here */ while(1) { val =3D grab_a value(); /* some function that grabs some = value */ InsertIntoDB(con,val); /* insert new val into db */ /* I assume all destructors free/clear all the variables before = I go around again.?? */ } } /* end main() */ int InsertIntoDB( mysqlcppapi::Connection& con, int value) { try { mysqlcppapi::Query query =3D con.create_Query(); query << "insert into MYTABLE (myvalue) values( " << val << ")" << = std::ends; /* Tried this query << "insert into MYTABLE (va) values( " << val << = ")" << ends; */ /* Tried this query << "insert into MYTABLE (va) values( " << val << = ")" << endl; */ /* Tried this query << "insert into MYTABLE (va) values(100)"; */ =20 /* Tried std:osstringstream */ =20 query.execute(); return(0); } catch (mysqlcppapi::ex_BadQuery &er) { do_stuff(); } catch (mysqlcppapi::ex_BadConversion &er) { do_stuff(); } } /* end InsertIntoDB() */ -----------CODE-------------------- -----Enviornment------- I am using gcc 2.96 DB API RESULT = MESSAGE -------------------------------------------------------------------------= ----------------------------------- 4.0.3 1.91 exception ex_BadQuery caught Query was = Empty 3.23.53a 1.91 exception ex_BadQuery caught Query was = Empty 4.0.3 1.90 works fine 3.23.53a 1.90 works fine 4.0.3 1.7.5 works fine 3.23.53a 1.7.5 works fine Here's my conclusion. 1.7.5 Query is std::strstring requires std:ends to terminate query. = works fine 1.9.0 Query is std::strstring requires std:ends to terminate query. = works fine 1.9.1 Query is std::stringstream. I havn't been able to get any = combination to work. ??? Were query templates add to this branch yet??? I havn't found any = examples yet :- ) Anyway, thanks again for the responses. Sorry if this was too long.. Keith |
From: Keith H. <ha...@so...> - 2002-11-11 22:47:44
|
Dear Cool People, I have two minor questions regarding mysqlcppapi. 1. I am getting errors when trying to load up a query object like this. I establish a connection successfully. mysqlcppapi::Query query =3D con.create_Query(); query << "select * from sometable"; query.execute(); I then an exception from catch(mysqlcppapi::ex_BadQuery& er) complaining that Query was empty. 2. branch 1.9.1 seems to be the newest version yet it is labeled as = "UnStable". would you recommend using 1.9.x or the 1.7.9 branch. Thanks very much for any help or guidence Keith |
From: Bryan W. H. <bwh...@ea...> - 2002-11-08 16:03:36
|
Chris wrote: > Hello Murray, Hello Brian, > > Firstly let me apologize for my attitude here :-) > Someone has done a lot of work and all I did was to complain. Sorry. > > > >pkg-config is not obscure. Anyway, you seem to have found it: > > > Yes, by default it wasn't installed on our Linux system ( Mandrake ) > as the packaging system used is RPM as is the case with RedHat and SuSE. That's interesting. Do you have Gnome-2.0 installed? (I forget if it came with Gnome 1.4, nor do I remember if it comes with KDE 3, although it's supposed to be for both KDE 3 and Gnome 2.) Worse cast scenario is, we ask you to download pkg-config and build/install it. Easier is if there's a Mandrake RPM ready... pkg-config ships with Mandrake 9.0; I haven't checked previous releases (and the mirror I'm looking at only keeps the latest-greatest). Well, according to rpmfind.net, there's a very of pkg-config in the Mandrake "Cooker" (newer than the one in 9.0) at, http://www.rpmfind.net//linux/RPM/cooker/cooker/i586/Mandrake/RPMS/pkgconfig-0.14.0-1mdk.i586.html If you find yourself downloading the 'Cooker" version, I would instead download the source code RPM file, and force rpm to build-from-source. As I recall, that's rpm -ba blah.srpm and I believe you have to be root to do it (I'm a Debian user nowadays) > I really love Linux / Unix in general and one of it's greatest strengths > > has got to be the variety of choices it offers. Unfortunately, from a > user > perspective, one often finds oneself implementing a framework to support > a single application. We switched to the MySQL++ API for the simply > reason > that it required nothing beyond the stock configuration. It's often a "religious" issue. Ubiquitous use of pkg-config was assumed by everyone by the Gnome-2 developers, but that does not mean that's a Lingua Franca. For example, the number of systems that still have Gnome 1.4 or KDE 2.4 is amazing. As we're closer to the trees than the forest, it's hard for us to know where the cut-off is. And too, there's nothing like forcing the issue to make the transition "snappy"; again, a sympton of trees versus forest vision... And really, that's for everything, not just pkg-config. There are people out there requiring the use of the very latest, released-last-week version of autoconf that lots of users don't have. We all want instant user-base, so the latest tools get wider testing & are thereby made more stable. Lot easier to find bugs with 4M users than just the core developer group of 4 :-) -- ____ .:. ____ Bryan W. Headley - bwh...@ea... |
From: Chris <ch...@of...> - 2002-11-06 19:35:18
|
Hello, trying to get the mysql cpp API working. The basic API installed fine once I installed the MySQL development RPM. However, the configure script complains about some obscure pck-config stuff. Anybody come across this before ? I fetched the RPM for that and installed it - beautiful. Not the configure script can't find the corresponding configuration files. I was hoping to avoid installing and configuring obscure package management tools just to uninstall them after I get this example program to compile :-) Any ideas ? Remove # from email address Chris chris@fee#gan.co.uk "Quis custodiet ipsos custodes?" "Who watches the watchmen?" - Juvenal, Satires |
From: <mu...@t-...> - 2002-11-04 08:50:43
|
On Sun, 2002-11-03 at 22:58, Bryan W. Headley wrote: > no...@so... wrote: > > > Patches item #632734, was opened at 2002-11-02 22:39 > > You can respond by visiting: > > https://sourceforge.net/tracker/?func=detail&atid=307869&aid=632734&group_id=7869 > > > > > > >Summary: mystery patch > > > > ---------------------------------------------------------------------- > > > > If you are going to have a conversation, use email. Don't use the bug > tracking system. I'll chat privately, I'll chat publically It make sense to discuss/develop patches in patch manager, next to the patch. I find that works well for the gtkmm project. If you don't want to do that, please at least use the mailing list. > > 1. This is not a cvs patch - it patches generated files so > > it's difficult to read. > > > I use CVS as a baseline establishing tool only. Doing a diff between my > file and the repository, when the file(s) in the repository are > changeable is not acceptable. Other people do not have problems proviging cvs patches. It works well enough for everbody else on almost every other open-source project. > By definition, my window for making a > change to a file = the amount of time between my doing a CVS update and > someone else submitting a patch to that file for merging. > > Unless you don't mind constantly reintegrating using a non-centralized > repository, you use the ability to work effectively. Maybe subversion or > arch would help, but we don't use either, and SV isn't ready for heavy > use, besides. Arch is ready, but needs a UI. > > BitKeepers' licensing keeps me away from using their stuff. I don't understand most of that, and I'm not interested anyway. Please provide cvs patches or expect to wait longer for your patches to be applied. > I tried my best to avoid sending diff information on any generated > files. I expect you are referring to config.h.in, which I admit is a > shade of gray as to whether it's generated or not. I seem to remember some Makefile, Makefile.in, or configure changes. > > 2. > > > > mysqlcppapi uses .h extensions so far, so lets keep it > > > > consistent. > > > I don't recall sending you a header without the .h extension. What are > you referring to? I think I was referring to your API.hh file. > > 3. > > > > Please don't give copyright of new files to me, if you have > > > > written them, and particularly not if you mispell my name. > > > > "The mysqlcppapi team" would be best. > > > I regret misspelling your name; I don't know if claiming a copyright to > a non-extant legal entity is the right thing to do, even if "they" in > turn grant rights under LGPL. I'm aware that the Gtk+ folks did it that > way. I just feel that there should be a legally-definable steward of the > copyright, who can then confer usage rights. > > In the case of any sort of legal challenge, you see, who is "the > mysqlcppapi team"? Nobody you can identify for a subpema/disposition > purposes. Yes, it's legally unclear. Please use "The mysqlcppapi team". If it's good enough for other high-profile projects then it's good enough for us. > Also, I don't see any other header discuss the LGPL, or a COPYRIGHT file > with the usage terms spelt out. That should be fixed. I'll let you grant > the rights to your code by pasting the preamble... Yes, I was sure that I made a point about putting that somewhere clearly when I forked the project, but I don't see anything now. > > > > 4. > > > > Why change GENERIC_* variable names to MYSQLCPPAPI_* names? > > > Ah. Because if I include several packages, each with a _version.h > file, I want to avoid symbol collision. Best way is to name the > variables after the package. Heaven forbid that I ever use your package > at the same time as someone else, who thinks GENERIC_MAJOR_VERSION is a > good name. Maybe it is, but only if the product is called GENERIC. I was referring to the autotools files. I don't think there was any _version.h file before you added it. > > 5. > > > > Your use of variable names for the library name makes > > > > assumptions about future library names based on version > > > > names. Those decisions have not yet been made. For instance, > > > > gtk+2.2.0 has a 2.0 library name. > > > As to the second point, you have to wonder why, too. Is it a member of > the Gtk+ 2.0 "family" of releases, or is it appropriate for use with > Gnome-2? Their naming convention is non-obvious; they could benefit from > some documentation, perhaps in configure.in... People don't need to care about the names of libraries on disk. They just use pkg-config and tell it what they want. > As to the first point, you've changed the name of the package to > mysqlcppapi-2. I don't see how that is relevant. You may be confusing "API versions" and "library names" and "library versions". > Go look at your "file download" page if you don't recall > that. Personally, I agree with the name change, insofar as the API was > changed through the removal of support of slist<T> for Rows. > > Maybe you can add to the API and keep the old package name, but I don't > advise that for removing function calls. Plus the change to the newer > STL headers is a larger change than it appears to be. None of which supports your assumptions about future API change, so these build file changes will not be applied. > > 6. I see no great need for configure scripts to double-check > > > > the results of pkg-config queries. Other libraries don't > > > > seem to need to do it. I'd prefer to keep things simple. > > > You still are confused on that. It's not a test to see if pkg-config is > lying, although it also does that. It's a test that other versions of > dependent libraries are not being dynanmically linked at runtime in by > mistake. E.g., pkg-config will give the correct insructions to > dynamically link against a library in, say, /usr/lib, but if you have > LD_LIBRARY_PATH set to /var/openBSD/emu/lib, it will try to dynamically > resolve symbols from there first, when the code is run. And _that_ is > the test. > > As that particular test saved my bacon the other day, I'm predisposed to > including it. Removing it removes critical functionality. I'm not convinced. If you provide a patch that includes only that feature then we can keep it sitting around in case we want to apply it later. > Simplification's purpose is to remove useless cruft; this is not that. > > Tried to build Gnome2 with vicious_build_scripts the other day. It > builds the whole dist in a separate tree. Build doesn't work. If often doesn't build due to source code breakage, but in general it works for a lot of people. If you have a problem with it then I suggest you talk to the author. > Why? > Because it uses binaries it just compiled in a bootstrap manner. Where > do these binaries look for their sharable libraries? In /usr/lib, etc., > everywhere except the separate tree where it's supposed to look. So what > happens? I run a configuration script that still had the test program in > it... it built, linked, and run. It dynamically binds to a Gnome 1.4 > library instead of a 2.0 library. And the test script caught the error! > LD_LIBRARY_PATH needed to be set; it wasn't. > > I should write bug reports for all those Gnome library packages, and > maybe those guys'll convince you they were wrong. But that takes time. If the GNOME team believed in the need for this then they would provide the same m4 macros for all of their libraries. > > Please try to > > > > a) Fix problems rather than fix things which are not broken. > > > The fact that the package wasn't complete is a problem. But it now has > an m4 script that I can include in my other packages. It's now usable. > > I have 3 packages that use mysqlcppapi: if the configuration code's > wrong, I don't want to open three separate configure.in files -- I want > to fix one .m4 and have them all continue include it. I can't help you > wrt the other Gnome packagers: they must enjoy hunting down insideous > bugs introduced by copy/paste errors. > > > b) Submit smaller, more focused patches so that they can be > > > > more easily approved. > > That requires smaller, more focused bugs, I find. Patches should be > atomical: what is sent in all has to work together -- you can't send 2 > or 3 smaller patches, because the intermediate versions in the > repository will not compile. So you wait for them to be applied before generating a new patch. But in this case, I don't believe that all of the changes were interdependent. Note that, at this, point, the patch cannnot be applied. Please generate a new patch based on my decisions above. > 7. Things to consider: > > We're creating maintenance issues by hardcoding the library version in > mysqlcppapi/Makefile.am > > E.g., > > 20: > lib_LTLIBRARIES= libmysqlcppapi-1.9.la > Half of me is remiss to make that "libmysqlcppapi-$(tuplet_version).la", > insofar as the code is made slightly less readable. But when you do want > to rename the library libmysqlcppapi-2.0.la, I'd like a single variable > to change, and have everything fall in-line after an autogen.sh.. Yes. I believe I did this because a previous version of automake or autoconf didn't allow us to use variable names inside variable names. But maybe it works now - we just need a _different_ variable for that part of the name. -- Murray Cumming mu...@us... www.murrayc.com |
From: Bryan W. H. <bwh...@ea...> - 2002-11-02 22:48:50
|
Murray, ChangeLog changes sent up, with autoconfiscate changes. I have yet to find a reasonable manner to determine if your STL has the new-style headers, implements them in namespace std::, and you have a robust enough compiler to use same. Problem I see is that there is no "stock" method of identifying the Standard Library, e.g., a '#define' token. Browsing through STLPORT informs me that they are in the same position. I have no desire to see what VC 7 has in store for me... Am I the only one incredulous that these guys are installing gcc-3.2 patches for MySql++ when they don't even HAVE gcc-3.2? -- ____ .:. ____ Bryan W. Headley - bwh...@ea... |
From: Hausmann J. I. <joh...@si...> - 2002-10-30 09:15:41
|
> On Fri, 2002-10-25 at 09:48, Hausmann Johannes IT58 wrote: > > I think it's quite simple to to the changes, just delete > the cast in > > query_results/Result_Store.cc : > > the compiler tells the rest ! > > OK, I think I've corrected that, but I can't be sure until you test it > on your platform. You should see the new cvs code online at > sourceforge > via your web browser (if you can't get through your firewall > with cvs). > And I will release a new version soon too. > I tested it and it works, Thanks for Your help ! The libtool problems will stay my private fun, I think there's no common interest |
From: <mu...@t-...> - 2002-10-24 21:00:17
|
On Thu, 2002-10-24 at 20:57, Bryan W. Headley wrote: > Murray, > > It looks like the mysqlcppapi-2.0 package is not complete. Things I > don't see (but ought to) include, > > o $lib/mysqlcppapi-2.0/include/mysqlcppapiconfig.h (which would have > MAJOR, MINOR, MICRO versions) Feel free to provide a patch for that kind of thing. I thought we had it already. > o an m4 macro to install in /usr/share/aclocal so other packages can > autoconfiscate with us mysqlcppapi2 uses pkg-config instead. > I'm in the middle of adapting the gtk-2.0.m4 macro to our use. It of > course is so concerned that GTK_MINOR, etc., matches what pkgconfig > thinks. I personally am more concerned that a test program can > compile/link a program that instantiates a mysqlcppapi::Connection object. > > The former sounds really anal, but it saved my tush on Windows 2000 when > somebody dropped a glib-1.3.dll in \Winnt\system32 when I was trying to > build a gtk+-2.0.6. pkgconfig was happy, but the test program kept > linking with the glib-1.3 dll at runtime. Man, I really love cygwin & > mingw :-) The GTK+ and GNOME libraries don't have this problem, and don't use the old-style .m4 files so I don't see why we should. GTK+ has one for compatibility but most people don't use it anymore. > > To consider: mysqlcppapi.h ought not to have an extension, like the rest > of C++ std library. mysqlcppapi is not part of the C++ std library. mu...@us... www.murrayc.com |
From: Bryan W. H. <bwh...@ea...> - 2002-10-24 18:54:23
|
Murray, It looks like the mysqlcppapi-2.0 package is not complete. Things I don't see (but ought to) include, o $lib/mysqlcppapi-2.0/include/mysqlcppapiconfig.h (which would have MAJOR, MINOR, MICRO versions) o an m4 macro to install in /usr/share/aclocal so other packages can autoconfiscate with us I'm in the middle of adapting the gtk-2.0.m4 macro to our use. It of course is so concerned that GTK_MINOR, etc., matches what pkgconfig thinks. I personally am more concerned that a test program can compile/link a program that instantiates a mysqlcppapi::Connection object. The former sounds really anal, but it saved my tush on Windows 2000 when somebody dropped a glib-1.3.dll in \Winnt\system32 when I was trying to build a gtk+-2.0.6. pkgconfig was happy, but the test program kept linking with the glib-1.3 dll at runtime. Man, I really love cygwin & mingw :-) To consider: mysqlcppapi.h ought not to have an extension, like the rest of C++ std library. The rest of the headers can have an extension as they like. (I hate .h as that infers C; I'm starting to get used to using .hh. .hpp and .hxx infers Zortech/MSDOS days to me) -- ____ .:. ____ Bryan W. Headley - bwh...@ea... |
From: Hausmann J. I. <joh...@si...> - 2002-10-24 09:48:53
|
Hello , there ist a bug in Result_store.cc (mysqlcppapi-1.9.0)=20 The Problem with the wrong cast comes from the mysql.h - header ,=20 here mysql_fetch_lengths is declared as : ( maybe changed with version = .33 ? )=20 mysql.h: unsigned long * STDCALL = mysql_fetch_lengths(MYSQL_RES *result);=20 therefore it gives the address of an array of long !!=20 In Result_Store.cc the return value ist cast to unsigned int * , this doesn't matter on 32-Bit system but on 64-Bit systems like Compaq = Tru64 its a problem ! Also the constructor Row::Row(MYSQL_ROW d, const Result_Use *r, = unsigned long *jj)=20 has to be changed ! Another question, has someone ported mysqlcppapi to Compaqs CXX, I would be happy about a = good libtool configuration to get support for the cxx_repository ! ______________________________________________________ Mit freundlichen G r=FC=DFen / Best regards SIEMENS Siemens AG Power Generation IT58, Application Development Freyeslebenstr. 1 91058 Erlangen / GERMANY Johannes Hausmann mailto:Joh...@si... Fon +49 9131 18 85764 Fax +49 9131 18 4836 ______________________________________________________ |