您好,我有以下触发:如何发送一个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。这里是我的更新C#方法(目前不工作)
"UPDATE table 1 SET [email protected], [email protected], @[email protected] WHERE (Id [email protected])";
这里开始的问题,因为我不知道到底如何发送@purpose_channge。
这是我的Web方法。
[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;
}
这里是我的AJAX调用JavaScript。
$.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,转,改等都是$(“#身份识别码”)。VAL()
我知道所有的问题在更新查询,但我不知道该怎么做正确的,我该怎么做?
这'@ purpose_change = @ change'在你的update语句是错误的,'UPDATE'需要将列设置为一个值。 – Habib
不应该是改变= @purpose_change – Steve
我知道,但表1没有更改字段,更改只存在于表2. –