Уже есть ответы, которые должны достичь того, что вы хотите; но мне интересно, почему вы не положили NULL в базу данных для начала? В sqlite3 «datetime» более или менее просто строка (в столбце datetime нет ничего особенного, поскольку sqlite3 - это просто тип afinity, а не привязка типа), поэтому вы просто вставляете NULL в этот столбец. И если вы хотите иметь минимальное значение datetime при запросе, вы можете легко выполнить такой запрос, как
отаю над приложением записи имени, и информация хранится в базе данных SQLite. Все столбцы в базе данных являются типами TEXT, за исключением столбца даты рождения, который является DATETIME. Исходная база данных Access, которую я перенес в базу данных SQLite, допускала нулевые значения для даты рождения, поэтому, когда я скопировал ее, я установил для всех нулевых значений значение DateTime.MinValue.
В моем приложении столбец даты рождения отформатирован так:
DataGridViewTextBoxColumn dateOfBirth = new DataGridViewTextBoxColumn();
dateOfBirth.HeaderText = "DOB";
dateOfBirth.DataPropertyName = "DateOfBirth";
dateOfBirth.Width = 75;
dateOfBirth.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
dateOfBirth.DefaultCellStyle.Format = "MM/dd/yyyy";
Моя проблема в том, что в строках, где нет даты рождения, в базе данных есть DateTime.MinValue, которая отображается в моем DataGridView как 01.010001.
Я ищу способ заменить 01/01/0001 пустой строкой ("") в моем DataGridView.
private void resultsGrid_DateFormatting(object sender, System.Windows.Forms.DataGridViewCellFormattingEventArgs e)
{
if(resultsGrid.Columns[e.ColumnIndex].Name.Equals("DateOfBirth"))
{
if ((DateTime)(resultsGrid.CurrentRow.Cells["DateOfBirth"].Value) == DateTime.MinValue)
{
// Set cell value to ""
}
}
}
Кто-нибудь есть идея, как я могу заменить DateTime.MinValue в моем DataGridView с пустой строкой? Спасибо!
Редактирование: приведение значения ячейки с помощью DateTime позволяет использовать оператор if, который мне нужен, но я до сих пор не могу понять, как заменить MinValues пустой строкой.