如何发送MySQL参数
本文关键字:参数 MySQL 何发送 | 更新日期: 2023-09-27 17:59:07
你好,我有以下触发器:
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 */
);
$$分隔符;
我使用的是C#WebService、Ajax和JavaScript。以下是我的C#更新方法(目前不起作用)
"UPDATE table 1 SET Revision=@revision, Purpose=@purpose, @purpose_change=@change WHERE (Id =@id)";
问题从这里开始,因为我不知道如何发送@objective_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;
}
这是我的JavaScriptwithAJAX调用。
$.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、change等为$('#MyId').val()
我知道所有的问题都在更新查询中,但我不知道如何正确处理,我该怎么做?
这是一个mysql用户变量,必须在UpdateAlerta()
之前运行原始查询
SqlCommand cmd = new SqlCommand("set @purpose_change = 'Purpose change to 1';", conn);
cmd.ExecuteNonQuery();
ps(我记得这里还有一个相关的问题)