Доброе утро, у меня из бд отображается datagridView, проблема в том что последний столбец является типом datetime и обратно из грида в бд он не парсится кидает exception
Необработанное исключение типа "System.Data.SqlClient.SqlException" в System.Data.dll
Дополнительные сведения: Conversion failed when converting date and/or time from character string.
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string sqlExpression = string.Format(
"Insert into XmlTable (FileVersion, FileName, DateChanged) values ('{0}', '{1}', '{2}')",
row.Cells[0], row.Cells[1], row.Cells[2];
SqlCommand command = new SqlCommand(sqlExpression, connection);
command.ExecuteNonQuery();
}
}
в гриде это поле выглядит так 21.12.16 т е через точку пробывал добавить .ToString().Replace('.','-')); не помогло. Ячейка с datetime находится в позиции {2} проверял Эта кнопка последняя все работает сегодня сдаю
Для начала общий ответ: Почитайте про форматы даты и времени в SQL Server в этой статье, вам станет понятно, откуда растут ноги у вашей проблемы:
https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql
Теперь более конкретный ответ:
Если вы хотите импортировать значения именно так, то генерируйте вместо "'{2}'" такую строчку: "convert(date, '''{2}''', 4)" - так вы явно укажете СУБД, в каком формате ваша дата и как ее надо распознавать.
Альтернатива вашему решению - передача полного XML внутрь запроса и парсинг его уже методами T-SQL - этот диалект языка достаточно давно умеет парсить XML.
В datagridView поменяйте формат даты на месяц/день/год",потом при чтении этого поля можете напиать вот так!
string date = "12.28.16";
DateTime dt = Convert.ToDateTime(str);
В вашем же сличайи Convert.ToDateTime(row.Cells[2])
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости