WIN7/WIN10下C#使用ODBC连接GAUSSDB T的数据源配置方法[转]

举报
GaussDB-虎哥 发表于 2020/03/13 12:10:36 2020/03/13
【摘要】 GaussDB T 1.0.1 .net驱动未发布,业务系统用.net编写的,可以使用ODBC驱动,但windows下的GAUSSDB T ODBC驱动暂未正式发布,当前仅为研发内部调测用,配置步骤如下

windows下的GAUSSDB T ODBC驱动暂未正式发布,当前仅为研发内部调测用,详情咨询华为相关支撑人员


使用ODBC(Open Database Connectivity,开放数据库连接)连接数据库首先需要配置ODBC数据源

(Windows下为配置注册表,linux下需安装unixodbc并配置odbc.ini和odbcinst.ini文件)

微软ODBC 数据源介绍https://docs.microsoft.com/en-us/sql/odbc/admin/managing-data-sources?view=sql-server-ver15

ODBC的基础架构https://www.cnblogs.com/mumuxinfei/p/3720799.html


1.在win10系统上,双击.reg文件修改注册表(以64位OS为例);

image.png

修改完后,打开ODBC 数据源管理程序(64 位)可以看到相应的数据源:

image.png

注册表信息:

image.png

注意:

myzenith为dsn,应用程序代码里的连接字符串请指定dsn=myzenith

32位应用程序---HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ODBC\ODBC.INI\myzenith---32位odbc驱动

64位应用程序---HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\myzenith---64位odbc驱动


配置完成后,打开C#应用程序,选择对应的编译环境,执行OdbcConnection::open()接口,若不报错,则数据库连接成功!

image.png

注意:

    zenith为DSN名称,Username和Password为数据库用户名和密码,需拥有create session权限(若数据库在远端,则不可以使用sys用户登录)。ODBCINIST.INI中的内容可以不配置,但若配置,系统寻找Driver路径会以ODBCINST.INI中的为准,Servername和Port为数据库服务端的**IP和端口。Database为数据库实例名,目前GAUSSDB仅支持单实例,所以此配置项可有可无。


( FAQ ):

1、若未配置应用程序对应编译环境的数据源,会抛“在指定的DSN中,驱动程序和应用程序之间的体系结构不匹配错误”

image.png


2、若在对应的注册表中配置为错误编译环境的ODBC驱动(如在64位注册表中配置32位驱动或在32位注册表中配置64位驱动)或是驱动路径错误,会抛“指定驱动程序无法加载”

image.png

3.还有一种错误是由于系统错误 126:找不到指定的模块。 。。。。执行驱动程序无法加载

这是因为缺少一些系统库导致的,可以安装VS2017解决,或者在系统目录下增加ucrtbased.dll和vcruntime140d.dll


转自 http://3ms.huawei.com/km/blogs/details/6872155



【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。