Bookstore

Recent

Author Topic: Anyone using ElevateDB?  (Read 832 times)

dpremus

  • New Member
  • *
  • Posts: 23
Anyone using ElevateDB?
« on: February 10, 2020, 08:36:24 am »
I'm using NexusDB with Delphi without any problem for the last 15 years, but there is no Linux and Lazarus version of NexusDB and this is the reason why I'm thinking about moving to ElevateDB. (https://www.elevatesoft.com/)

So If anyone using ElevateDB I would like to know how stable and reliable is ElevateDB?

Regards

Danijel

Thaddy

  • Hero Member
  • *****
  • Posts: 9807
Re: Anyone using ElevateDB?
« Reply #1 on: February 10, 2020, 08:52:47 am »
Is there a specific reason to want to use a commercial product? There are many opensource solutions with equal or better features and stability. (implied by user scale)
Note that the source editions - according to their website also advertise Lazarus as a target (probably only windows), so contact the nexusdb and ElevatDb service desk.
« Last Edit: February 10, 2020, 09:06:44 am by Thaddy »
I am more like donkey than shrek

dpremus

  • New Member
  • *
  • Posts: 23
Re: Anyone using ElevateDB?
« Reply #2 on: February 10, 2020, 06:24:47 pm »
Is there a specific reason to want to use a commercial product? There are many opensource solutions with equal or better features and stability. (implied by user scale)
Note that the source editions - according to their website also advertise Lazarus as a target (probably only windows), so contact the nexusdb and ElevatDb service desk.

I always prefer open source solutions, but I didn't find the features that I need.

MariaDB and PostgreSQL are great databases but to heavy for my needs.
SQLite is not client-server, so it seems that FirebridSQL is closest to NexusDB regarding the size and features.

The reason why I chose NexusDB instead of Firebird 15 years ago is that NeuxsDB support cross-database query,
"select into #table" syntax with (#context-local, ##session-local and ###global temp. tables) that is great for reporting,
you can mix memory tables with ordinary tables and everything is written in object pascal.

In the meantime, FirebirdSQL has progressed but still doesn't support those features.
Seems that I will go with Firebird.

If you know any other similar relational open-source database, I would like to test.

Thaddy

  • Hero Member
  • *****
  • Posts: 9807
Re: Anyone using ElevateDB?
« Reply #3 on: February 10, 2020, 08:11:58 pm »
[The reason why I chose NexusDB instead of Firebird 15 years ago is that NeuxsDB support cross-database query,
"select into #table" syntax with (#context-local, ##session-local and ###global temp. tables) that is great for reporting,
Well Firebird supports external tables. That feature comes close to what you want.
Note that you are then making another niche choice, although an open source one.
« Last Edit: February 10, 2020, 08:17:37 pm by Thaddy »
I am more like donkey than shrek

dpremus

  • New Member
  • *
  • Posts: 23
Re: Anyone using ElevateDB?
« Reply #4 on: February 10, 2020, 09:04:39 pm »
[The reason why I chose NexusDB instead of Firebird 15 years ago is that NeuxsDB support cross-database query,
"select into #table" syntax with (#context-local, ##session-local and ###global temp. tables) that is great for reporting,
Well Firebird supports external tables. That feature comes close to what you want.
Note that you are then making another niche choice, although an open source one.


Firebird External tables are more suitable for logs. You can only "insert", "select" and "drop" from Firebird external tables.
The current Firebird version (3.0) only supports global temporary tables. You can create global temporary tables with create table syntax.


Here is an example of how you can use a break some SQL to a few simpler SQL and use the result of the previous SQL in the next SQL.
These temporary tables are only visible during the transaction and in a multiuser environment, you can be sure that nobody will destroy
your tables. If two users execute the same report at the same time and you have global tables then the second user will override temporary tables
of the first user.


Code: Pascal  [Select]
  1.  q.Sql.Text := 'Select SubString(VrTran from 1 for 8)  as Dat, t.Opis as Terminal, l.IdGrupa' +
  2.       ' into #muplog' +
  3.       ' from MupLog as l, Term as t' +
  4.       ' where l.Term = t.RbrTerm and VrTran > :xTmBeg and VrTran <= :xTmEnd;' +
  5.  
  6.     ' Select Dat, Terminal, IdGrupa, Count(*) as BrDiz ' +
  7.       ' into #muplog2' +
  8.       ' from #muplog group by Dat, Terminal, IdGrupa;' +
  9.  
  10.     ' Select  l.*, g.Caption as Razlog' +
  11.       ' from #muplog2 as l left outer join MupGrp AS g ON l.IDGrupa = g.MUPRBR' +
  12.       ' order by Dat;';
  13.  
  14.  
  15.   q.Params.ParamByName('xtmBeg').AsDateTime:= sTmBeg;
  16.   q.Params.ParamByName('xtmEnd').AsDateTime := sTmEnd;
  17.   q.Open;


some other database use "create table as ..." syntax for this.

But this feature is "nice to have" but is not crucial.










vfclists

  • Hero Member
  • *****
  • Posts: 827
    • HowTos Considered Harmful?
Re: Anyone using ElevateDB?
« Reply #5 on: February 10, 2020, 11:08:16 pm »
[The reason why I chose NexusDB instead of Firebird 15 years ago is that NeuxsDB support cross-database query,
"select into #table" syntax with (#context-local, ##session-local and ###global temp. tables) that is great for reporting,
Well Firebird supports external tables. That feature comes close to what you want.
Note that you are then making another niche choice, although an open source one.

I don't think PostgreSQL is that heavy. You can tune it to use minimal resources.

It is something PostgresSQL has always been good at.

Giving that hardware capabilities have greatly improved over the years the resource usage won't impact modern machines unless it is being deployed on very old hardware.

I was using Postgres 8 on VMs with 192Mb Ram some years ago and I never had problems.
Windows - Lazarus 1.0.8/FPC 2.6.0
Linux - Lazarus 1.4.4 /FPC 2.6.4

PeterEvans

  • New member
  • *
  • Posts: 9
Re: Anyone using ElevateDB?
« Reply #6 on: February 13, 2020, 04:28:32 am »
With regard to ElevateDB.
It is my understanding that ElevateDB will work with FreePascal on Windows.
ElevateDB works with Delphi on Windows. It also works with Mac but I am not sure if this is with FreePascal.
I do know there is a Mac version as a recent Build fixed some problem or other in the Mac version.

Elevate Software who make ElevateDB, plan on a Linux version. This is for Delphi creating programs
for Linux, so this will be command line not GUI.

The priority for Elevate Software is another product called ElevateWeb. They plan on bringing out Version 3 in
Beta. Only when that Beta version is released will they be working on the Linux version of ElevateDB.

Now, here is my conjecture. When they do release ElevateDB, Linux version, for Delphi command line, how much
extra effort will there be in releasing ElevateDB, Linux version, as a GUI, for FreePascal? Not much I would expect.

dpremus

  • New Member
  • *
  • Posts: 23
Re: Anyone using ElevateDB?
« Reply #7 on: February 25, 2020, 11:16:41 am »
Thank you all for your replies.
After lots of testing, I decided to go with FirebridSQL.

I made tests on win7/10, Linux, and Linux on Raspberry PI and decide to use IBX.
https://www.mwasoftware.co.uk/ibx

I was testing with DevArt IBDAC too, but IBDAC doesn't compile under ARM Linux on Raspberry Pi.

Seems the only thing that I need to be aware of with Firebird is
how to handle transactions. In Firebird even the "Select" statement is a transaction.

PeterEvans

  • New member
  • *
  • Posts: 9
Re: Anyone using ElevateDB?
« Reply #8 on: February 26, 2020, 05:53:47 am »
According to the website of Elevate Software: ElevateWebBuilder 3 Beta was nominally released on 24 February 2020.

This should mean that the step of interest to me, namely the Linux side of ElevateDB, should come out next. At least I hope so.

teos

  • Full Member
  • ***
  • Posts: 147
Re: Anyone using ElevateDB?
« Reply #9 on: March 08, 2020, 08:54:14 pm »
Thank you all for your replies.
After lots of testing, I decided to go with FirebridSQL.

I made tests on win7/10, Linux, and Linux on Raspberry PI and decide to use IBX.
https://www.mwasoftware.co.uk/ibx

I was testing with DevArt IBDAC too, but IBDAC doesn't compile under ARM Linux on Raspberry Pi.

Seems the only thing that I need to be aware of with Firebird is
how to handle transactions. In Firebird even the "Select" statement is a transaction.

I use IBX with Delphi on a daily basis but I would recommend SQLDB in Lazarus. Not only because they have the clientdataset included. And I supposed that the amount of SQLDB users is a lot more then IBX.