问题1.
不太明白你的意思,分主单位和次单位,是怎么分法? 最好能举例说明一下.
问题2.
来自不同的数据库,只要这些数据库在同一个SQL实例下,那么只需要在表名前加上库名及所有者就可以了.例如: select * from 库1.dbo.表1
既然是用的sql 2000,那就不存在不能在delphi中用的问题. 
退一步来讲,你还可以将代码封装成存储过程,直接调用

解决方案 »

  1.   

    谢谢邹建
    第一个问题我已经知道了。
        第二个问题是这样的,我在Sever200里挂了两个库,库A和库B,分别用ADOConnection1和ADOConnection2来连接库A和库B。连接时双击ADOConnection1,通过use  Connection String  来接连。
        当我用上“ADOQuery1.Sql.Add('Select A.*,B.* From ADOConnection1.Table1 A Inner Join ADOConnection2.Table2’)”时,就报错“对象名无效”或别的错误。ADOQuery1的Connection已定为“connection1”。请问你怎样写才正确。
      

  2.   

    没必要用两个连接,用一个连接就可以了.比如,连接到A库,就用这样的语句:select a.*,b.* from table1 a join 库B..table2 b on ...连接到B库,就用这样的语句:select a.*,b.* from 库A..table1 a join table2 b on ...
    连接到其他库,就用这样的语句:select a.*,b.* from 库A..table1 a join 库B..table2 b on ...
      

  3.   

    很对不起,邹建兄,搞不定。
    我把我的做法仔细说给你,See where 我弄错了?
    1、 在Delphi中开一个新的Application.
    2、 在窗口中放一个ADOConnection。
    3、 双击ADOConnection
    4、 选中Use Connection String
    5、 选Build
    6、 选Microsoft OLE Provider For Sql Sever
    7、 “下一步”
    8、 选“使用Windows Nt 集成安全设置”,因为安装SQL时选的是用Windows登录。
    9、 在“在服务器上选择数据库”,如master
    10、 测试连接,并成功
    11、 确定,确定,OK
    12、 使ADOConnection,的Connection为True
    13、 放一个ADOQuery1,
    14、 设置ADOQuery1的Connection   为 ADOConnection1
    15、 设置一个Button
    16、 双击Button写下如下代码:
            ADOQuery1.Close;
            ADOQuery1.SQL.Clear;
            ADOQuery1.Sql.Add(‘Select * from Msreplication_Options’);
            ADOQuery1.Open;
            成功。但如果是(‘Select * From Pubs.authors’)则提示“对象名‘Pubs.authors’无效”
         邹建兄,请你指点一下,什么地方不对了。万分感谢!!
             
      

  4.   

    你没看清楚我写的示例,是两个点,不是一个点.
    Select * From Pubs..authors
      

  5.   

    9、 在“在服务器上选择数据库”,如master   --选择pubs(你要操作的数据库)Select * From Pubs.authors写成Select * From authors如果(9)不改,可以Select * From Pubs..authors