Как показать только месяц и год даты в DataColumn of Datatable? - PullRequest
1 голос
/ 01 июля 2010

Я заполняю один DataGridView в приложении C # Windows.У меня есть одна таблица данных, в которой я отображаю даты, которые я получаю из базы данных.Моя проблема в том, что даты, которые я получаю из базы данных, также включают информацию о времени.Например: январь 2003 г., 12:00:00.

Я хочу показать только часть года и месяца (январь 2003 г.) этой даты в ячейках данных.Я пытался изменить информацию о культуре текущего потока, но это не сработало.Есть ли другой способ добиться этого?

Я использую MySQL в качестве своей базы данных и там я установил тип данных этого столбца как DATE, но я все еще получаю информацию о времениКто-нибудь может объяснить это поведение MySQL, а?

Ответы [ 3 ]

1 голос
/ 01 июля 2010

Если вы предпочитаете делать это на уровне SQL, вы можете сделать это по своему выбору;

select convert(varchar(max),getdate(),107) as thedate

Я бы всегда рекомендовал не абстрагировать данные и разрешить представлению данных делать косметику, однако.

1 голос
/ 01 июля 2010

Установите для свойства Формат в столбце значение Спецификатор формата месяца / года :

// Set the Format property on the "Last Prepared" column to cause
// the DateTime to be formatted as "Month, Year".
dataGridView1.Columns["Last Prepared"].DefaultCellStyle.Format = "y";
0 голосов
/ 01 июля 2010

Спасибо всем. Я решил свою проблему, изменив свой запрос. Я использовал функцию date_format () MySql, которая дала мне точный формат. Вот ссылка, которая дает больше информации об этой функции.

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

...