我在Delphi 7 中用dbexpress 中的SQLConnection控件连接sql server 2000 数据库后,无法用 getTableNames()返回数据库中的表名列表,别的正常(执行SQL语句),为什么呢?

解决方案 »

  1.   

    怎么可能呢:
    MyTables:=TStringlist.Create ;
    AdoConnection1.GetTableNames(MyTables);
    if not (MyTables.IndexOf('你要查找的表名')=-1) then 
      //这是存在
    else
      //这是不存在
      

  2.   

    我这样做
    MyTables := TStringlest.create;
    AdoConnection1.GetTableNames(MyTables);
    for i := 0 to MyTables.Count - 1 do
      listbox1.items.add(MyTables.strings[i]);结果是什么都没有列出来
    我想是不是系统文件出错了
    我用的是盗版
      

  3.   

    不可能是系统的问题
    是你for i := 0 to MyTables.Count - 1 do
      listbox1.items.add(MyTables.strings[i]);
    可能是你这一段出错了,你先列一个试试:edit1.text:=mytables[0];
      

  4.   

    你检查一下是不是那儿的数据属性没有设置对,要不你就先用数据集控件做,看看能不能实现,然后在改用ADO来连接
      

  5.   

    我用的是 dbexpress 控件面板的 SQLConnection 控件
    用ADO是可以的