将datetimepicker值插入SQL Server 2008

bud*_*ddy 0 c# sql winforms

我正在尝试将datetimepicker值中的值插入SQL Server表.

我的桌子看起来像这样

Profile (Id, Name,..., DateofBirth(date)...)
Run Code Online (Sandbox Code Playgroud)

我试过这个将datetime picker值转换为

string dt = dateTimePicker.Value.ToString("yyyy-mm-dd hh:MM:ss");

Insert into profile (id, DateofBirth)  
values(id,  CONVERT(datetime, CONVERT( varchar(11), dt, 101));
Run Code Online (Sandbox Code Playgroud)

也用这个

var date = new DateTime(dateTimePickerText);
Run Code Online (Sandbox Code Playgroud)

也用这个

DateTime date = DateBox.Value.Date;
string sDate = date.ToString("dd-MM-yy", System.Globalization.CultureInfo.InvariantCulture);
DateTime dateInsert = Convert.ToDateTime(sDate); 
Run Code Online (Sandbox Code Playgroud)

但无法将日期插入数据库.第2,如何从数据库中检索日期?

ada*_*ost 10

你必须要使用SqlParameter.

 sql="Insert into profile (id, DateofBirth) values (@id,@DateofBirth)";
    using(SqlCommand cmd=new SqlCommand(sql,conn))
     {
        cmd.Parameters.Add("@id",SqlDbType.Int).Value=10;
        cmd.Parameters.Add("@DateofBirth",SqlDbType.DateTime).Value=dateTimePicker.Value;

        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
     }
Run Code Online (Sandbox Code Playgroud)