As a declarative programming language, Structured Query Language is procedural. A query requires several lines of code to execute, depending on the criteria involved and the functionality that is desired. Visual query building tools show the structure and sequence of a given query, to make it easier to understand.
In a visual query builder, each line of a SQL query is shown on the screen. These lines of SQL code are often generated by users through a series of control objects, for example, text fields, drop-down lists and check boxes. Many of these visual query building tools have a separate box or field on one side of the screen that shows handling controls for more than one type of database.
One helpful way to think about visual query building tools is that they are similar, in some ways, to HTML editors that visualize the HTML used to code web pages. Like SQL queries, web pages are built with linear code, in HTML. HTML editors abstract these lines of code into an object-oriented interface – for example, instead of writing lines of HTML, users can click on color controls to set background or text colors, or use text fields and boxes to add things like images and other elements to a web page.
In the same way, visual query building tools abstract the SQL code. Instead of typing in lines of SQL, users can manipulate the controls that generate the code. Some visual query building tools that are created with Visual Basic have all of the common fields and object controls associated with that language, for the purposes of building and inspecting SQL queries. Others may have different builds, but most of the visual query building tools utilize a split-screen approach to show the raw SQL code, while at the same time showing the visual tools that create the query code.
Professionals can also use visual query building tools to build a query in the most efficient way. Many of these automated tools calculate and compute the creation of a query in the most efficient way possible, using the best optimized SQL commands and generating efficient SQL code. After building the SQL query, professional users can adjust it, and look at the differences through a visual engine that, again, makes the link between the query purposes and the underlying SQL code clearer.