Donnerstag, 24. April 2008

Blackfish SQL ....

Why should a developer choose Blackfish SQL instead of other databases for a Client/Server-Project with Rad-Studio 2007??

I made yesterday on the Delphi CodeCamp in Frankfurt, Germany a training about Blackfish SQL and thought that I’ll blog about one of my favourite database. Every developer with RAD Studio 2007 has the Blackfish SQL – server on the machine and the service is normaly active… but many don’t know details about BF….

Blackfish SQL for the .net-Framework and for the Java platform was introduced with the latest version of Delphi ehm Rad Studio 2007. The developer can think now, well, this is a complete new database with release number 1.0 …

This is wrong because Blackfish SQL is the successor of the well-known database JDataStore in the Java-area from Borland/CodeGear. The latest number of JDataStore was 7 and with increment we’re on Version 8 with Blackfish SQL for the Java platform. For the .net framework we’re IMO on the Version 8, too. The explanation is that the kernel of BF is the same like for Java because the guys at CodeGear had translated the Java code into C #code and not write the database from scratch with a “Java to C# translator” http://blogs.codegear.com/steveshaughnessy/2007/09/06/38776

This is important to know because everyone has normally problems to use any application or database with the version number 1.0.

Before we go into more details of BF it’s important to define the position in the database-area. We have normally four areas in the database-market:

  • Enterprise
  • Standard
  • Desktop
  • Embedded

And here I see one of the advantages of BF: You can use it in Standard, Desktop and Embedded.

My biggest BF - database in a production environment is in the meantime (running since last summer) 1,2 GB big, there are a lot of NDR-Files in VarBinary-fields stored (NDR-files are created by Nevrona Rave Reports and they included the complete generated report and from this NDR-file you can render to PDF, HTML and printing to printer). My other project isn't finished but use the BF-database to store and read Flash-movies (more about this exciting project in some weeks here!).

The Enterprise-area isn’t so important because we have only 3 players and it would be very naïve to fight in the market against the real big players like Oracle, IBM, Sybase or Teradata. I haven’t made for myself the decision if MS-SQL is ready for the Enterprise-market…but with version 2005 the opened the door of this area.


Back to Blackfish SQL…


With BF you can use one database on all three areas and that is a great advantage because you haven’t any limitations’ of the database. BF supports all the three areas. Normally a database have one or two areas and the other areas perhaps are supported but with reservation. With Blackfish there are no reservations and you using the full power of every area!


The database is fully SQL-92 compliant with supporting all four isolation levels specified by the ANSI/ISO SQL (SQL/92) standards.


OS

Support the .net-framework and the Java platform. The datafiles of BF are binary-compatible and with this information it’s clear that you can copy (e.g. with FTP) the database between the two frameworks…


Programming


This is IMO the one of the biggest advantage: You can write all your database-objects like Trigger and StoreProcedures with your IDE, meaning with Delphi.net or other IDE’s in the .net-Framework and JBuilder or other IDE for the Java platform. You must only create a .net-Package and this assembly is to register in the Blackfish-database with “create method”. And now you can extend your SQL with Pascal. And compared with the UDF in InterBase it’s more “secure” that on an error not the server-process or the OS will crash…

In one of my next blog's I'll show you some examples of SP and Trigger, created with Delphi.net and running on Blackfish SQL server.


You can connect with ADO.net2 and dbx4 to the database, meaning from every application in your RAD Studio (Win32, VCL.net, IntraWeb, ASP.net,…).


And on the end of my blog the best … With RAD Studio you’ll get not only a developer edition of the database, like InterBase. You get a Blackfish SQL Studio Pro Edition for deployment in any production environment without any runtime-costs…


With the Enterprise / Architect Version of RAD Studio 2007 you have the following restrictions:


5 User / 20 connections

2 GB database-size

1 CPU (with unlimited cores)


With Pro Edition

1 local user / 4 connections

512 MB database-size

1 CPU (with unlimited cores)


The RAD-Pro developer can now update all the paradox-application to Blackfish SQL and the RAD-Enterprise-developer can create C/S-application on a server with 5 user-connection and 2 GB database-size. If this are limits a problem, you can buy unlimited versions, look on the codegear-page for price-info.

Look into the Developers Guide of Blackfish SQL (it’s on your RAD Studio DVD) and in the Codegear Developer Network. You’ll find some interesting articles like the following:

http://dn.codegear.com/article/36955

http://blogs.codegear.com/steveshaughnessy/2007/09/06/38776

Montag, 14. April 2008

Source beautifier for SQL statements

A lot of developers uses source code beautifier tools for their source code, e.g. our ObjectPascal. But I found a nice online-tool for SQL-statements. You can not only format the SQL-command for the Database-server (Oracle, MSSQL and other) like the following result:
SELECT HHJ,
CUSTOMER,
ORDER_ID
FROM TABLE

