VISUAL BASIC (VB) 3.0 IS A POPULAR TOOL for developing both
stand-alone and client/server applications. A major reason for this popularity
is that it enables Rapid Application Development (RAD). VB 3.0 lets corporate
developers quickly prototype and build Windows applications. As a result,
although VB 3.0 is a single-user development tool, it has moved to the forefront
of client/server application development tools. For corporate developers,
coupling VB's integrated Data Control and visual design environment with SQL
Server's high-performance SQL database provided a robust environment for
corporate client/server application development.
However, specialized client/server development environments such as
Powerbuilder have exposed some weaknesses in VB 3.0. While VB 3.0's Data Control
allowed very easy stand-alone program development, VB 3.0 was not as good for
client/server development. The Data Control and VB 3.0's built-in database
access objects (DAOs) were built for local databases, not Open Database
Connectivity-enabled (ODBC) databases. VB 3.0's DAO is based on the Joint Engine
Technology (JET) originally built for Microsoft Access. JET's local query
processor resulted in inefficient ODBC calls and slow server data access
compared to more efficient specialized client/server tools such as Powerbuilder.
Furthermore, VB 3.0 has no team application-building facilities: It is
targeted at the single developer. Coordinating the work of multiple developers
is no easy task in VB 3.0; for multiple developers to concurrently work on the
same project, manual conventions or third-party tools are necessary. On top of
all this, VB 3.0 can build only 16-bit applications--it cannot develop native
32-bit applications for Windows 95 or Windows NT.
Client/Server Capabilities
Microsoft addressed these problems in the 4.0 release of Visual Basic, a 16-
and 32-bit development environment that builds on the successful foundation of
VB 3.0. For starters, VB 4.0 introduced a new version called the Enterprise
Edition. Aimed clearly at the corporate client/server developer, the VB 4.0
Enterprise Edition takes up where the VB Professional Edition leaves off. The
most important client/server feature in the new Enterprise Edition is a
high-performance RemoteData Control. Unlike VB 3.0's Data Control, which is
based on the JET engine, the new RemoteData Control provides a thin wrapper over
ODBC. The ODBC orientation lets the RemoteData Control perform better when
you're accessing ODBC databases such as SQL Server.
Microsoft also boosted VB 4.0's client/server development capabilities by
adding the ability to create Object Linking and Embedding (OLE) servers. OLE
servers let you create three-tiered client/server applications: The business
rules are encapsulated in an OLE server program that is separate from both the
client application (which typically contains the user interface) and the
database server (which contains the data tables an application uses). You can
see the evolution of VB in table 1.
VB 4.0 Enterprise Edition also provides team application-building
capabilities through the integration of Microsoft's Visual SourceSafe.
You call Visual SourceSafe directly from VB 4.0's menu, and Visual SourceSafe
supports source control through check-in and check-out functions and project
version control and history. For more information about using SourceSafe with VB
4.0, refer to the sidebar, "Team Development with VB 4.0 Enterprise
Edition," on page 78.
VB 4.0 includes several client/server database access alternatives. Let's
quickly look at the options to understand the differences among them and see
where each option works best.
The Data Control: VB's Data Control and DAO use the Microsoft JET
Engine and were originally intended to support the Access database. The Data
Control and the other VB bound controls make program development very easy, but
they also introduce undesirable overhead for accessing remote data sources such
as SQL Server. This situation makes the Data Control and the DAO best suited for
applications that need to access data only on the local system.
The Visual Basic Library for SQL Server: The Visual Basic Library
for SQL Server (VBSQL) provides a high-performance method for accessing SQL
Server databases. VBSQL does not support bound controls, so application coding
is required for database access. Although VBSQL provides complete access to the
capabilities of SQL Server, this SQL Server-only focus is a double-edged sword
that also limits VBSQL to use only with SQL Server. Likewise, all the major
database vendors (e.g., Oracle, Sybase, IBM, Borland) provide similar libraries
for accessing their respective databases. All these options provide good client/server performance, but they also lock you into one vendor's database.
The ODBC Application Programming Interface: Coding directly to the
ODBC application programming interface (API) provides high-performance remote
database access and portability to multiple database platforms, but this
approach does not support bound controls. The ODBC API is a collection of 56
functions, and implementing it in your applications requires substantial coding
and a good understanding of this API. It's like the inverse of the VBSQL library
because the API's standardized database support lets it work with many different
databases, but it doesn't support any vendor-specific implementation features
that are unique to a particular database. Although you can use ODBC for local
database access, it's really best suited for accessing remote SQL databases such
as SQL Server, Oracle, and DB/2.
The RemoteData Control: As you can see, each of these methods has
its purpose, but each also leaves something to be desired. VB 4.0's RemoteData
Control and Remote Data Objects (RDO) attempt to provide the best of both
worlds: easy program development and high-performance data access. The
RemoteData Control combined with the other VB bound controls makes no-code
client/server database access easy and provides good client/server
performance. Because the RemoteData Control is based on ODBC, it's also suitable
for multiple-platform database access. This potent combination is likely to make
the RemoteData Control and RDO your first choice for client/server database
application development.
During his first-ever Consumer Electronics Show (CES) 2009 keynote address last night in Las Vegas, Microsoft CEO Steve Ballmer announced the pending public availability of a feature-complete Windows 7, the final version of Windows Live Essentials, and ...
Microsoft Learning Snack - Green IT Through Virtualization Many organizations face rising operating costs caused by excessive energy consumption. Virtualization and "Green IT" can help cut these costs. Get the information you need to bring Green IT savings to your business.
Order Your Fundamentals CD Today! Register today for your in-depth copy of one of three Fundamental CDs on the following topics – Exchange, SQL, and SharePoint.
Microsoft Learning Snack - Virtualization Basics With virtualization, computing components essentially become on-demand services, freeing each element of a system from the others. This short video explains the needs, benefits, and technologies behind virtualization.
Microsoft Learning Snack - Virtualization Basics With virtualization, computing components essentially become on-demand services, freeing each element of a system from the others. This short video explains the needs, benefits, and technologies behind virtualization.
Empower Your Processes with PowerShell 201 Paul Robichaux delves deep into PowerShell how-tos in 3 informative lessons, each followed by live Q&A—all on your own computer! Register today!
Microsoft Learning Snack - Green IT Through Virtualization Many organizations face rising operating costs caused by excessive energy consumption. Virtualization and "Green IT" can help cut these costs. Get the information you need to bring Green IT savings to your business.
New Release: Windows IT Pro Master CD 13 years of content archives, fast answers with advanced search tools, and full access to WindowsITPro.com—order today!