こんにちは、私は、次のトリガーがあります。MySQLのパラメータを送信する方法
CREATE TRIGGER `update` AFTER UPDATE ON `table 1`
FOR EACH ROW INSERT INTO table 2 (
Id,
Revision,
Purpose,
Change
)
VALUES
(
OLD.Id,
OLD.Revision,
OLD.Purpose,
@purpose_change /* user variable */
);
$$ DELIMITERを。
私はC#WebService、Ajax、およびJavaScriptを使用しています。私は@purpose_channgeを送信するために正確にどのように知らないので、ここでは(モーメントdoesntの仕事で)更新のための私のC#のメソッド
"UPDATE table 1 SET [email protected], [email protected], @[email protected] WHERE (Id [email protected])";
はここで、問題を開始します。
私のウェブメソッドです。
[WebMethod(EnableSession = true)]
public string ActualizarAlerta(int id, string revision, string purpose, string change, int op)
{
string respuesta = "An Error Has Ocurred.";
try
{
UpdateAlert ua = new UpdateAlert(id, revision, purpose, change);
int resp = conn.UpdateAlerta(ua, op);
if (resp > 0)
respuesta = "Works!.";
}
catch (Exception ex)
{
respuesta = "An Error Has Ocurred: " + ex.Message;
}
return respuesta;
}
ここに私のJavaScriptであるAJAX呼び出しがあります。
$.ajax({
type: "POST",
url: urlServer + "ws_alerts.asmx/ActualizarAlerta",
data: '{' +
'"id":' + id +
',"revision":"' + rev +
'","purpose":"' + pur +
'","change":"' + change +
'","op":' + op + '}',
dataType: "json",
contentType: "application/json",
timeout: 60000,
error: function (xhr) {
bootbox.alert("Ocurrio un error al procesar la peticion.");
},
success: function (data) {
bootbox.alert(data.d);
}
});
ID、REV、変更などはあります$( '#のMYID')。valを()
私はすべての問題は、更新クエリであることを知っているが、私はそれを行う方法を知りません正しく、どうしたらいいですか?
あなたのUPDATE文でこの '@ purpose_change = @ change'前の生のクエリを実行する必要がありますが間違っていると、 'UPDATE'は列に値を設定する必要があります。 – Habib
は変更しないでください@purpose_change – Steve
テーブル1には変更フィールドがありません。テーブル2に変更があるだけです。 –