Database components lazarus / 16-Databases ---------------------------------------------------------------------- Giu · 2012-02-28 14:24 I see there are different libs to access databases. SQLDb, Zeos, IB and so on. There are a strong reason to use, for example, Zeos, instead the included and supported SQLdb? Regards. ---------------------------------------------------------------------- fredycc · 2012-02-28 14:47 I use Zeos, the main reason for me is support events for firebird  Regards ---------------------------------------------------------------------- goodname · 2012-02-28 15:17 Zeos is a mature lib, widely used, and will do the job. SQLDB is a younger lib and will do the job. Not sure how widely used it is but I use it and it works well. The developers of SQLDB are around on this forum and have answered questions that I have had. ---------------------------------------------------------------------- Giu · 2012-02-28 15:30 Quote from: fredycc on February 28, 2012, 03:47:59 pmI use Zeos, the main reason for me is support events for firebird  Regards I tried to use it in the past, but I remember incompatibility with 64 bits, and not too much updates. Zeos 7 is in beta since I remember. ---------------------------------------------------------------------- joseme · 2012-02-28 15:59 At my company we made a test for Zeos, UIB, SQLdb, etc. We found that SQLdb is very fast and reliable, UIB is also fast but it seems to be little activity in its project. Zeos is slow for remote TCP connections. We decided to buy IBDac, and it was an excellent decision. Although the version of Lazarus supported by IBDac is 0.9.30, we have been able to install it on 0.9.31, making small source changes. ---------------------------------------------------------------------- Giu · 2012-02-28 19:13 For the moment we want to start evaluating how to afford all our projects with Lazarus. One of them, We want to do some SaaS development, but we don't know how to focus it with Laz. I suppose SQLdb is enough for the moment. ---------------------------------------------------------------------- fredycc · 2012-02-29 17:26 If you need great set of database components including 64 bit support, Win & Linux, check anyDac: http://www.da-soft.com/anydac/ Including: Delphi Win32, Win64 C++Builder Win32 FPC / Lazarus Win32, Win64, Linux32, Linux64 Mac OS X, iOS - coming later ---------------------------------------------------------------------- JD · 2012-02-29 23:15 Quote from: joseme on February 28, 2012, 04:59:58 pmAt my company we made a test for Zeos, UIB, SQLdb, etc. We found that SQLdb is very fast and reliable, UIB is also fast but it seems to be little activity in its project. Zeos is slow for remote TCP connections. We decided to buy IBDac, and it was an excellent decision. Although the version of Lazarus supported by IBDac is 0.9.30, we have been able to install it on 0.9.31, making small source changes. Very interesting what you say about Zeos. I have a database app using Zeos over remote TCP connections and it is indeed slow but since it the only one I use, I did not have anything to compare it with. I'm thinking of trying IBX instead. Have you tried it? If you have, how does it compare with the others? ---------------------------------------------------------------------- joseme · 2012-03-01 12:05 No, we have not tried IBX, it looks very promising. ---------------------------------------------------------------------- JD · 2012-03-01 12:58 Quote from: joseme on March 01, 2012, 01:05:11 pmNo, we have not tried IBX, it looks very promising. Yes it does. If you get round to testing it, please let us know your results. By the way, in your tests, how does SQLdb compare with Zeos for remote TCP connections? ---------------------------------------------------------------------- jixian.yang · 2012-03-01 15:32 If there is not storedproc function, to call the API of all of the database is fast, and to simulate the client data of tcp connection is faster. ---------------------------------------------------------------------- chrnobel · 2012-03-01 22:32 Quote from: Giuseppe Luigi on February 28, 2012, 03:24:31 pmThere are a strong reason to use, for example, Zeos, instead the included and supported SQLdb? A word of advice. I have been using Zeos a lot, and am in general happy with it, when used with MySQL. However when using with SQLite there is a tendency to misinterpret fieldtypes, and images in BLOB fields are corrupted, so they can not be read by other programs not based on Zeos. So my recommendation is, do not use Zeos with SQLite. ---------------------------------------------------------------------- jixian.yang · 2012-03-02 00:47 Quoteand images in BLOB fields are corrupted, so they can not be read by other programs not based on Zeos. There is no problem on BLOB field with SQLite in Zeos. It is as good as other database. I am using Zeos svn. ---------------------------------------------------------------------- chrnobel · 2012-03-02 07:19 Quote from: jixian.yang on March 02, 2012, 01:47:54 amQuoteand images in BLOB fields are corrupted, so they can not be read by other programs not based on Zeos. There is no problem on BLOB field with SQLite in Zeos. It is as good as other database. I am using Zeos svn. Yes there is! If you save an image in a BLOB field using Zeos, and the try to read the same field with eg. SQLite Manager or using TSQLite3Connection in Lazarus, the image is corrupted. However if stored using TSQLite3Connection there is no problem seeing the image in SQLite Manager and vice versa. Of course if you only connect to the database using Zeos it works, but I consider it at quite a drawback that it then does not work with other database connections. ---------------------------------------------------------------------- marcov · 2012-03-02 09:37 Quote from: chrnobel on March 02, 2012, 08:19:46 amQuote from: jixian.yang on March 02, 2012, 01:47:54 amQuoteand images in BLOB fields are corrupted, so they can not be read by other programs not based on Zeos. There is no problem on BLOB field with SQLite in Zeos. It is as good as other database. I am using Zeos svn. Yes there is! If you save an image in a BLOB field using Zeos, and the try to read the same field with eg. SQLite Manager or using TSQLite3Connection in Lazarus, the image is corrupted. An image in a blob or a graphic? Those are different things, and when inspecting various sqlite using programs, they all dealt with this differently. IIRC there are some "bug"reports about this in mantis for sqldb too. QuoteHowever if stored using TSQLite3Connection there is no problem seeing the image in SQLite Manager and vice versa. That doesn't meant those are correct. Might be a matter of matching bugs :_)