db2的sqc文件里怎么连接数据库

如题所述

SQL SERVER连接别的数据库属于不同数据库平台互联,不同数据库平台的互连一般称之为数据库的异构服务,现在各大数据库之间都可以实现这样的异构互连,只是各厂商的具体实现技术不一样。
如:在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。
SQL SERVER连接DB2的测试环境为:
操作系统: WINDOWS2000 SERVER (繁体系统)
安装数据库: SQLSERVER2000(英文版)和DB2 7.2客户端(英文版)
具体实现步骤:
1.要求pc机上安装DB2客户端软件和sqlserver2000软件。
2.配置windows的ODBC数据源:
开始菜单—》程式集—》系统管理工具—》资料数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:添加—》选择IBM DB2 ODBC DRIVER—》自定义数据源名称(随意如: DB2TEST)—》数据库名称(必选!)—》OK完成。
3. 选择刚才配置的数据源名称, 再选择 配置, 跳出DB2 MESSAGES:
The data source is not connected. Connecting to the data source will provide useful information during configuration. Would you like to connect to the data source?
选择YES(OK或确认)即可
进入CONNECT TO DB2 DATABASE画面:
USER ID: 输入DB2 DATABASE的用户
PASSWORD: 输入DB2 DATABASE的用户的密码
CONNECTION MODE: 可以选择默认的SHARE模式
选择OK(确认)即可!
配置和测试ODBC完成!
4.配置sqlserver2000中的连接服务器:
企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称; 选其他数据源; 指定程序名称为:IBM OLE DB Provider for DB2 SERVERS; 产品名称可不填; 数据源指定刚才ODBC中定义好的数据源名称; 提供程序字符串按以下格式填写:User ID=username;Password=userpasswd(或者按如下格式:UID=username;PWD=userpasswd),这里的用户名和密码对应所要连接的DB2数据库中的用户名和密码 —》 安全性标签页里:设置用此安全上下文进行,并录入DB2的数据库用户名和密码—》服务器选项标签页可默认—》确定。
5.SQL SERVER连接DB2准备工作全部完成!在sqlserver企业管理器—》安全性—》连接服务器打开刚建好的连接服务器—》点击表,即可在右边窗口看到该DB2数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在sqserver的查询分析器中用具体sql实现!访问表时,使用格式为: [连接服务器名]..[DB2用户].[表名]。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-12
1.首先把自己编辑好的SQC文件(如:test.sqc)放在指定的目录下。
2.正式开始编译前,需要和DB2数据库(如:TESTDB)建立连接。
以linux环境为例,在命令行状态下,输入:db2 connect to TESTDB
3.调用DB2的prep命令对SQC文件进行预编译,用来生成C文件。
在命令行状态下,输入:db2 prep test.sqc BINDFILE package using bindtest
说明:
上述命令中的“BINDFILE”是用来指定在做预编译的同时生成bind文件的(如:bindtest.bnd)
上述命令中的“package using bindtest”是用来指定将要写入到DB2的系统表中的package信息的名称(如:bindtest)。
bind文件里记载的是用来写入到package信息的数据。
4.调用DB2的bind 命令从上一步生成的bind文件中读出必要的数据写入到上一步指定名称的package信息中。
并可以给这条信息指定访问权限。
以linux环境为例,在命令行状态下,输入:db2 bind ConnTEST.bnd GRANT PUBLIC
5.到目前为止可以说与DB2相关的所有预编译就基本完成了,我们需要的C文件(如:test.c)也整成生成了,那个bind文件后边暂时不会用到了。
下来就可以调用CC或GCC之类的C代码编译器对这个C文件进行编译,基本的过程是test.c→test.o→test。这样我们就可以执行这个最终的可实行程序了。本回答被网友采纳
相似回答