我已经在互联网上搜索了一段时间了,但我找不到一种方法来获取仅包含列名称的列表。我不关心每列的数据。
我想获取该列表并将其与集合进行比较。我正在使用 VB.NET MySqlConnector。我刚开始使用连接器。
编辑:
Dim mscCMD As MySqlCommand = New MySqlCommand("SHOW COLUMNS FROM OCN.cpu", msc)
Dim sqlReader As MySqlDataReader = mscCMD.ExecuteReader()
Dim b As Integer = 0
Dim c As Integer = 0
While sqlReader.Read
msProjects(c) = sqlReader.**Item**(b)
b += 1
c += 1
End While
没关系,我已经明白了。我必须选择 Item,而不是 getName。
编辑:也许我还没有。它正在读取一行。我不确定如何移动到下一行。例如
mysql> SHOW COLUMNS FROM City;
+------------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+----------+------+-----+---------+----------------+
**Id | int(11) | NO | PRI | NULL | auto_increment**
| Name | char(35) | NO | | | |
| Country | char(3) | NO | UNI | | |
| District | char(20) | YES | MUL | | |
| Population | int(11) | NO | | 0 | |
+------------+----------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
这就是它读取的行。一旦超过第 5 项,您就出界了。
最佳答案
您可以使用结果集中的元数据:
final ResultSet rs = statement.executeQuery("SELECT * FROM `" + tableName +"` LIMIT 0,1;");
final ResultSetMetaData metaData = rs.getMetaData();
for(int i=1; i<metaData.getColumnCount(); i++)
{
System.out.println("" + metaData.getColumnName(i));
}
此外,您还可以通过相同的方式获取 java.sql.Types 列类型。
关于mysql - 仅获取列名称列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30272250/