[SqueakDBX] Problems at first go on SqueakDBX

Herbert König herbertkoenig at gmx.net
Sat Sep 26 20:48:57 UTC 2009

Hi Mariano,

this is long but I'm mostly fine so if you have no time, only read the
last three paragraphs.

MMP> Yeah hahaha. As we talked at ESUG, SqueakDBX was not ever
MMP> tested with Squeak 3.8.2. And we never tested in MySQL 4, but 5. 
MMP> But I will try to help you.

:-)) yeah and thanks! I might port the Squeak apps to 3.10 on my own.
I guess they should run with nearly no changes. But porting about 20
Delphi 5 Apps where the programmer is no more available is quite a
different beast :-)

MMP> This is wrong. You must do a open first. So, you can do

This is from http://wiki.squeak.org/squeak/6067 and I think this is
right. Because open before connect gives me a debugger:

SqueakDBXError: SqueakDBX: You are not connected. Try connecting

MMP> I think you are referring to libmysql.dll here, not libmysqlbackend.dll

Doh, Blush!! Thanks for reading my error messages for me.

Ok I downloaded mysql5.0 community edition, unzipped it and got
libmysql.dll of that package (after trying several versions I already
found on my box).

Now connect works and open gives a recoverable error, see debug3.png.

Continuing sets connected and open of the DBX connection to true.
Seems now I'm able to follow your further advice.

MMP> So I renamed libmysqlbackend-1.dll to libmysqlbackend.dll and retried.

MMP> This is weird. libmysqlbackend-1.dll should work. Which
MMP> Windows are you using ? I will try to reproduce it.
MMP> But I have  libmysqlbackend-1.dll and everything works ok. 

XP Service Pack 3, automatic updates enabled. I believe this is a
secondary effect. Let's not spend time on this until the first problem
is solved. I already renamed it back.

MMP> This means that opendbx dll cannot find the libmysqlbackend dll 
MMP> They must be findable by the OS

I will remember that but before using path or system32 I will try to
confine everything to one single folder. Because the Delphi
applications will need their versions of libmysql.dll, and my mysqlcc
happily uses a third version.

MMP> What I would do is to let  libmysqlbackend-1.dll AND
MMP> libmysqlbackend.dll  in a place where it is findable, not only by
MMP> Squeak but also for the OS.
MMP> Because squeak will find opendbx dll but then, this dll will find the libmysqlbackend

MMP> http://wiki.squeak.org/squeak/6099
thanks. Optimists always put debugging information at the end of the
docs. I do so myself as not to scare away interested people :-))

Friendly Transcript is logging now.

MMP> I will ask Norbert (OpenDBX author) to see if he knows something about this.

Norbert sounds German so if we get stuck, maybe I go to the opendbx
list myself.

MMP> So do you see a chance to get this configuration work? 

MMP> Yes. We will investigate and work together. No panic :)

Thanks! and I promise not to panic :-))

MMP> Yes. Now I want to understand: You must have:
I understand and I will follow it exactly if I get stuck again.

MMP> - libmysqlbackend-1.dll AND libmysqlbackend.dll
I hope I get away without the rename after I have the new

MMP> - libopendbx-1.dll
MMP> - MySQL client libraries  (in my case: C:\MySQL\bin\ )

MMP> All of them must be findable by the OS: I won't tell you to
MMP> put it in c:/windows/system32 or in $PATH, but do something :)

Yes Sir :-)))

MMP> Enable logging.


MMP> So, after having all of that, what happens if you evaluate:

See debug3. But there are no nasty messages in the Transcript and the
mysqladmin sees the incoming connection and the reply from mysql.

And I can do "conn close. conn disconnect." with proper results in the

Following the Wiki, after connect and open I sent:

result := conn execute: 'select * from Einzelpruefungen where pruefer = "A. Kreizer"'.

which gave me an DBXResult set and reasonable messages in Transcript.

result columnCount does work, rowsAffected gives a DNU (both from

result nextRow explore gives a very reasonable DBXRow, see png.

result columnDescriptions explore gives DBXTypeNotSupported (see png)
for timestamp and text  (see mysqlcc.png).

BTW there was a typo on the Wiki the last "s" in columnDescriptions
was missing.

So basically it seems I'm fine, for the next nextRow gives a
reasonable next row.

Let me suggest, we only solve the "unknown system variable" problem
from debug3.png and maybe find an explanation for DBXTypeNotSupported.
Then I'll write up a text on what is needed to run SqueakDBX with
mysql4 (I believe there is no 3.8.2 related problem). I go through the
Wiki examples and report problems here and correct typos as I
encounter them.

From my own job I tend to assume documentation errors if the user
blunders (me in not copying libmysql.dll). I never compiled OpenDBX
but with your permission I will clarify the single sentence about
"installing your client library" in
http://wiki.squeak.org/squeak/6129 for end users like me.

And if you don't mind I will also go over the descriptions about
Windows because as I said on my system I have one libmysql.dll in my
mysql folder (for mysqladmin) and two different ones for SqueakDBX and
mysqlcc. Both suggestions (path and system32) give me a headache and I
vastly prefer a "could not find libmysql.dll" over the errors
occurring if the system finds the wrong dll.

Thanks a lot for your help,

Herbert                            mailto:herbertkoenig at gmx.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: debug3.png
Type: image/png
Size: 51530 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeakdbx/attachments/20090926/95af7a63/debug3-0001.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DBXRow.png
Type: image/png
Size: 7515 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeakdbx/attachments/20090926/95af7a63/DBXRow-0001.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: columnDescriptions.png
Type: image/png
Size: 10709 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeakdbx/attachments/20090926/95af7a63/columnDescriptions-0001.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mysqlcc.PNG
Type: image/png
Size: 10019 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeakdbx/attachments/20090926/95af7a63/mysqlcc-0001.png

More information about the SqueakDBX mailing list