我不确定我的问题是否有答案! 我有一个带有日期列的 MYSQL 表。我想在 C# 中将其作为字符串而不是 MYSQL 日期时间 但问题是我不知道列名称。如果知道列名称我知道该怎么做
SELECT DATE_FORMAT(X, '%Y/%m/%d') AS X FROM Y
但我不知道当我不知道列名称时该怎么办?
最佳答案
我不知道您使用什么 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 表并根据表名称和数据类型进行筛选。
关于c# - MYSQL 获取日期列作为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21261530/