CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

百分在线等待!!!!!急,,,,,,,,急,,,,,

楼主hnmlb(Raul)2003-09-03 20:49:25 在 Delphi / 数据库相关 提问

procedure   TForm1.Button4Click(Sender:   TObject);//回传按钮  
  var  
  str1,str2:string;  
  begin  
  连接到本地数据库;  
  if   (form1.edit23.Text='')   or     (form1.edit24.Text='')   or   (form1.edit26.Text='')   then  
    showmessage('您输入的信息不全!')  
  else  
  with   unit4.DataModule4   do  
        begin  
            adocommand1.CommandText:='exec   link   :linkmena,:dbna,:loginna,:paw';  
            adocommand1.parameters.ParamValues['linkmena']:=trim(form1.edit23.Text);//连接名称  
            adocommand1.parameters.ParamValues['dbna']:=trim(form1.edit26.Text);//远程数据库名  
            adocommand1.parameters.ParamValues['loginna']:=trim(form1.edit24.Text);//远程登陆名  
            adocommand1.parameters.ParamValues['paw']:=trim(form1.edit25.Text);//密码  
            adocommand1.Execute;  
            str1:=trim(form1.Edit26.Text);  
            str2:=   trim(form1.edit22.Text);//任意的表名  
            adocommand5.CommandText:='insert   into   test.''+str1+''.dbo.''+str2+''   select   *   from   '''+trim(form1.edit22.Text)+'''';   //可能有问题  
            adocommand5.execute;  
            showmessage('已经成功回传!');  
        end;  
  end;  
   
  在SQLSERVER中建立了储存过程:link:  
  CREATE   PROCEDURE   link   @linkmena   varchar(30),@dbna   varchar(30),@loginna   varchar(10),@paw   varchar(20)  
    AS  
  exec   ('   sp_addlinkedserver     ''test''   ,''sqlserver'',''sqloledb'','''+@linkmena+''',null,null,'''+@dbna+'''')  
  exec   ('sp_addlinkedsrvlogin   ''test'',''false'',null,'''+@loginna+''','''+@paw+'''')  
  GO  
   
   
   
  但是delphi提示microsoft   ODBC   驱动程序管理器未发现数据源名称并未指定默认驱动程序  
   
  请各位高手指点!此程序的目的为把本地数据库中的表传到目的数据库中!(目的数据库是局域网内的一台电脑!)  
  问题点数:0、回复次数:16Top

1 楼goldstar365(星光宝盒)回复于 2003-09-03 21:32:57 得分 0

太复杂,帮不了你,向你学习。Top

2 楼goldstar365(星光宝盒)回复于 2003-09-03 21:57:20 得分 0

adocommand5.CommandText:='insert   into   test.'+str1+'.dbo.'+str2+'   select   *     from   '+trim(form1.edit22.Text);    
   
  这样是否可以?Top

3 楼tanqth(青蛙)回复于 2003-09-03 22:11:54 得分 0

upTop

4 楼beilong21(悲龙)回复于 2003-09-03 22:12:03 得分 0

有没有高手啊?我已经不行了!Top

5 楼cbdiy(暂无)回复于 2003-09-03 23:03:20 得分 0

何必搞得那么麻烦。  
  adocommand5.Connection   :=   后  
  adocommand5.CommandText:='insert   into   .计算机名'+数据库名+'.dbo.'+表名+'   select   *     from   '+trim(form1.edit22.Text);Top

6 楼hnmlb(Raul)回复于 2003-09-03 23:06:26 得分 0

我试一试!你现别走!现场给分!先谢谢!Top

7 楼hnmlb(Raul)回复于 2003-09-03 23:09:33 得分 0

计算机名'+数据库名+'这之间没'.'吗?Top

8 楼hnmlb(Raul)回复于 2003-09-03 23:13:14 得分 0

adocommand5.CommandText:='insert   into   .计算机名'+数据库名+'.dbo.'+表名+'   select   *   from   '+trim(form1.edit22.Text);  
  怎么计算机名前加'.'?  
  在不在????Top

9 楼Drate(小虫(好好学习,天天向上))回复于 2003-09-03 23:21:19 得分 0

adocommand5.CommandText:='insert   into   test.''+str1+''.dbo.''+str2+''   select   *   from   '''+trim(form1.edit22.Text)+'''';   //可能有问题  
   
  在这句代码之后,你加一句  
  showmessage(adocommand5.CommandText);  
  看一看出来的SQL语句是不是能够在“查询分析器”中正确执行吗?Top

10 楼cbdiy(暂无)回复于 2003-09-03 23:23:54 得分 0

应该是  
  计算机名.Top

11 楼hnmlb(Raul)回复于 2003-09-03 23:53:42 得分 0

adocommand5.Connection应该是连到远程计算机上,  
  Top

12 楼XXSingle(心无了然)回复于 2003-09-04 08:17:43 得分 0

应在查询分析器调试过关再执行............  
  adocommand5.CommandText:='insert   into   .计算机名'+数据库名+'.dbo.'+表名+'   select   *   from   '+trim(form1.edit22.Text);  
  好像还不行,要对另一台机子登陆成功以后才行,少了登陆语句Top

13 楼hnmlb(Raul)回复于 2003-09-04 12:19:52 得分 0

我现在先登陆到另一台机子后,再执行link储存过程,再执行insert   into语句,delphi报错说:  
  系统无法再sysservers中找到mlb   server,但是再sysservers中我找到了mlb   (远程计算机名)  
  ?这是怎么回事?  
  请教高手!Top

14 楼hnmlb(Raul)回复于 2003-09-04 12:45:25 得分 0

再sql中也是这样!报的错一样!Top

15 楼tulippopo({**渐进中成长,成长中渐进**})回复于 2003-09-04 12:53:23 得分 0

你先到查询分析器中调试这段代码是否成功,有没有语法错误。  
  在程序执行是看那力报错,我也认为是应该是  
  计算机名.  
  Top

16 楼hnmlb(Raul)回复于 2003-09-04 14:32:40 得分 0

没有语法错误!我在查询分析器中也是这样!  
  现在报的还是系统无法再sysservers中找到mlb   server,但是再sysservers中我找到了mlb   (远程计算机名)  
  ?这是怎么回事?  
   
  Top

相关问题

  • 急呀,一百分在线等待,请求各位大虾帮助我!!!
  • 急!在线等待
  • 急!!!!!!!!!在线等待
  • 急!!!!!!!!!!!!!!!(在线等待)
  • 在线等待,急!!!
  • 急!!!!!!!(在线等待)
  • 急!在线等待!
  • 急!!(在线等待)
  • 急:在线等待!
  • 在线等待——急

关键词

  • 数据库
  • 分析器
  • 计算机
  • 语句
  • 远程
  • 执行
  • 查询
  • adocommand5
  • dbna
  • loginna

得分解答快速导航

  • 帖主:hnmlb

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo