可以把要查的表加载到datatable里边 foreach(DataTable mytable in this.dataset.tables) { MessageBox.show(mytable.name);//我记不清了是不是name,反正应该有这一类的属性 } foreach(DataCollum mycollum in this.dataset.tables[0].collums) { MessageBox.show(mycollum.name);// }
正确的应该是这样可以遍历出来 foreach (DataColumn mycollum in ds.Tables[0].Columns) { MessageBox.show(mycollum.ColumnName);// }
1楼的方法也可以 在OleDbConnection里边有的
那我的这个表不在dataset里,要填充到dataset里咯?
连接自己定义吧! this.oleDbConnection1.Open(); DataTable schemaTable = oleDbConnection1.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Columns, new object[]{null, null, null,null}); System.Data.DataRowCollection drc=schemaTable.Rows; foreach(DataRow dr in drc) { this.TextBox1.Text+=dr["COLUMN_NAME"]+":"+dr["DESCRIPTION"].ToString()+"\r\n"; }
要是有表 就遍历表就可以了 foreach (DataColumn mycollum in dt.Columns) { MessageBox.show(mycollum.ColumnName); }
Oledb连接Access,读到datatable,中遍历datatable.columns
遍历ACCESS所有表 <% strConn="DBQ="+server.mappath("tmp_bbsdata.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};" set objConn=server.createobject("Adodb.connection") objConn.open strConn set rsSchema=objConn.openSchema(20) rsSchema.movefirst Do Until rsSchema.EOF if rsSchema("TABLE_TYPE")="TABLE" then response.write rsSchema("TABLE_NAME") & "<br>" end if rsSchema.movenext Loop set objConn=nothing %>
通过架构或者是遍历表 foreach (DataColumn mycollum in ds.Tables[0].Columns) { MessageBox.show(mycollum.ColumnName);// }
SqlConnection conn;
conn.GetSchema();
...可以
foreach(DataTable mytable in this.dataset.tables)
{
MessageBox.show(mytable.name);//我记不清了是不是name,反正应该有这一类的属性
}
foreach(DataCollum mycollum in this.dataset.tables[0].collums)
{
MessageBox.show(mycollum.name);//
}
foreach (DataColumn mycollum in ds.Tables[0].Columns)
{
MessageBox.show(mycollum.ColumnName);//
}
this.oleDbConnection1.Open();
DataTable schemaTable = oleDbConnection1.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Columns, new object[]{null, null, null,null}); System.Data.DataRowCollection drc=schemaTable.Rows;
foreach(DataRow dr in drc)
{
this.TextBox1.Text+=dr["COLUMN_NAME"]+":"+dr["DESCRIPTION"].ToString()+"\r\n";
}
foreach (DataColumn mycollum in dt.Columns)
{
MessageBox.show(mycollum.ColumnName);
}
遍历ACCESS所有表
<%
strConn="DBQ="+server.mappath("tmp_bbsdata.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
response.write rsSchema("TABLE_NAME") & "<br>"
end if
rsSchema.movenext
Loop
set objConn=nothing
%>
foreach (DataColumn mycollum in ds.Tables[0].Columns)
{
MessageBox.show(mycollum.ColumnName);//
}
是一个datateble实例先select * 到一个datateble中 然后遍历这个dt中的列 取它的列名