jasmine80
路人甲
路人甲
  • 注册日期2005-12-26
  • 发帖数7
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2302回复:6

[求助]MapInfo中如何调用SQLServer中的数据

楼主#
更多 发布于:2006-03-10 05:50
<P>我想用MapBasic编程直接调用SQLServer中的数据,有谁有这方面的经验,可以教我一下吗?</P>
<P>我看过的教程上只有简单的介绍,如果哪位前辈做过实例,方便的话,可以教我一下吗?</P>
[此贴子已经被作者于2006-3-10 22:06:39编辑过]
喜欢0 评分0
echoo
路人甲
路人甲
  • 注册日期2006-03-01
  • 发帖数6
  • QQ
  • 铜币120枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2006-03-11 11:35
用ADO,建立一个连接字串,在SQLSERVER上建立一个库,表,字串里写明这个库,表,数据就来了...
举报 回复(0) 喜欢(0)     评分
jasmine80
路人甲
路人甲
  • 注册日期2005-12-26
  • 发帖数7
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2006-03-12 17:53
试试,谢过先
举报 回复(0) 喜欢(0)     评分
jasmine80
路人甲
路人甲
  • 注册日期2005-12-26
  • 发帖数7
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2006-03-12 20:07
抱歉啊,可以再说详细一点吗
举报 回复(0) 喜欢(0)     评分
jasmine80
路人甲
路人甲
  • 注册日期2005-12-26
  • 发帖数7
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2006-03-13 05:06
你说的好像是要从别的程序中调用。因为我需要在mapbasic下经常调用SQLServer中的数据,所以希望直接在Mapbasic中编写语句访问SQL,而不是先在别的语言中调用再传给Mapbasic。
举报 回复(0) 喜欢(0)     评分
jasmine80
路人甲
路人甲
  • 注册日期2005-12-26
  • 发帖数7
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2006-03-26 13:40
<P>我已经做出来了,分以下几步:</P>
<P>1.将MapInfo安装盘上的ODBC装上,这个在启动光盘时就有显示</P>
<P>2.在操作系统下的"控制面板"-"管理工具"-"数据源(ODBC)"中添加数据源(我用的是SQLServer,还有很多可以选择),然后配置参数.注意:这里你所定义的DSN名称要与之后在MapBasic链接数据库是使用的DSN相同,建议可以参照Mapbasic帮助手册中的Server_Connect()的各种数据库链接示例中所给的DSN参数,这样可以增加程序通用性.</P>
<P>3.在Mapbasic中写一下语句,Server_Connect(QELIB,"DSN=MI SQLSERVER;DB=你的目标表(Sqlserver中的);UID=(你的用户名);PWD=你的密码,如果没有就用空字符串")</P>
<P>4.如果直接读取确定的数据,可以用Server_Execute(),用完之后记得使用Server Close语句.</P>
<P>5.如果要对表进行一定操作,则:</P>
<P>  Server hdbc Link Table<br>  "Select acc_code,p_death,p_harm,happen_time From info_basce"(你所使用的数据检索语句)<br>  Into TEMP(TEMP是你存储临时数据的MapInfo表,所以每次使用完后,如果没有保存的必要,请记得使用RollBack语句释放空间,并用CloseTable语句关闭表)</P>
<P>6.断开链接</P>
<P>再说一下如何将SQLServer数据转换为.tab表</P>
<P>经过上面所说的1.2.两步后,再进行如下操作就ok了:</P>
<P>3.在MapInfo中的"工具"-"工具管理器"中把3个与DBMS有关的工具的"已装入"和"自动装入"钩选上,然后确认</P>
<P>4.在"工具"菜单下会发现多了几项,选择"DBMS上载表",你就会发现刚创建的数据源被显示,然后剩下的就是找到你自己要用的SQLServer中的表了...之后,再经过几步简单操作,你就可以把SQLServer中的表转为.tab格式了.</P>
[此贴子已经被作者于2006-3-26 18:16:23编辑过]
举报 回复(0) 喜欢(0)     评分
felong
路人甲
路人甲
  • 注册日期2004-08-02
  • 发帖数5
  • QQ
  • 铜币114枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2006-03-27 22:42
真是好啊
举报 回复(0) 喜欢(0)     评分
游客

返回顶部