使用PATINDEX()判断含有[A-Z]、[a-z]、[0-9]之外的字符
SELECT PATINDEX('%[^A-Z,^a-z,^0-9]%', [Field]) FROM [TableName]
另外,可以给表[user]的字段[name]增加约束[CHK_user_name],比如不含#和|的特殊字符。
ALTER TABLE [dbo].[user] WITH CHECK ADD CONSTRAINT [CHK_user_name] CHECK ((patindex('%[#|]%',[name])=(0)))
GO