My code is as follows:-
private void Form1_Load(object sender, EventArgs e)
{
maskedTextBox1.Mask = "00/00/0000";
maskedTextBox1.ValidatingType = typeof(System.DateTime);
maskedTextBox1.TypeValidationCompleted += new TypeValidationEventHandler(maskedTextBox1_TypeValidationCompleted);
toolTip1.IsBalloon = true;
}private void btn_submit_Click(object sender, EventArgs e)
{
string str = "insert into dates values(@discharge_date,@Discharge_Advice)";
SqlCommand cmd;
cmd = new SqlCommand(str, con);
cmd.Parameters.AddWithValue("@discharge_date", SqlDbType.Date).Value = Convert.ToDateTime(maskedTextBox1.Text);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("Records inserted");
}
private void btn_retreive_Click(object sender, EventArgs e)
{
dtusers.Clear();
SqlDataAdapter da = new SqlDataAdapter("select * from dates where discharge_date= CONVERT(smalldatetime, '" + maskedTextBox1.Text + "', 103) ", con);
SqlCommandBuilder cmd = new SqlCommandBuilder(da);
da.Fill(dtusers);
dataGridView1.DataSource = dtusers;
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
}
alan kumarPosted Oct 8, 2013, 6:43 AM
The correct answer is as follows:-
SqlDataAdapter da = new SqlDataAdapter("select convert(nvarchar,discharge_date,103),discharge_advice from dates where discharge_date= CONVERT(smalldatetime, '" + maskedTextBox1.Text + "', 103) ", con);
Prasenjit DeyPosted Oct 7, 2013, 5:06 AM
DateTime dt = Convert.ToDateTime(maskedTextBox1.Text).Date;
Suresh BabuPosted Oct 7, 2013, 4:50 AM
DateTime dateOnly = Convert.ToDateTime(dt.ToString("dd-MM-yyyy"));
this is also correct formate
Veena SardaPosted Oct 7, 2013, 4:43 AM
// Get date-only portion of date, without its time.
DateTime dateOnly = dt.Date;
Then use the variable dateOnly to insert into database.
Suresh BabuPosted Oct 7, 2013, 4:23 AM