0

こんにちは、ウィンドウからデータベースにポイントを更新しようとしていますが、データベースから「ポイント」フィールドに挿入される変数「totalPoints」から情報を取得する方法がわかりません

using (OleDbConnection conn = new OleDbConnection(strCon))
        {
            String sqlPoints = "UPDATE points FROM customer WHERE [customerID]="
            + txtCustomerID.Text;
            conn.Open();


            conn.Close();
        }

助けてくれてありがとう!

4

1 に答える 1

3

まず、パラメータ化されたクエリを使用する必要があります。これは SQL インジェクションに対して脆弱です。

こちらをご覧ください:パラメータ化されたクエリは SQL インジェクションに対してどのように役立ちますか?

あなたの質問に答えるには、次のことを調べる必要がありOleDbCommandますExecuteNonQuery

public void InsertRow(string connectionString, string insertSQL)
{
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        // The insertSQL string contains a SQL statement that
        // inserts a new row in the source table.
        OleDbCommand command = new OleDbCommand(insertSQL);

        // Set the Connection to the new OleDbConnection.
        command.Connection = connection;

        // Open the connection and execute the insert command.
        try
        {
            connection.Open();
            command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
}

http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbconnection(v=vs.100).aspx

また、SQL を再確認する必要があるかもしれません。何を達成しようとしているのかわかりません。SQL Server を使用している場合、構文は次のようになりますUPDATE TABLE SET FIELD = VALUE WHERE FIELD = VALUE

幸運を。

于 2013-01-12T22:33:54.147 に答える