dateTimePicker i MSDE 2000 DB
4 отговора
121 прегледа
dateTimePicker i MSDE 2000 DB
Много ми трябва помощ. Имам проблем с dateTimePicker и SqlInsertCommand.
Става въпрос, че едното поле в таблицата ми е Дата, която се избира от формата. Ползвам тоя код:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Тоя стринг връща грешка. Предполагам защото месеца е на кирилица.
пробвах така:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value.ToShortDateString()+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Тоя стринг връща грешка свързана с '.2004'
Накрая пробвах така:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value.Day+"/"+this.DateTimePicker1.Value.Month+"/"+this.DateTimePicker1.Value.Year+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Но така записва датата 01.1.1900
Моля Ви помогнете! Срещалили ли сте проблема. Всякакви идеи са от полза.
Мерси.
Става въпрос, че едното поле в таблицата ми е Дата, която се избира от формата. Ползвам тоя код:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Тоя стринг връща грешка. Предполагам защото месеца е на кирилица.
пробвах така:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value.ToShortDateString()+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Тоя стринг връща грешка свързана с '.2004'
Накрая пробвах така:
SqlCommand=new SqlCommand("Insert into Table1 values("+this.DateTimePicker1.Value.Day+"/"+this.DateTimePicker1.Value.Month+"/"+this.DateTimePicker1.Value.Year+");", this.SqlConnection1);
SqlCommand.ExecuteNonQuery;
Но така записва датата 01.1.1900
Моля Ви помогнете! Срещалили ли сте проблема. Всякакви идеи са от полза.
Мерси.
Re: dateTimePicker i MSDE 2000 DB
пропертито Value ДейтТайм пикъра е от тип DateTime, нали? Можеш да го направиш с параметризирана заявка, подозирам че ще тръгне.
SqlCommand cmd = new SqlCommand ("INSERT INTO tbl VALUES(@dt));
cmd.Parameters.Add(cmd.NewParameter("@dt", myPicker.Value));
Виж си точно как, че в момента го драсках малко наизуст. Ама така с конкатениране на стрингове не е добре.
SqlCommand cmd = new SqlCommand ("INSERT INTO tbl VALUES(@dt));
cmd.Parameters.Add(cmd.NewParameter("@dt", myPicker.Value));
Виж си точно как, че в момента го драсках малко наизуст. Ама така с конкатениране на стрингове не е добре.
Re: dateTimePicker i MSDE 2000 DB
Точно там е проблема.Можеш да оправиш нещата като използваш overload-натите версии на DateTime.ToString() ,аз за Access-a имах подобен проблем наскоро.Ето как тръгна:
DateTime.ToString("d",System.Globalization.DateTimeFormatInfo.InvariantInfo) - форматира го във вид ммддуууу.
Погледни в MSDN-a на DateTime.ToString Method , там има изброени и опции за форматиране.
DateTime.ToString("d",System.Globalization.DateTimeFormatInfo.InvariantInfo) - форматира го във вид ммддуууу.
Погледни в MSDN-a на DateTime.ToString Method , там има изброени и опции за форматиране.
Re: dateTimePicker i MSDE 2000 DB
Мерси. Ще пробвам и двете идеи и ще ви кажа какво е станало.
Re: dateTimePicker i MSDE 2000 DB
Да стана. Мерси за съвеите. Оправих го като го пуснах с параметър, но пак я имаше врътката с Шорт-Лонг дата стрингa.
SqlCommand.CommandТеьт="Insert into ASDSA values(@Date)";
SqlCommand.Parametars.Add("Date",SqlDbTypes.DateTime,8);
SqlCommand.Parametar["@Date"].Value=this.DateTimePicker1.Value.ToShortDateString();
Мерси
SqlCommand.CommandТеьт="Insert into ASDSA values(@Date)";
SqlCommand.Parametars.Add("Date",SqlDbTypes.DateTime,8);
SqlCommand.Parametar["@Date"].Value=this.DateTimePicker1.Value.ToShortDateString();