在写sql语句时,access与sql server的有些不同(如日期格式),如:
在access 中
select * from switch where date=#2002-9-30# 
在sql server 中 
select * from switch where date='2002-9-30'
而我的程序却要在两种数据库上通用(使用odbc),我该怎么办?(难道写两个版本的程序?)

解决方案 »

  1.   

    经查找,可用注册表中的相关数据解决:
    char szBuffer[100];
    DWORD i=sizeof(szBuffer);
    CRegKey reg;
    reg.Open(HKEY_CURRENT_USER,
    "SoftWare\\odbc\\odbc.ini\\odbc data sources");
    reg.QueryValue(buffer,"test",&i);//test为一数据源名称
    MessageBox(buffer);
            //szBuffer=SQL Server 为sql server
            //szBuffer=Microsoft Access Driver(*.mdb) 为access