Microsoft KB Archive/102820
BUG: dbrpcparam SQLCHAR and Sending Null for Datetime Variable
The information in this article applies to:
- Microsoft SQL Server Programmer's Toolkit, version 4.2
BUG# 9081 (4.2)
In DB-Library function dbrcpparam(), using SQLCHAR type and attempting to send a null value by setting datalen to 0 does not work if the remote stored procedure parameter has variable type as DATETIME.
For example, let the stored procedure be:
create proc test @var datetime as select @var
Then calling dbrpcparam with the following parameters, intending to send a null value by setting maxlen=0, as:
displays the default date of 1 Jan, 1900, thereby treating the variable as an empty string instead of a null.
Use SQLDATETIME as the type instead of SQLCHAR to work around this problem.
Microsoft has confirmed this to be a problem in DB-Library version 4.2. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
Additional query words: dblib
Keywords : kbprogramming
Issue type :
Technology : kbSQLServSearch kbAudDeveloper kbSQLServPTK420
Last Reviewed: March 18, 1999