簡體   English   中英

從兩個文本框中插入日期和時間

[英]Inserting Date and time from two text boxes

從兩個單獨的文本框中插入日期和時間。 並串聯以保存到數據庫。 我已經看到了許多有關datetime轉換的示例,但沒有任何線索。 提前感謝

DateTime Datetime = Dateconversion.ConvertToDate(txtDate.Text.Trim());
DateTime time = Convert.ToDateTime(txtTime.Text);
insert into table(date) values('"+Datetime+" "+time+"')

首先 ,永遠不要直接在用戶輸入上使用Convert.ToDateTime,因為當輸入不可轉換為日期時間時,它將引發異常。
而是使用DateTime.TryParseDateTime.TryParseExact.

其次 ,不要串聯字符串來創建sql語句,因為它是sql注入攻擊的門戶。 請改用參數化查詢

您的代碼應如下所示:

DateTime DateTimeValue;
string DateTimeString = txtDate.Text.Trim() +' '+ txtTime.Text.Trim();
if(DateTime.TryParse(DateTimeString, out DateTimeValue))
{
    using(SqlConnection con = new SqlConnection("ConnectionString")) {
        SqlCommand cmd = new SqlCommand("insert into table(date) values(@Value)", con);
        cmd.Parameters.Add("@Value", SqlDbType.DateTime).value = DateTimeValue;
        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();
    }
}

我建議您先將字符串連接起來,然后再將其轉換為日期時間對象。

https://msdn.microsoft.com/zh-CN/library/8kb3ddd4(v=vs.110).aspx

希望對您有所幫助。請使用TryParseExact,請勿將用戶輸入的內容直接轉換為日期時間,否則可能導致嚴重問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM