Sql 有没有办法转换';全部';保存字符串时将其转换为大写
在将字符串写入数据库之前,我需要将所有字符串转换为大写。有没有办法让sql server 2008自动执行此操作?我的意思是,SQLServer2008可以在保存字符串时将其转换为大写吗?或者,我必须按程序进行吗?试试:Sql 有没有办法转换';全部';保存字符串时将其转换为大写,sql,sql-server,sql-server-2008,tsql,Sql,Sql Server,Sql Server 2008,Tsql,在将字符串写入数据库之前,我需要将所有字符串转换为大写。有没有办法让sql server 2008自动执行此操作?我的意思是,SQLServer2008可以在保存字符串时将其转换为大写吗?或者,我必须按程序进行吗?试试: INSERT INTO <Column NAme> VALUES (Upper('Your Value')); 插入值(上限(“您的值”); 除非您可以更改插入和更新,否则您将需要一个触发器 或者,如果使用存储过程,则可以在参数上发出上限 我也会考虑一个区分大小写
INSERT INTO <Column NAme> VALUES (Upper('Your Value'));
插入值(上限(“您的值”);
除非您可以更改插入和更新,否则您将需要一个触发器
或者,如果使用存储过程,则可以在参数上发出上限
我也会考虑一个区分大小写的检查约束,以确保<代码>上(COL)= COLL/CONT>如果您错过任何东西,或者至少一些常规检查
< P>一种方法是通过在表上设置触发器:< /P>create trigger settouppercase
on mytable
instead of insert, update
as begin
delete from mytable where mycolumnid in (select mycolumnid from deleted)
select mycolumnid, upper(mycolumn) as mycolumn into #upcased from inserted
insert into mytable(mycolumnid, mycolumn)
select mycolumnid, mycolumn from #upcased
end
试试这个:
CREATE TRIGGER ToUpperCase
ON tblUsers
AFTER INSERT, UPDATE
AS
BEGIN
UPDATE tblUsers
SET UserName = UPPER(UserName)
WHERE UserId IN (SELECT UserId FROM inserted)
END
需要什么?不区分大小写的排序有用吗?@OMG Ponies:我的客户有点难,他希望这样。我正在使用CI排序,但这不是他想要的。是的,似乎是这样。这对我来说不是一个好办法,但谢谢你,现在我知道没有其他办法了。再次感谢你。