Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 1 of 1 total
Thread On-the-fly database restructure
Tue, Dec 21 2010 8:30 AMPermanent Link

Lucian

Hi guys,

I've been moaning and groaning a long time after DBISAM's AlterTable feature. This method alone allowed me to write an entire engine dedicated to on-fly database restructure which I successfully used over the years in many d/b apps. And than it came ElevateDB and it seemed all this work was lost. But that is no longer true.

About 2 weeks ago I finalized a product which does for me almost the same thing as my old engine. I called it "ezScript Engine for ElevateDB". This product basically takes an xml script and uses it to create/alter an ElevateDB database. The engine gets compiled in the application and the xml script can be linked as a resource or read from a file.

What's the script engine doing for me? It allows me to:

- create a new script;
- reverse-engineer a database to build its xml counterpart script;
- easy maintain the script using a wizard application;
- on-fly restructures a database (you probably know how much a database changes especially in the early stages of a new application);
- the wizard also automatically can write a wrapper for each table defined in the script. The wrapper is split into 2 objects: a parent class that I don't need to edit and a descendant that I can edit (for example to add code for CalcFields event). This way, the parent object can be automatically maintained, while I can still bring changes to the wrapper using the descendant class;
- use datatype aliases throughout the script. Thus I can define a DOM_PHONE datatype alias and use it in all tables that handle a phone/fax/cell field. When making a change to the alias, all fields using it are automatically updated, thus I don't have to search them
- probably many other things Smile

I currently use the ezScript Engine for ElevateDB on a daily basis in 3 other apps (the wizard itself, an application than maintains my customers and orders database and a SourceSafe-like application that works I believe a lot better then Microsoft’s Visual SourceSafe. All this means that if I find bugs they get fixed rather sooner than later. At this time there are no known huge problems and I decided to release the product.

If you think that ezScript can help you in your work, give it a shot. You can download a demo and the wizard and play with them. If you like it and it suits your needs, well, the script engine core code comes at about 45€. At this price you get (1) the library source code without the script wizard sources, (2) 2yrs free upgrades (minor updates, bug fixes) and (3) discounted major upgrade. For additionally 20€ you get wizard's sources.

If you decide to play with the demo and the wizard, you know the drill: please use it with caution, don't use it against production databases, make backups before applying a restructure to a database, etc. Please read carefully the readme file that comes with the product. Also read carefully the license file, which mostly states the same as other software licenses: if you break things, it will be your responsibility - not mine.

You can visit and get ezScript from my web-site:
http://www.ez-delphi.com/

***

I quitted my daily job a year ago because I decided to pay my bills from whatever I work in my "garage". This means I'm online most of the time and support for fixing bugs and extending capabilities with new features certainly exists.

All the work here is done with Delphi 2010, I see no reason why it would not compile on Delphi XE and most likely ezScript compiles backward down-to Delphi 2007 (however I am not using these editions on a daily basis, so I can't tell for sure). I use ElevateDB 2.04-b4 Unicode edition and am still on XP Pro. I test stuff against XP and Windows 7 machines.

--
Have fun,
Lucian
Image