MYSQL将Date列作为字符串

时间:2014-01-21 14:55:27

标签: c# mysql

我不确定我的问题是否有答案! 我有一个带有日期列的MYSQL表。我想用C#作为字符串而不是MYSQL日期时间 但问题是我不知道列名。我知道如果知道列名

怎么办
SELECT DATE_FORMAT(X, '%Y/%m/%d') AS  X FROM Y  

但是当我不知道列名时我不知道怎么办?

1 个答案:

答案 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表并过滤表名和数据类型。