From: Date: April 29 2002 11:39am Subject: Re: Don't use MySQL++ ! (was: Problem with mysql++ patch) List-Archive: http://lists.mysql.com/plusplus/1069 Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On Sun, 28 Apr 2002, Andreas Krueger wrote: > c) It doesn't seem to be sufficiently stable and tested > ------------------------------------------------------- > -> Installing it and getting it running seems to be > VERY difficult (not only but also on Windows): > my experiences, yours and those of many others. > -> It works only with a small set of compilers - why? > OK, it takes some time to learn plattform-independent C++, > but up to now, I got ALL of my projects compiled on > VisualC++, GCC and HP-Unix C++! More than 10000 lines of code. > -> e.g.: (At least on Windows) the SSQLS are said > (by lazyfox who did the porting to VC++ 6) > to be buggy or not-functioning. > But that is not mentioned anywhere in the manual! i have said this over and over again, but people appear not to be listening and twisting my words: the main version of mysql++ (1.7.9) works fine under the unix platforms as far as i know. SSQLS, all template functions, etc, are all working correctly under it! the mysql++ version which i ported to VC++ (1.7.1) has, on the other hand, a number of bugs. these bugs are purely caused by the fact that VC++ can't handle the amount of templates in mysql++. this is purely a fault of microsoft's compiler which doesn't adhere to ANSI C++ standards, not of the programmers of mysql++. these bugs can only be solved by rewriting all these templates, which is not a simple task. here is a list of bugs that are known to me IN THE VISUAL C++ VERSION ONLY: - the SSQLS are working, but only if you use relatively small structs (smaller than 16 i believe) and use vectors for storing the data. otherwise VC++ bugs out and gives an internal compiler error. - the auto-quoting system doesn't work when doing queries (also due to template problems). this can be worked around by just adding quotes manually to your query/data strings. - VC++ has support for longlongs, but no ANSI functions that support this type (like strtoll), so this type isn't really supported under VC++ furthermore, i want to say that i'm not officially connected to MySQL AB. i'm just somebody who did a C++ project under VC++ and needed mysql support. i found out about mysql++, which was just what i needed. but to my disappointment only unix and borland platforms were supported. however, instead of whining to the programmers about this, i ported it to VC++ myself, originally only for use with my own project. because i only needed its basic functionality i didn't really care to test its more complex functions (the basic functionality is really working quite fine). later i thought that there might be more people who wanted a VC++ version of MySQL++, so i posted my port to the maintainer of mysql++ who put the package on the website. now, since i finished my project, i'm not really doing anything with mysql++ anymore, which means that i'm not going to fix the bugs in the VC++ version unless somebody employs me for it. so, basically, if you want a VC++ version of mysql++ without these bugs, please feel free to just take the code and fix it. it isn't open-source for nothing after all. however, what i can't stand is that somebody, who encountered these bugs in my CONTRIBUTED VC++ version, goes screaming around that mysql++ is a completely bad product because of that. if you want to use the C version, by all means do that. if you want to use the VC++ version without bugs, go contribute a new one! lazyfox.