阅 读 文 章

Linux上的DB2中生成动态数据输入表单

[来源:网上转载 () | 作者:网友() | 时间:2007-07-07 | 浏览:人次 ]

使用该字段定义元数据,您就可以遍历单独的字段定义,将字段的名称放置在 TCheckListBox 中(您还可以包括该字段的类型,但是,该类型您在下一步中才会用到,即,在为选定的字段创建适当的数据感知控件时才会用到)。

检索字段定义并更新 TCheckListBox 的源代码片段如下所示:

 

   procedure TForm1.SelectTableClick(Sender: TObject);  var  i: Integer;  begin  ClientDataSet1.Active := False;  SQLDataSet1.CommandType := ctTable;  if ListBox1.ItemIndex >= 0 then  SQLDataSet1.CommandText := ListBox1.Items[ListBox1.ItemIndex];  SQLDataSet1.FieldDefs.Update; // get meta information  CheckListBox1.Clear;  for i:=0 to Pred(SQLDataSet1.FieldDefs.Count) do  CheckListBox1.Items.Add(SQLDataSet1.FieldDefs[i].Name)  end;
  

注意,在添加新的字段名之前,应该清除 TCheckListBox,这样,最终用户就可以连续双击不同的表名,查看每次出现在 TCheckListBox 表中的新的字段列表。

以下截屏显示了第一次双击位于表单左边 TListBox 中的 EMPLOYEE 表的效果,然后,可以检查复选框,获得位于表单右边的 TCheckListBox 表中的前 11 个字段。

 

 

图 3. 元数据:表和字段

下一步是生成 SQL 语句,只选择指定表(本例中是 EMPLOYEE)中复选的字段,然后在数据格以及数据感知控件中显示结果。

Meta Data TabSheet 由左边的 TListBox 控件和右边的 TCheckListBox 控件组成,前者将用 DB2 UDB SAMPLE 数据库表中的表名进行填充,后者将用已选定表中的有效字段名进行填充。

Generate 按钮将准备并执行 SQL 语句,将由此产生的数据放入一个窗格中(在 Data Grid 选项卡上),或者放入单独的数据感知控件中(在 Data Controls 选项卡中)。

检索 TableNames

首先要做的事情是检索数据库中的可用表名。假定 SQLConnection 组件可以建立到 DB2 UDB 数据库的连接(在本例中,是 SAMPLE 数据库或其他任何数据库),您只能显式打开连接,然后,您可以调用 GetTableNames 方法。该方法期望将 TStrings 变量作为第一个参数。而不是声明并使用我们自己的 TStringList 作为第一个参数,您可以直接将结果分配给 ListBox 的 Items 属性,如下面代码片段所示:

论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 输入 数据 动态 生成 组件 可以 数据库 控件 TCheckListBox

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.