繁体   English   中英

SQL Server触发器更新同一张表

[英]SQL Server trigger to update the same table

我有一个SQL Server表,该表的varchar列最多可以保存4个字符

当我们在此列中插入值963时,必须在该列中添加前导“ 0”
例如:

  • 如果我插入23,则该值应另存为0023
  • 如果我插入236,则该值应另存为0236
  • 如果我插入2369,则该值应另存为2369

我们是否可以向该表添加AFTER触发器,以检查插入的值是否小于4位,并更新该列中的相同值,并在该值后附加前导“ 0”

这会影响触发器的性能吗? 有一个触发器来更新同一表中的值是一种好习惯吗?

是的,您可以创建一个触发器,并且一次操作几乎不会影响性能。
另一种方法是在select中使用时更改值。 例如

select right('0000' + column, 4), ....

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM