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

如何实现用ListBox列出数据库中所有的表名?

楼主xjb258(浑球)2003-10-02 18:03:44 在 C++ Builder / 数据库及相关技术 提问

请教:  
  如何实现用ListBox列出数据库中所有的表名? 问题点数:0、回复次数:6Top

1 楼invalid(空心菜(Python是个好东东,大家多用用!))回复于 2003-10-02 18:14:30 得分 0

ADO:  
  ADOConnection1->GetTableNames(ListBox2->Items,   false);  
  BDE:  
  Database1->GetTableNames(ListBox1->Items,   false);  
  Top

2 楼invalid(空心菜(Python是个好东东,大家多用用!))回复于 2003-10-02 18:15:07 得分 0

第二个参数是表示是否显现系统表。true显示,false不显示Top

3 楼viviandou2(viviandou)回复于 2003-10-09 15:00:32 得分 0

你用什么连接的数据库,就在这个控件上找一个叫做GETTABLENAMES的方法,这个方法需要两个参数,第一个是你要添加到的LIST,第二个是是否添加系统表。  
   
   
  连接数据库的控件->GetTableNames(目标LIST,   是否添加系统表);  
   
   
  其实这个问题很早就有人提出了,你可以多看看论坛上面的问题。  
   
  Top

4 楼huangjuliang(学习,学习,再学习!)回复于 2003-10-09 15:15:04 得分 0

invalid(空心菜)的方法   没错!  
   
  其实这些找一下,csdn里都有的!  
   
  如  
  http://expert.csdn.net/Expert/topic/1935/1935759.xml  
   
  回答的和上面的一模一样!  
   
  Top

5 楼kataboy(老公)回复于 2003-10-09 22:05:34 得分 0

给你一个函数。我自己写的,不错的。  
  bool   ListAllTables(String   strCon,TStrings   *myList,String   strAdr,int   ikind)  
  {  
      bool   br=true;  
      TADOQuery   *myQuery;  
      String   strItem;  
      try  
      {  
          try  
          {  
              myQuery=new   TADOQuery(NULL);  
              myQuery->ConnectionString=strCon;    
              myList->Clear();  
              myQuery->Close();  
              myQuery->SQL->Clear();  
              switch(ikind)  
              {  
                  case   0:  
                  {  
                      if   (strAdr=="")  
                          myQuery->SQL->Text="select   *   from   pp_manager";  
                      else  
                          myQuery->SQL->Text="select   *   from   pp_manager   where   pp_manager_address='"+strAdr+"'";  
                      myQuery->Open();  
                      myQuery->First();  
                      while(!myQuery->Eof)  
                      {  
                          strItem=myQuery->Fields->FieldByName("pp_manager_name")->AsString;  
                          myList->Add(strItem);  
                          myQuery->Next();  
                      }  
                      break;  
                  }  
                  case   1:  
                  {  
                      myQuery->SQL->Text="select   *   from   xh_manager";  
                      myQuery->Open();  
                      myQuery->First();  
                      while(!myQuery->Eof)  
                      {  
                          strItem=myQuery->Fields->FieldByName("xh_manager_name")->AsString;  
                          myList->Add(strItem);  
                          myQuery->Next();  
                      }  
                      break;  
                  }  
                  case   2:  
                  {  
                      myQuery->SQL->Text="select   *   from   yz_manager";  
                      myQuery->Open();  
                      myQuery->First();  
                      while(!myQuery->Eof)  
                      {  
                          strItem=myQuery->Fields->FieldByName("yz_manager_name")->AsString;  
                          myList->Add(strItem);  
                          myQuery->Next();  
                      }  
                      break;  
                  }  
              }  
          }  
          catch(...)  
          {  
              ShowMessage("没有表!");  
          }  
      }  
      __finally  
      {  
          myQuery->Close();  
          delete   myQuery;  
      }  
      return   br;  
  }  
   
  调用方法如下:  
   TStrings   *s;  
      s=new   TStringList();  
      ListAllTables(Dm->ADOCon->ConnectionString,s,Edit2->Text,StrToInt(Edit1->Text));  
      ListBox1->Items->Clear();  
      ListBox1->Items->Assign(s);  
      ListBox1->ItemIndex=0;  
      delete   s;  
   
  大家可以参数一下,改一下。  
   
  Top

6 楼BSC(VirtualCat)回复于 2003-10-10 15:31:36 得分 0

Session->GetTableNames("aa","",False,False,   MyStringList);Top

相关问题

  • 在sqlserver中如何列出数据库中的所有表
  • 如何列出ACCESS数据库的所有的表称
  • 列出access数据库中所有表的名字
  • 如何列出数据库中的表,用C#代码写。
  • 如何列出当前连接数据库中的表格?
  • 在SQL*PLUS里怎样列出数据库里所有的表
  • ========= 如何用PHP 列出 MSSQL 2000 数据库里的表 =======
  • 请给条列出某个数据库所有表及清空数据库所有表的SQL语句
  • delphi怎样列出SQL服务器列表和SQL数据库表名?
  • 请问知道数据库名情况下如何列出数据库所有用户表名?在知道表名的情况下如何列出字段名?

关键词

  • 数据库
  • 系统
  • sql
  • myquery
  • stritem
  • gettablenames
  • listbox
  • stradr
  • mylist
  • fieldbyname

得分解答快速导航

  • 帖主:xjb258

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

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