sql >> データベース >  >> RDS >> Sqlserver

SQL Server 2005 datetime c# に日付と時刻を挿入するときにエラーが発生しましたか?

    常にする必要があります パラメータ化を使用 クエリ - これにより、SQL インジェクション攻撃が防止され、パフォーマンスが向上し、データをデータベースに挿入するためだけに不要なデータの文字列への変換が回避されます。

    次のようにしてみてください:

    // define your INSERT query as string *WITH PARAMETERS*
    string insertStmt = "INSERT into survey_Request1(sur_no, sur_custname, sur_address, sur_emp, sur_date, sur_time, Sur_status) VALUES(@Surname, @SurCustName, @SurAddress, @SurEmp, @SurDate, @SurTime, @SurStatus)";
    
    // put your connection and command into "using" blocks
    using(SqlConnection conn = new SqlConnection("-your-connection-string-here-"))
    using(SqlCommand cmd = new SqlCommand(insertStmt, conn))
    {
        // define parameters and supply values
        cmd.Parameters.AddWithValue("@Surname", textBox9.Text.Trim());
        cmd.Parameters.AddWithValue("@SurCustName", textBox8.Text.Trim());
        cmd.Parameters.AddWithValue("@SurAddress", textBox5.Text.Trim());
        cmd.Parameters.AddWithValue("@SurEmp", textBox1.Text.Trim());
        cmd.Parameters.AddWithValue("@SurDate", dateTimePicker2.Value.Date);
        cmd.Parameters.AddWithValue("@SurTime", dateTimePicker2.Value.Time);
        cmd.Parameters.AddWithValue("@SurStatus", "Active");
    
        // open connection, execute query, close connection again
        conn.Open();
        int rowsAffected = cmd.ExecuteNonQuery();
        conn.Close();
    }
    

    テキストボックスに名前を付けることもお勧めします より表現力豊かな名前で。 textbox9 textboxSurname がどのテキストボックスかはわかりません。 かなり




    1. 不正な文字列オフセット'name'laravel

    2. PostgreSQLクエリキャッシングと負荷分散の概要

    3. ComboBox.ValueMemberおよびDisplayMember

    4. 1つのスクリプトで複数のトリガーを作成する方法はありますか?