VC程序无法能过带字符串参数的存储过程,从数据库中获取数据库(用UNICODE编程)
fjfzb 2008-12-10 04:53:12 如题,我将数据库全部改成按UNICODE标准的存储,VC程序也改成UNICODE方式处理。但是,程序通过带字符串参数的存储过程去连接数据库,却返回“[Microsoft][ODBC SQL Server Driver]没有提供需要的指示器变量”。如果将程序改回多字符处理,一切正常。
其中的一个存储过程如下:
ALTER PROCEDURE dbo.spGetSvrInfo
@szLocalIpAddress NVARCHAR(50) ,
@bServiceType TINYINT ,
@dwServerID INT OUTPUT,
@szServerName NVARCHAR(50) OUTPUT,
@szServiceName NVARCHAR(50) OUTPUT,
@szIpAddress NVARCHAR(50) OUTPUT,
@dwPort INT OUTPUT,
AS
SELECT @dwServerID = dwServerID, @szServerName=szServerName, @szServiceName = szServiceName, @szIpAddress=szIpAddress,
@dwPort = dwPort
FROM SERVERLIST WHERE dwServerID IN
(SELECT dwMsServerID FROM SERVERLIST WHERE szIpAddress = @szLocalIpAddress and bServiceType = @bServiceType) and bServiceType = 0
RETURN @@ERROR
VC程序用#include <sql.h>这里面的函数来连接处理数据库(SQL2K)
如何处理。