MFC ODBC连接远程数据库,应该怎么写连接字符串

MFC ODBC连接远程数据库,应该怎么写连接字符串,第1张

SQLServer的连接字符串:

标准安全连接

Data Source = myServerAddressInitial Catalog = myDataBaseUser Id = myUsernamePassword = myPassword

使用服务器名\实例名作为连接指定SQL Server实例的数据源。如果你使用的是SQL Server 2008 Express版,实例名为SQLEXPRESS。

使用IP地址的连接

Data Source = 190.168.1.100,1433Network Library = DBMSSOCNInitial Catalog = myDataBaseUser ID = myUsernamePassword = myPassword

这条语句用TCP/IP地址替代了命名管道。在Data Source字段最后的是使用的端口。SQL Server默认使用的端口是1433。原则上这条应该不需要客户端做任何配置

至于你问的:客户端直接远程连接数据库好还是通过网络传输数据库的内容好

从功能的角度,这两者没有任何区别.区别在其它方面,比如安全性,整个项目的部署环境包括是否需要启动热备份等等,这方面不同的需求带来不同的部署方式。如果没有这些方面的要求,那么就都可以了

· MySQL

· ODBC

o 本地数据库:

"Driver={mySQL}Server=mySrvNameOption=16834Database=mydatabase"

Sever参数也可以使用localhost作为其值

o 远程数据库:

"Driver={mySQL}Server=data.domain.comPort=3306Option=131072Stmt=Database=my-databaseUid=usernamePwd=password"

Option值 取值的含义

1 客户端不能处理MyODBC返回一列真实宽度的情况

2 客户端不能处理MySQL返回影响的行的真实值的情况如果设置此标志,MySQL返回’found rows’。 MySQL 3.21.14或更新版才能生效

4 在c:\myodbc.log中生成一个调试日志。这与在`AUTOEXEC.BAT'中的设置MYSQL_DEBUG=d:t:O,c::\myodbc.log相同

8 对于结果和参数不设置任何包限制

16 不使驱动器d出问题

32 使用或去除动态游标支持。这在MyODBC 2.50中是不允许的

64 在'database.table.column'中忽略数据库名字的使用

128 强制使用ODBC管理器游标

256 去除扩展取值(fetch)的使用

512 充满char字段满长度

1024 SQLDescribeCol()函数返回完全满足条件的列名

2048 使用压缩的服务器/客户端协议

4096 告诉服务器在函数后和'('前忽略空格 (PowerBuilder需要)。这将产生所有函数名关键词

8192 使用命名管道连接运行在NT上的Mysqld服务器

16384 将LONGLONG列改为INTl列(有些应用不能处理LONGLONG列)

32768 从SQLTables中返回’user’作为Table_qualifier和Table_owner

66536 从客户端读参数,从`my.cnf'读ODBC群

131072 增加一些额外的安全性检查

如果你需要许多选项,你应该把以上标志相加。

一般都是使用JDBC连接数据库,用的就是ODBC数据源。

有个很简单的方法,你看那个加载驱动程序的代码:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")若双引号里是上面所示,则是使用的JDBC-ODBC桥接方式。JDBC连接由JDBC URL进行标识。连接的代码:DriverManager.getConnection("jdbc:odbc:pubs",""""),pubs就是所使用的ODBC数据源名。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6782266.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存