以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  fill出来的datatabe怎样才能获取到列长度?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=171148)

--  作者:liuzhou
--  发布时间:2021/8/19 18:47:00
--  fill出来的datatabe怎样才能获取到列长度?
正常的内部表,使用maxlength能获取到列长度,但fill后生成的或者sqlcommand生成的datatable,得到的长度值都是-1.
请问怎样解决?谢谢

--  作者:有点蓝
--  发布时间:2021/8/19 20:25:00
--  
Fill的isquery参数必须是false才行,查询表是不会返回表架构的。
Tables("窗口2_Table1").Fill("select * from {DD}","t",false)

同样SQLCommand要使用True模式
Dim cmd As New SQLCommand
cmd.Connecti
cmd.CommandText = "SELECT * From {DD}"
Dim dt As DataTable  = cmd.ExecuteReader(True)
msgbox(dt.DataCols("第一列").MaxLength)