以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请问如何把窗口table控件里的表格数据,转成datatable? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=136758) |
-- 作者:houseer -- 发布时间:2019/6/21 7:54:00 -- 请问如何把窗口table控件里的表格数据,转成datatable? 我连接到firebird数据库,读到结果集到了一个窗口的table。怎么把这个放到datatable里? |
-- 作者:有点蓝 -- 发布时间:2019/6/21 9:01:00 -- table本身就对应一个datatable,不能直接用么? tables("窗口1_table1").datatable |
-- 作者:有点甜 -- 发布时间:2019/6/21 10:03:00 -- 以下是引用houseer在2019/6/21 7:54:00的发言:
我连接到firebird数据库,读到结果集到了一个窗口的table。怎么把这个放到datatable里?
不能直接放到datatable的,必须通过窗口的table中转。 |
-- 作者:houseer -- 发布时间:2019/6/21 10:06:00 -- 我就是想问问,怎么中转啊? 现在窗口的的table控件里有数据吧。想把它弄成到一个datatable里 |
-- 作者:有点甜 -- 发布时间:2019/6/21 10:14:00 -- 以下是引用houseer在2019/6/21 10:06:00的发言:
我就是想问问,怎么中转啊? 现在窗口的的table控件里有数据吧。想把它弄成到一个datatable里
1、为什么不能直接用table控件?直接使用它?你需要做什么要用到datatable?
2、你是需要把数据存放到foxtable里面永久保存起来? |
-- 作者:houseer -- 发布时间:2019/6/21 10:35:00 -- 我连接了firebird数据库,得到了一个临时表。然后把这个临时表赋给了一个table控件的datascurce。 这是几行语句: Dim mda As New FirebirdSql.Data.FirebirdClient.FBDataAdapter("se\\ect * from employee" , conn) Dim dt As New System.Data.DataSet() mda.Fill(dt, "TB") e.form.controls("Table1").Table.DataSource = dt.Tables("TB") 现在窗口的table显示是正常了。但是我需要用到table里的数据 和 别的datatable做连接什么的操作。 所以就想着如果这个临时表能弄成一个实体的datatable就好了。 倒不是一定要把这些数据保存起来,最好是加载的时候读取到datatable里,程序关闭再释放,这样在程序运行中就可以引用这个datatable。 否则的话,这些数据应该是以一个临时表的形式存在,这样我似乎没办法把它和其他表做一些连接查询什么的操作。
[此贴子已经被作者于2019/6/21 10:35:54编辑过]
|
-- 作者:有点甜 -- 发布时间:2019/6/21 10:43:00 -- 只要这个窗口不关闭,不是一直可以直接使用?如
Dim dt As DataTable = e.form.controls("Table1").Table.DataTable
|
-- 作者:houseer -- 发布时间:2019/6/26 10:00:00 -- 那样会提示: Property \'DataSource\' is WriteOnly. |
-- 作者:houseer -- 发布时间:2019/6/26 10:32:00 -- 无论是:f.SourceTable = e.form.controls("Table2").Table.DataSource 还是:For Each dr1 As DataRow In e.form.controls("Table2").Table.DataTable 均报上面那个错。
|
-- 作者:有点甜 -- 发布时间:2019/6/26 10:39:00 -- 那你试试
msgbox(e.form.controls("Table2").Table.DataTable.name) msgbox(e.form.controls("Table2").Table.DataTable.datarows.count) |