проблема с сохранением даты в mysql из asp.net

#c#

#c#

Вопрос:

Я пытаюсь сохранить дату в mysql из jquery * DatePicker * из C #

 string datetime = txtDate.Text   " "   time;//05/11/2011 5:30 pm                    

string getSQL1 = 
   "INSERT into tblconcertdetail 
   (Address, City, Pincode, Country, Concert_Date) 
   VALUES ('"   addr   "','"   txtCCity.Text   "','"   txtCpincode.Text   "','"  
   ddlCCountry.SelectedItem.Text   "','"   Convert.DateTime(datetime)   "')";
  

Здесь getsql1 показано заполненное поле даты, но в базе данных оно сохраняет значение 0000-00-00 00:00.
Я не понимаю, почему это так.

Я также пытаюсь convert.ToString(datetime) .

Комментарии:

1. Вау. Это подвержено SQL-инъекциям. Никогда не создавайте запросы путем объединения текста вместе. Вместо этого используйте параметры.

2. Использование параметров при предотвращении атак SQL-инъекций также делает код более читаемым, по крайней мере, для меня. Я мог бы сразу увидеть переданные параметры, их значения и, при необходимости, типы данных. Вот хорошая статья о параметрах. java2s.com/Code/CSharp/Database-ADO.net /…

Ответ №1:

Как упоминалось в комментариях, вы должны использовать параметры по двум причинам:

  1. Предотвращение SQL-инъекций.
  2. Обрабатывать преобразования типов данных. В вашем случае обработка .NET DateTime введите эквивалентное значение в базе данных.