mysql 存储过程相等_MySQL:当存储过程参数名称与表列名称相同时

假设有一个存储过程SetCustomerName,它有一个输入参数Name,我有一个表名为customer的表客户.

所以在我的存储过程中,我想设置客户的名字.如果我写

UPDATE customers SET Name = Name;

这是不正确的,我还看到了另外两种方式:

UPDATE customers SET Name = `Name`;

UPDATE customers SET customers.Name = Name;

第一个工作,但我没有在文档中找到我可以在`字符中包装参数.或者我在文档中错过了它(在这种情况下链接很受欢迎).

还有什么其他方式,这种情况的标准方式是什么?重命名输入参数对我不利(因为如果你知道我的意思,我有自动对象关系映射).

更新:

并且有一个非常奇怪的事情(至少对我来说):你可以使用反引号:

UPDATE customers SET Name = `Name`;

//or

UPDATE customers SET `Name` = Name;

//or even

UPDATE customers SET `Name` = `Name`;

而且他们都以同样的方式工作.

你觉得这不奇怪吗?这个奇怪的行为是在某处解释的吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值