我不确定我的问题是否有答案! 我有一个带有日期列的MYSQL表。我想用C#作为字符串而不是MYSQL日期时间 但问题是我不知道列名。我知道如果知道列名
怎么办SELECT DATE_FORMAT(X, '%Y/%m/%d') AS X FROM Y
但是当我不知道列名时我不知道怎么办?
答案 0 :(得分:0)
我不知道您使用的是什么MySql连接器,但假设它与ADO兼容,则以下内容应该有效:
string dateString;
using (IDbConnection connection = new MySqlConnection()) {
connection.ConnectionString = "YOUR STRING";
connection.Open();
try {
using (IDbCommand command = connection.CreateCommand())
{
command.CommandText = "SELECT DATE_FORMAT(X, '%Y/%m/%d') AS X FROM Y";
using (IDataReader reader = command.ExecuteReader()) {
dateString = reader.GetString(0);
// Alternately you can read the data as a DateTime and use
// .NET's formatting.
//dateString = reader.GetDateTime(0).ToShortDateString();
}
}
}
finally {
connection.Close();
}
}
编辑:
回应您的评论中的说明,请参阅此question。您需要查询information_schema表并过滤表名和数据类型。