用于读取第一行中的所有列的SQL命令

我有一个Excel工作表,其中第一行包含所有列的标题。 我想要第一行的所有名字。

什么是读取第一行所有条目的SQL命令?

如果可能,我想定义最大限制。

另外:我想枚举所有的列名。

这在Excel中使用已保存的工作簿,并枚举列(字段)名称。

Sub ListFieldADO() strFile = Workbooks(1).FullName strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFile _ & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";" Set cn = CreateObject("ADODB.Connection") cn.Open strCon ''You can also use the name of a named range Set rs = cn.OpenSchema(adSchemaColumns, _ Array(Empty, Empty, "Sheet1$")) While Not rs.EOF Debug.Print " " & rs!Column_Name rs.MoveNext Wend rs.Close Set rs = Nothing End Sub 

你需要提到“HDR = No” 在你的连接string。 那么你可以使用下面的查询:

 Select Top 1 * from [SheetName$] 

“HDR = No”将指定第一行不包含列名称。

据说,我不知道是否有一个SQL语句从表中获取列名。 如果存在,则可以在连接string中使用HDR = Yes,并使用该SQL语句。

我希望我理解这个权利….但我想你是说你想从表中select列名称:

 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = [YourTableName] 
 Select Top 1 * into #temp from [SheetName$] use tempdb sp_help #temp. 

通过这个,你可以得到#temp表的列名。 再次,您必须将数据库更改为:

 use yourDBName 

把数据放在一个临时表中,读取临时表的属性,从中可以得到列名的列表。