[Mysql-cocoa-users] Re: SMySQL framework
Brought to you by:
sergecohen
|
From: Serge C. <ser...@us...> - 2003-02-26 10:13:55
|
Dear Lorenz Sorry not to have answered earlier. I'll try to give you as much info=20 as I can: For the SSL issue: I'm afraid I can not answer the question for sure. What I can tell you=20= is that on Jaguar (10.2.3 indeed) I managed to compile MySQL with SSL=20 support (including the libmysqlclient library onn which I rely to make=20= connection to MySQL servers). This means that even if it is not already=20= possible to use the framework as is for connecting to MySQL using SSL,=20= it should not be too difficult to get to this point. For the answer of how to manage to do it, I can suggest to ways: 1. Look the documentation of MySQL (client library) and check what is=20= required to have a SSL connection. Maybe you need to set a particular=20 flag from the MYSQL pointer. Than you can do it by default (changing=20 default in the source of the framework). 2. You can also add a method to MCPConnection to be able to set this=20= option at runtime. 3. If you can still wait a month (or maybe a bit more), you can wait=20= for me to have the time to make it. I need this time because I have a=20 lot of work now and I also need to set a SSL aware MySQL server to test=20= the new sources... which will take a bit of time for me because I've=20 never done anything similar alreasdy (basically the time to read doc,=20 reset properly the setting of my testing server, and then ONLY I can=20 modify the MCPConnection...). By the way, if you chose sol. 2. I'm (obviously) interested by the=20 modification you make to MCPConnection for further inclusion in the=20 framework (more likely as the basis of new addition to the framework). For the table type: I don't have precise answer here neither... BUT I have InnoDB running=20 on my mac, and event if so far I've never used through the framework,=20 it should not be to hard for me to test it. SO I'll try to give you a=20 documented answer in the coming two weeks (still I don't foresee any=20 reasons for that 'incompatibility', ie. my guess would be that the=20 problem does not come from the framework). For the last question I'm not sure to get it right. Let me try to=20 rephrase it (and tell if I'm wrong): When you retrieve a BLOB (or TEXT) from the DB it comes as a NSData=20 object. You want this NSData object to be (eventualy) edited as text by=20= the user. The problem you are facing is that if you transform this=20 NSData to a NSString and convert it back to a NSData later the two=20 NSData are different (so if your NSData correspond to a binary format,=20= the data gets corrupted). If this is the problem you are facing... I'll have a look to see what=20 can we do about it. The main problem I'm facing with TEXT and BLOB=20 column in a table is that one can not discriminate between the two (or=20= at least I don't know how to do it) without issuing a 'DESCRIBE'=20 command on the table (they give the same type in the MYSQL_RES field=20 types). Indeed after seeing the framework again I think the normal solution=20 would be not to use prepareBinaryData: but prepareString: instead. ie=20 once your NSData has been transformed into a string (By the way you can=20= use the method stringWithText: for that), you don't want to use=20 prepareBinaryData on it anymore. Sorry for not answering your question (still I hope you get some=20 clues), thank you very much for your feed back, and I'd hope we will=20 continue this thread whenever we have time (meaning: sorry in advance=20 if I take some time to answer to your next mail). Serge. PS: As you see, I posted this also to the user mailing list. Please I'd=20= like that all these mails go there instead of directly to me. I AM=20 READING the list, and I'm not the only one (from the number of people=20 inscribed there). I'm sure some of the few persons there might have=20 already experienced some of your problems and can help you (and me at=20 the same time). PPS: I'd be interested to know which version of the framework you are=20 using, and on what version of your own software you already are. PPPS: last remark: If the problem is the very (very) low traffic on the=20= mailing list, just consider that the traffic has to start on some=20 time... PPPPS: Sorry one more: remind me of linking to your project from the=20 framework page if it is not already done. Le mercredi, 19 f=E9v 2003, =E0 10:13 Europe/Amsterdam, Lorenz Textor a=20= =E9crit : > Hi Serge, > > As I wrote to you some months ago I'm developing an application called=20= > CocoaMySQL using your framework to connect to the MySQL server (see=20 > cocoamysql.sourceforge.net). Thanks again for coding this great=20 > framework and for making it open-source! > > I have some questions regarding the framework: > - Many persons asked me if it is possible to connect securely to the=20= > MySQL server using SSL. I looked a bit at the MySQL C API and think=20 > there is an option to do it. Would it be difficult to change the=20 > framework so that secure connections are possible? Or is it possible=20= > with the current version yet? > - Some people wrote me they have problems using other table types=20 > (InnoDB for example). Can this be a problem of the framework? > - How can I represent a BLOB field (NSData object) as a string that=20 > can be edited and saved to the database afterwards? I don't want the=20= > string to be escaped, so I can use prepareBinaryData: only after=20 > editing. Now I'm using something like > [[NSString alloc] initWithData:theData encoding:[mySQLConnection=20= > encoding]]; > In most cases this works, but with binary data (for example images)=20 > the data gets corrupted. > > Thank you for your help! > Best Regards, > Lorenz > > > ---------------------------------------------------- Serge Cohen GPG Key ID: Non-Available for the moment. ---------------------------------------------------- |