Microsoft SQL Server Native Data Access

Document ID : KB000055684
Last Modified Date : 14/02/2018
Show Technical Document Details

CleverPath Reporter provides two interfaces to Microsoft SQL Server. The first is through ODBC (the source type ODBC in the Database Login dialog). The second is through a native interface to Microsoft SQL Server using an API (application programming interface) called the DB Library (the source type MS_SQLSERVER in the Database Login dialog). The native interface is being rendered obsolete by Microsoft, as explained in the MSDN (Microsoft Developer Network) documentation for DB Library:

"DB-Library is a Call Level Interface that allows C applications to access Microsoft SQL Server 2000. DB-Library was the original application programming interface (API) that allowed applications to access SQL Server, and remains specific to SQL Server."

"The DB-Library API has not been enhanced beyond the level of SQL Server version 6.5. All DB-Library applications can work with SQL Server 2000, but only as 6.5 level clients. Features introduced in SQL Server 2000 and SQL Server version 7.0 are not supported for DB-Library applications."

"SQL Server 2000 does not include a programming environment for DB-Library for Microsoft Visual Basic. Existing DB-Library for Visual Basic applications can run against SQL Server 2000, but must be maintained using the software development tools from SQL Server version 6.5. All development of new Visual Basic applications that access SQL Server should use the Visual Basic data APIs such as Microsoft ActiveX Data Objects (ADO) and Remote Data Objects (RDO)."

"While the DB-Library API is still supported in Microsoft SQL Server 2000, no future versions of SQL Server will include the files needed to do programming work on applications that use this API. Connections from existing applications written using DB-Library will still be supported in the next version of SQL Server, but this support will also be dropped in a future release. When writing new applications, avoid using DB-Library. When modifying existing applications, you are strongly encouraged to remove dependencies on DB-Library. Instead of DB-Library, you can use ADO, OLE DB, or ODBC to access data in SQL Server."

Some of the features needed for localization are only present in Microsoft SQL Server version 7.0 and above. For localized reports, it is recommended that access to Microsoft SQL Server be done through ODBC and not through the native interface. A known problem cause by the native interface is that date prompt RTVs do not return any data.

Another case that is not supported is that ntext datatypes return an error with the message code of 4004. Microsoft states "Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library."

Another case that is not supported is that text datatypes return an error with the message code:8163 and a DB library error of 10007 when using the "values..." button from the create a column field dialog.

In some future release, the native interface to Microsoft SQL Server will be removed from the user interface of the product so that no new reports using that source type can be created. At that time, existing reports will continue to be executed at the same level that they always were in previous versions.