Embarcadero's Rapid SQL Version 5.7
Embarcadero's Rapid SQL Version 5.7
By: Tom Peters
Nov. 1, 2000 12:00 AM
There's nothing more tedious than having to type out SQL. While the glory of PowerBuilder rests primarily within its DataWindow technology, which saves us from most of this horror, we still need to write our own stored procedures, triggers, and other SQL logic.
The database painter does have a SQL painter in its ISQL pane, but it's limited when it comes time to write stored procedures, triggers, and other objects. We may be able to use it to write some relatively complex queries, but then we have to play games to get it to work in another database object, such as a stored procedure, let alone all of the procedure syntax we still need to code.
The database painter also allows table data manipulation, which is hard to come by in DBMS tools. You can even do some DDL painting as well, but what we're mostly concerned with here is DBMS development from an application developer's point of view. (I know. I write DDL, too. But some shops leave that to the DBA.) What tools out there not only assist developers by offering better ways to create, test, tune, and debug database SQL and its related objects, but also offer enough functionality that we don't have to flip back to the PB database painter for obscure features?
The product I've found to be most complete in DBMS development features is Rapid SQL by Embarcadero. Rapid SQL is geared primarily to application developers, so it doesn't have DBA functionality, such as database backup and restore or object migration. Whether you're coding stored procedures, triggers, or complex queries, Rapid SQL makes the job substantially easier. Its interface is exceptionally rich and intuitive. Rapid SQL also offers debugging modules for Oracle and MS SQL Server, although these are add-ons that must be purchased for use.
Besides some of the product's basic functions, I'm going to concentrate on four features that will be most beneficial to PowerBuilders. Mind you, this product comes with a plethora of functions that you'll no doubt come to love and depend on in your development efforts. I've tried to focus on the most enticing features, although what entices me may differ from what entices you. To give a more rounded overview of Rapid SQL, I've also provided a quick list of great features at the end of this article.
Installation and General Information
To install Rapid SQL you must be logged on with administrator privileges. The installation is standard, offering you choice of program location, etc. One piece of the install you need to pay attention to is when you're asked if you'd like Rapid SQL to automatically register your "datasources." By this we mean your server and database connections as you've defined them through your DBMS clients. If you choose to not allow the installation to handle the registration, you can do it manually later.
All the work you do in Rapid SQL will be applied to the server and database you've selected via the "Managed Datasources" treeview in the Explorer pane of the IDE (see Figure 1). You can connect manually and enter a user ID and password each time you connect or you can opt for an automatic login and default database.
In the Explorer pane, you can expand databases and specific object types. For instance, in Figure 1 I've expanded Procedures and can now see all of the procedures in that database. From here you can perform many functions via the right-click popup menu, such as extract the procedure for editing, list out the procedure's dependencies, rename the procedure, and describe the procedure's signature.
Code Generation Facility
When you open the Code Generation Facility, you're presented with the screen shown in Figure 2. Here you select the datasource that contains the table or view you'll be creating the procedure to act against. After selecting the table, go to the Generate group box and select the type(s) of procedures you want generated: Select, Insert, Update, or Delete. You can choose one or many. The system will generate separate procedures for each type and name them accordingly. If you opted to create a Select procedure, you'll need to check off the columns you want in the result set in the Output Columns group box.
The Where Clause Columns group box determines what variable arguments will be generated in the procedure signature. These are automatically coded into any Where clauses throughout the code for Select, Update, and Delete. For Insert procedures, these are the columns and variables used in the Insert statement.
The Grant Execute group box allows you to choose what users and/or groups should have a Grant Execute statement generated.
Finally, you need to provide a file name into which the Code Generation Facility will place procedure scripts. You can check the Execute Immediately checkbox to have the new procedures immediately loaded into the database when you click OK. If not, the generated file is opened for your review and editing in the SQL pane. Let me tell you, this is quick and clean. The code is as professional as they come. All of your Rollback and Commit statements are there, and the structure is perfect.
Once you're in the Query Builder, select the database and owner of the tables and views you'll be using for your query. To begin creating your query, click-and-drag tables from the Tables/Views tab into the design area. Select the columns you want in your result set by checking them in the graphical area. Once you start, you'll see your query being built in the SQL tab. Joins are automatically created based on relationship, but you can remove or add joins as you please.
From the DML tab, you can easily design all of the standard query clauses: Where, Order By, Group By, Having, and so forth. Again, as you do this you'll see the query being modified within the SQL tab.
If at any time you're having doubts as to the syntactical worthiness of this automatically generated SQL, you can hit the ever-present Check-Syntax button for a review. When your query is ready, you can execute it right from here by clicking the Execute button. If you're using this as a starting point from a more complex query, you can switch into SQL Edit mode by trying to modify the query in the SQL tab. Rapid SQL will prompt you into Edit mode. If you need to abandon your query for another day, you can save your work in progress to a Query Builder File (*.eqb) and open it some other time.
Projects and Version Control
When creating a new project, you'll be prompted to select a drive and folder for the repository as well as a name for the project. Select Initialize New Project from Database and press OK. This brings you into a wizard that lets you get as selective as you want in choosing database objects to be loaded into the project folders. Rapid SQL extracts all of the selected objects and stores the scripts in nicely arranged folders. As you work within the project, you can add or remove scripts, specify object build orders, and build the project to completion if you so choose.
Rapid SQL currently supports the following version control products: Merant/Intersolv PVCS Version Manager, Microsoft Visual SourceSafe, MKS Source Integrity. It seamlessly integrates with these products allowing you, from within Rapid SQL, to check-in, check out, show history and differences, and so forth. Again, you can stay in Rapid SQL to do your work!
Rapid SQL lets you jump right into your table data in a nice grid format in which you can add, delete, and modify rows (see Figure 3). You don't have to retrieve every row in the table, either. When you enter the Edit Data module, you're prompted for any filter criteria you might have. The selected columns and rows are returned and you can start editing data live or in batch mode. If you choose live, the changes are executed immediately. If you choose batch, the scripts are generated and await your command! Either way, you can watch the scripts in the SQL tab as well as all of your changes in the History tab.
Quick List of Other Great Features
Space doesn't allow me to continue telling you how great this product is. I've worked with a lot of good tools and a lot of bad tools, and nothing has impressed me in the same manner as Rapid SQL. It definitely has room for improvement, specifically in the Query Builder and Code Generator. Overall, though, it's an invaluable product that should be on every developer's PC.
Embarcadero offers a free 15-day full-version trial that can be downloaded from its Web site. But beware, once you use this product for 15 days you'll be hopelessly hooked.
Price: Negotiated based on DBMS support,
Reader Feedback: Page 1 of 1
SOA World Latest Stories
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
SYS-CON Featured Whitepapers
Most Read This Week