
C++中 已知系统数据源(ODBC)的名称,怎么根据该数据源名称判断该数据源是属于哪个数据库?
我用的OTL数据库访问方式,可以兼容对MYSQL,SQLserver等数据库的操作,但是它们在字符串操作时又有些区别,我需要根据数据源名称,来获取该数据库类型,以便在初始...
我用的OTL数据库访问方式,可以兼容对MYSQL ,SQLserver等数据库的操作,但是它们在字符串操作时又有些区别,我需要根据数据源名称,来获取该数据库类型,以便在初始化的时候标注当前数据库类型…… 有知道的大侠帮帮忙,只要解决问题,可以加分。
展开
1个回答
展开全部
从数据库连接字符串中,把数据库源DSN提取出来。
然后搜索注册表,
用户DSN到[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources]下找
系统DSN到[HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources]下找
找到以后,根据找到的字符串来判断。
如果不想根据字符串来判断,
就根据DSN名字,到注册表上一层路径里面找到数据库源的详细信息。
里面有个Driver项,写着数据库驱动源的程序名,根据这个来判断。
操作注册表可能涉及的API:
RegOpenKeyEx
RegEnumValue
RegCloseKey
然后搜索注册表,
用户DSN到[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources]下找
系统DSN到[HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources]下找
找到以后,根据找到的字符串来判断。
如果不想根据字符串来判断,
就根据DSN名字,到注册表上一层路径里面找到数据库源的详细信息。
里面有个Driver项,写着数据库驱动源的程序名,根据这个来判断。
操作注册表可能涉及的API:
RegOpenKeyEx
RegEnumValue
RegCloseKey

2025-02-18 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸...
点击进入详情页
本回答由ZESTRON提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |