SQLTable型Table
如果将窗口中Table控件的类型设为SQLTable,那么就可以用SQl语句从指定数据源中提取数据生成Table。
有关SQL语句,后面会有专门的一章讲述。
例如按照下图所示设置Table控件的属性:
即可从外部数据源nwind中提取产品数据,显示在Table中。
需要注意的是,SQLTable的Select语句只能取一个表的数据,否则出错。
可以不指定数据源,此时从内部数据源中取数据。
需要特别注意的是,如果只想取表的部分列生成SQLTable,那么Select语句必须包括主键列在内,例如:
Select [_Identify], [编号], [名称], [单价], [库存] From {产品}
这里假定产品表是内部数据表,内部数据表的主键列是_Identify,如果是外部表,请使用实际的主键列名称。
SQLTable不仅会生成一个Table,还会生成一个DataTable,名称都是:
窗口名称_控件名称
例如窗口1中插入了一个名为Table1的Table,类型为SQLTable,那么窗口打开后,可以分别通过:
Tables("窗口1_Table1")
DataTables("窗口1_Table1")
来引用其生成的Table和DataTable,这些对象在打开窗口时自动生成,在关闭窗口后将自动删除。
SQLTable可以设置所有的表事件,这是理所当然的,因为它会生成一个全新的DataTable。