Welcome!

Eclipse Authors: Pat Romanski, Elizabeth White, Liz McMillan, David H Deans, JP Morgenthal

Related Topics: PowerBuilder

PowerBuilder: Article

Embarcadero's Rapid SQL Version 5.7

Embarcadero's Rapid SQL Version 5.7

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
Let's start by discussing what Rapid SQL requires and what it supports. To run Rapid SQL, you need at least 64 megabytes of memory and 40 megabytes of disk space. It's a client-only installation that can run on Windows 9x, NT4, or 2000. Currently, it supports four DBMS versions running on Windows NT or Unix-based servers, and each one must be paid for. You can select one, all, or any combination of the four DBMSs. Regardless of the number of DBMSs you want to work against, you need to run only one instance of Rapid SQL. It supports cross-platform concurrent connections and allows you to develop against these via workspaces.

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
The Code Generation Facility is a quick-and-clean way to hammer out straightforward stored procedures or, if you're using Oracle, functions and packages. By straightforward, I mean no table joins or computed columns will be generated in this utility. But fear not, it will still save you a ton of coding.

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.

Query Builder
This is one feature that PowerBuilder developers will feel right at home using. It's akin to the graphical SQL painter in PB. We've all opted to use the PowerBuilder SQL painter over our database tools because they're so slick. Too many times I've had to bounce between PB and other editors cutting and pasting, just to save time coding, and more importantly, to avoid syntax errors. While not as feature-packed as the PowerBuilder SQL painter, Rapid SQL offers its own graphical Query Builder that alleviates the pain of this scenario.

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
Whether you've got a version control product in-house or not, you'll love the Projects tool in Rapid SQL. A project in Rapid SQL is basically a file repository of your entire database's object DDL, DML, etc. This can be initialized by reverse engineering the objects out of your existing database or existing scripts or you can choose to not initialize a project and start from scratch. Let's be realistic and start with an existing database.

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!

Data Editor
For PowerBuilders who've gotten accustomed to the database painter allowing table data manipulation, this will be a sight for sore eyes. Have you ever needed to fudge data for a test you're running? No more writing scripts!

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

  • Database Search: Powerful search tools will traverse multiple servers, databases, and object types to find your criteria.
  • Visual Difference: These are cross-database, line-by-line comparisons of database objects, whether in the database or through script files.
  • Debuggers: These are add-ons that are DBMS-specific - debug procedures, triggers, functions, and packages.
  • Favorites Tab: Keep all of your frequently run scripts neatly organized and easily executed.
  • Workspaces: These are three multithreaded workspaces so you can keep working while executing long-running scripts.
  • Java Scripting: This rapid SQL includes a Java file editor.
  • HTML Scripting: It also includes an HTML editor.
  • Find-In Files: Allows you to search multiple files for specific data under any given folder.
Two Thumbs Up
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.

Embarcadero
425 Market Street, Suite 425
San Francisco, CA 94105
Phone: 415-834-3131
E-Mail: [email protected]
Web:
www.embarcadero.com

Specifications
DBMS Support
Rapid SQL supports the following DBMS versions
running on both UNIX and Windows NT-based servers:
Sybase 11.x & 12.x, MS SQL Server 6.5, 7.0, 2000,
Oracle 7.x & 8.x, and IBM DB2 UDB 5.x, 6.x & 7.x

System Requirements
Windows 95/98/NT/2000,
32MB memory and 37.5 MB disk space
*The Profiler is only available for installations
of Oracle version 8.1.5 or higher.

Price: Negotiated based on DBMS support,
number of users, and any add-ons.

More Stories By Tom Peters

Tom Peters is director of online applications for Sherwood International in Armonk, NY, an ISV that specializes in insurance software. Tom is a CPD professional with over 15 years' experience.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


IoT & Smart Cities Stories
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
If a machine can invent, does this mean the end of the patent system as we know it? The patent system, both in the US and Europe, allows companies to protect their inventions and helps foster innovation. However, Artificial Intelligence (AI) could be set to disrupt the patent system as we know it. This talk will examine how AI may change the patent landscape in the years to come. Furthermore, ways in which companies can best protect their AI related inventions will be examined from both a US and...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
Chris Matthieu is the President & CEO of Computes, inc. He brings 30 years of experience in development and launches of disruptive technologies to create new market opportunities as well as enhance enterprise product portfolios with emerging technologies. His most recent venture was Octoblu, a cross-protocol Internet of Things (IoT) mesh network platform, acquired by Citrix. Prior to co-founding Octoblu, Chris was founder of Nodester, an open-source Node.JS PaaS which was acquired by AppFog and ...
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
Cloud-enabled transformation has evolved from cost saving measure to business innovation strategy -- one that combines the cloud with cognitive capabilities to drive market disruption. Learn how you can achieve the insight and agility you need to gain a competitive advantage. Industry-acclaimed CTO and cloud expert, Shankar Kalyana presents. Only the most exceptional IBMers are appointed with the rare distinction of IBM Fellow, the highest technical honor in the company. Shankar has also receive...
Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science," is responsible for setting the strategy and defining the Big Data service offerings and capabilities for EMC Global Services Big Data Practice. As the CTO for the Big Data Practice, he is responsible for working with organizations to help them identify where and how to start their big data journeys. He's written several white papers, is an avid blogge...
The standardization of container runtimes and images has sparked the creation of an almost overwhelming number of new open source projects that build on and otherwise work with these specifications. Of course, there's Kubernetes, which orchestrates and manages collections of containers. It was one of the first and best-known examples of projects that make containers truly useful for production use. However, more recently, the container ecosystem has truly exploded. A service mesh like Istio addr...
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
Whenever a new technology hits the high points of hype, everyone starts talking about it like it will solve all their business problems. Blockchain is one of those technologies. According to Gartner's latest report on the hype cycle of emerging technologies, blockchain has just passed the peak of their hype cycle curve. If you read the news articles about it, one would think it has taken over the technology world. No disruptive technology is without its challenges and potential impediments t...