On the right side you have some options for formatting.

You can format this SQL-Statement for Delphi .....

var1 := 'SELECT HHJ,' ;
var1 := var1 + ' CUSTOMER,' ;
var1 := var1 + ' ORDER_ID' ;
var1 := var1 + ' FROM TABLE' ;

And other languages... e.g. for C# you can choose between
String var1 = "SELECT HHJ," ;
var1 = var1 + " CUSTOMER," ;
var1 = var1 + " ORDER_ID" ;
var1 = var1 + " FROM TABLE" ;
and
StringBuilder var1 = new StringBuilder("SELECT HHJ,");
var1.Append(" CUSTOMER,");
var1.Append(" ORDER_ID");
var1.Append(" FROM TABLE");


I found this very usefull for formatting my SQL-statement to read it sometimes later better..

Here you'll find the Online SQL and PL/SQL Formatter

Sonntag, 13. April 2008

Rave BE and Windows Vista

I received last week an email about problems with Rave BE and Windows Vista. I installed a version of Vista in VMWare and then Delphi with Rave BE.

Rave Version 8 (it should be available in the next few days!) works with Vista, of course.
Rave BE and BEX < 8 works with Vista, too

If you have problems try the following:

Rave BE is installed in the same directory structure as the version of Delphi was. In general, this will be the "c:\Programme" here in Germany or "c:\Program Files" in english. To attempt to resolve the Windows Vista security restrictions, you need to make sure that your "Group" or "User Name" has the "Full Control" permissions set to "Allow".

  1. Go to Program Files directory where you install the CodeGear / Borland product Program File\CodeGear\RAD Studio\5.0
  2. Highlight RaveReports
  3. Right Click on RaveReports and Open properties
  4. Click the Security Tab
  5. Select your own user name from the list displayed
  6. Click the Edit button
  7. Select your own uses name again
  8. Go to the "Permissions for Users" dialogue box
  9. Click the 'Full Control' Allow box
  10. Click Apply
  11. accept all the prompts
In my next post I'll explain the steps for Rave Reports BEX (Borland Edition eXtended) versions 7 or earlier.

Freitag, 11. April 2008

Thomas Pfister: A huge thank you to Bruno Fierens and TMS Software!

Due to recent blog postings about TMS Software and their Ribbon Toolbar Component set I do feel the need to state a few things about a fellow CodeGear Technology Partner.

I know Bruno for a long time, I've visited trainings from Bruno (IIRC in Frankfurt) and know some products from TMS. Everybody has realized in the last few months that the Delphi-area is not prospering like 12 years ago and the number of 3rd-party tools companies is significantly lower than 10 years ago. TMS - Software is one of THE software-companies which support Delphi. Well, this is not enough for a blog, but TMS is one of the few companies which supports not only Delphi Win32. They do support VCL.NET, ASP.NET and the VCL for the Web (better known as "IntraWeb"). This is IMO not very often the case in the Delphi-area.
Beside the support of all these plattforms, TMS creates new components and, if it makes sense, buy other components to integrate them in the TMS-products like the TNT Unicode-components from Troy.

I've noticed all the blogging and, please, Cool down!!
Don't forget: we're a small, active, friendly and healthy community and this should be the case in the future. It makes no sense to build to split up into different groups! Everybody here is a developer and no developer has made bugless-software and it is always a process of optimizing a first product and make it more "complete".

Sonntag, 30. März 2008

Delphi Code Camp in April in Frankfurt


In April is the next Delphi Code Camp here in Germany, organized by the Entwickler-Akademie.
On the last Code Camp in December 07 in Munich I talked about Rave Reports from Nevrona Designs. In the next Code Camp I'll talk (and make live coding, of course) about dbx4, the new database-framework from CodeGear (2/3 of the day) and on the other 1/3 of the day I talk (and make practice) about Blackfish SQL, the new database from CodeGear for the .net Framework. I know a lot of developers who still uses the "good old BDE" from Borland but it's time to change....dbx4 and Blackfish SQL are great solution for the change from BDE / Pardox or dBase.

Beside my database-dayon the other days are sessions about Delphi and Vista, Delphi and multithreading and the VCL for the Web.

You'll see on the code camp a lot of practice for your daily work with Delphi and I hope we'll see us on the Code Camp in Wiesbaden, near Frankfurt in April!
btw: the sessions will be in German.

Freitag, 29. Februar 2008

Blackfish SQL and InterBase from CodeGear

I attend on the EKON12-spring conference this week, like every year. One of my sessions covered about Blackfish SQL, the new database from CodeGear. In the discussion inside the session and after the session in the exhibition-area of the conference I realized that not all have understood the differences between these two databases.

I’ll try to explain it in this blog.

First: InterBase isn’t deprecated! The InterBase-Team works in Scotts Valley on this unmanaged database for the OS Windows, Linux and Solaris (Sparc).

