ALTER VIEW view_name WITH SCHEMABINDING AS
SELECT ***
必须使视图使用SCHEMABINDING选项
CREATE UNIQUE CLUSTERED INDEX ivCustomerOrders
ON view_name(col1,col2);
update and select
UPDATE tblSearchOutput SET tblSearchOutput.outputName = tblEntityField.Description
FROM tblEntityField
join tblSearchOutput on tblSearchOutput.EntityFieldId = tblEntityField.EntityFieldId
WHERE tblEntityField.entityId = 1
1. 查询表中的字段定义
SELECT name FROM syscolumns WHERE (id = (SELECT id FROM sysobjects WHERE (name = '这里写你的表名')))
ALTER TABLE tableA
ALTER COLUMN cola nvarchar(100) COLLATE Chinese_PRC_CS_AS
select * from tableA where cola = 'test'
b) 修改查询SQL
select * from tableA where cola collate Chinese_PRC_CS_AS_WS = 'test'
c) 修改数据库属性
alter database 数据库 COLLATE Chinese_PRC_CS_AS
d) 创建如下用户自定义函数(UDF)
CREATE FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
--ALTER FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
RETURNS INTEGER
AS
BEGIN
DECLARE @i INTEGER
--DECLARE @Str1 VARCHAR(50)
--DECLARE @Str2 VARCHAR(50)
DECLARE @y INT
--SET @Str1='a'
--SET @Str2='A'
SET @i=0
--SELECT ASCII(SUBSTRING(@Str1,@i+1,1))
SET @y=1
DECLARE @iLen INT
SET @iLen = LEN(LTRIM(RTRIM(@Str1)))
IF LEN(LTRIM(RTRIM(@Str1))) < LEN(LTRIM(RTRIM(@Str2))) --THEN
SET @iLen = LEN(LTRIM(RTRIM(@Str2)))
WHILE (@i < @iLen)
BEGIN
IF (ASCII(SUBSTRING(@Str1,@i+1,1))=ASCII(SUBSTRING(@Str2,@i+1,1))) --THEN
SET @i = @i +1
ELSE
BEGIN
SET @y=0
BREAK
END
END
RETURN @y
END
测试:
select * from Table1 Where dbo.StrComp(Field1,'aAbB') =1