【发布时间】:2021-05-18 09:36:59
【问题描述】:
我想问一下,有没有可能在不更新upper(column_name)的情况下,让列中的每一个插入数据都是大写的?
例如当我插入“mango”然后在列中,SQL Server 会自动显示“MANGO”。
插入小写数据时如何自动大写?
【问题讨论】:
-
您可以使用触发器。例如看这里:bytes.com/topic/sql-server/answers/144862-uppercase-trigger
-
为什么它“重要”?如果它真的很重要,那么使用计算列作为显示值;那么无论有人为数据列插入什么,
'manga','Mango','mANGO','MAngo' 甚至'MaNgO'都将在计算列中显示为'MANGO'。 -
坦率地说-不要。如果您的系统需要一致的字符选择,那么您应该使用约束来强制执行它,并让执行插入/更新的过程(通过错误)知道需要大写。没有什么比在应用程序中做某事并在事后查看 IMO 时看到不同的东西更糟糕的了
-
是的,不要。选择时使用 UPPER()
标签: sql sql-server uppercase