Second: Blackfish SQL is a database for the both frameworks, .net from Microsoft and Java from Sun.

secret It’s not really new, it’s IMO version 8 of JDataStore and this mean you will get a very stable and optimized database! /secret


Well, if you’re a native-win32 developer your first impression is perhaps: “I use InterBase on Windows” and the Blackfish SQL for .net is only for a VCL.net or ASP.net-developer with an ADO.net provider interesting. This isn’t correct.

Codegear of published an interesting article (FAQ) about Blackfish SQL.

Blackfish SQL for .net is ideally suited for

• ASP.net data storage
• embedded .net application
• Delphi application (Win32 and VCL.net)

Blackfish SQL for java is ideally suited for
• Java data storage,
• Embedded Java Swint/SWT apps,
• Java application

InterBase 2007
• Workgroup to Small Enterprise Databaseapplications
• Embedded Apps

OS / Framework

Blackfish SQL for .net

  • .net framework (at the moment not for the CF.net available but I expect a version for this)

Blackfish SQL for Java

  • Java Framework from a big server to a cellphone with JavaVM

InterBase 2007

  • Windows, Linux, Solaris (Sparc) and, new(!), MacOS X


Programming

Blackfish SQL for .net

  • Delphi 2007 (Package.net for .net2 Framework); and C#/VB.net

Blackfish SQL for Java

  • JBuilder and other Java-IDEs

InterBase 2007

  • SQL


Case IDE of (in my Blog I can use the Case with strings… I miss it in Delphi! Nick, I would buy a big bavarian beer for this feature :-) )

  • Delphi for PHP -> InterBase 2007
  • 3rd Rail / Ruby -> InterBase 2007
  • RAD Studio 2007

Asp.net / VCL.net -> Blackfish SQL for .net or InterBase 2007
Win32 -> Blackfish SQL for .net or InterBase 2007

  • JBuilder -> Blackfish SQL for Java or InterBase
End;


You see, both databases have special areas and IMO makes both databases sense because with this YOU can make the choice for the best solution for your customer!

Well, after this short explain of BF <> IB I’ll blog in the next few weeks about more information’s and experience with Blackfish SQL for .net in my blog.

And if you wonder about the "Why BF, compared with other databases on the (.net/Java)-market": There are many reasons and I collect these and will make another blog with answers about this question....(next week )

Stay tuned.

In April I make in Germany a one-day-training with the content “dbx4 (2/3 of the day) and Blackfish SQL for .net (1/3 of the day) @Entwickler-Akademie near Frankfurt.

Donnerstag, 21. Februar 2008

Nevrona have announced Rave 8 today!

Nevrona Designs have announced today the Rave 8 version! NEWS

And they've sent a email to all registered RAVE BEX users, see later the text of the email.

IMO is the Architect-version very interesting because you'll get the EUDL-license for your customer to modify the reports and you'll get the Rave Report Server with unlimited user.
A first-step-article about Rave-Server you'll find here (about V5, I'll update the article asap ).


__________________________________________________________________

Rave Reports 8.0 Announced
==============================
We're happy to announce the release of Rave Reports 8.0 in March, 2008.

Rave Reports 8.0 will be available in 2 new flavors, Developer and
Architect.

Both Developer and Architect will include the Win32 and VCL.NET components
and will support Delphi 4, 5, 6, 7, C++Builder 4, 5 & 6, BDS 2005, 2006 and
RAD Studio 2007.

Rave Reports Architect will further include a license to ship an end user
version of the Rave Reports visual designer with your applications (EUDL)
and an unlimited user version of the Rave Reports Server.

Between now and the release of Rave Reports 8.0, we are offering significant
discounts on pre-order upgrades to all current owners of Rave Reports.

The pre-order prices are as follows:

Rave Reports Developer 8.0: $99 (lists for $299)
Rave Reports Architect 8.0: $199 (lists for $599)

Pre-orders can be placed by visiting http://www.nevrona.com/order

These discounts are our way of thanking our loyal customers who have
supported Nevrona Designs for the 13 years we have been in the Borland and
CodeGear markets. If you are still using an older version of Rave Reports
this is a great opportunity to upgrade to the latest and greatest features
and functionality.


Nevrona Designs Unicode policy
==============================
In line with CodeGear's recent announcement of Unicode support
http://blogs.codegear.com/abauer/category/codegear, Nevrona Designs is
announcing our intention to fully support Unicode as soon as the technology
is released by CodeGear.

Nevrona Designs has a long history of quickly supporting new technologies
with Rave Reports as they have been released by CodeGear (and previously
Borland). We are quite excited about the impact Unicode support will have
on Rave Reports and our support for many new languages and applications
around the world.

Thanks for your support!

_____________________________________
Nevrona Designs - http://www.nevrona.com
1-888-776-4765 (Toll Free in U.S. and Canada)
1-480-491-5492 (U.S.)
sales@nevrona.com