Language: Visual Basic
Apr 27, 2000
Avoid Cursor Problems in Oracle With Precompiled Queries
ADO and RDO do not support Oracle cursor types; neither Microsoft nor Oracle drivers provide appropriate conversion. As a result, you cannot use Oracle stored procedures from VB or Active Server Pages (ASP) to retrieve a multiple-row recordset. Instead, dynamic embedded SQL statements have to be passed. At this point, the performance degrades and the code becomes difficult to maintain. A better alternativebesides using a third-party driveris to use precompiled (prepared) queries with parameters. These queries can be declared and precompiled when your application or component is first initialized (in the Sub Main, Initialize, or Load events, or include file).
Later, you can assign the parameters and call queriesincluding stored procedures consisting of single SQL statementsby their names. This approach can be faster (both in development and performance) for implementing business logic using VB built-in functionality instead of customized PL/SQL functions. It also can be applied with any RDBMS if you want to separate the database logic. (Queries are created by your component, are invisible in DBMS environment, and gone with your app). It's also easier to adapt and port components against different RDBMS-modifying SQL statements to a particular dialector using standard SQLthan convert vendor specific "glue" languages such as PL/SQL or Transact-SQL.