Ö彨ÀÏʦµÄSQLÈ«½Ç/°ë½Çת»»
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_convert]') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].[f_convert]
GO
/*--È«½Ç/°ë½Çת»»
ת»»ËµÃ÷
È«½Ç×Ö·û´ÓµÄunicode±àÂë´Ó65281~65374
°ë½Ç×Ö·û´ÓµÄunicode±àÂë´Ó 33~126
¿Õ¸ñ±È½ÏÌØÊâ,È«½ÇΪ 12288,°ë½ÇΪ 32
¶øÇÒ³ý¿Õ¸ñÍâ,È«½Ç/°ë½Ç°´unicode±àÂëÅÅÐòÔÚ˳ÐòÉÏÊǶÔÓ¦µÄ
ËùÒÔ¿ÉÒÔÖ±½Óͨ¹ýÓÃ+-·¨À´´¦Àí·Ç¿Õ¸ñÊý¾Ý,¶Ô¿Õ¸ñµ¥¶À´¦Àí
likeµÄʱºò,Ö¸¶¨ÅÅÐò¹æÔò COLLATE Latin1_General_BIN
ÊDZ£Ö¤×Ö·û˳Ðò°´unicode±àÂëÅÅÐò
(´Ëº¯Êý²¿·Ö˼·²Î¿¼ÁËCSDNÉÏ´óÁ¦µÄת»»º¯Êý)
--×Þ½¨ 2005.01(ÒýÓÃÇë±£Áô´ËÐÅÏ¢)--*/
/*--µ÷ÓÃʾÀý
declare @s1 varchar(8000)
select @s1='ÖÐ ¡¡£²-£³£´£µ£¶a£·£¸£Ó£Ô£Õ£Öab£îÖйú£ï£ð£÷£ø£ù£ú'
select dbo.f_convert(@s1,0),dbo.f_convert(@s1,1)
--*/
CREATE FUNCTION f_Convert(
@str NVARCHAR(4000), --Ҫת»»µÄ×Ö·û´®
@flag bit --ת»»±êÖ¾,0ת»»³É°ë½Ç,1ת»»³ÉÈ«½Ç
)RETURNS nvarchar(4000)
AS 
Ïà¹ØÎĵµ£º
DECLARE @HDOC INT --Îĵµ¾ä±ú
DECLARE @XMLSTRING VARCHAR(200) --XML×Ö·û´®
SET @xmlString ='<?xml version="1.0"?>
<ROOT>
<USER ID="1" Name="SBQCEL"/>
<USER ID="2" Name="PEACELI"/>
<USER ID="3" Name="SHEEPCHANG"/>
</ROOT>'
--ʹÓÃϵͳ´æ´¢ ......
ʹÓô¥·¢Æ÷À´ÊµÏÖ
create table test(
id varchar(20),
sname varchar(20)
)
create TRIGGER [test_insert] ON [dbo].[test]
INSTEAD OF INSERT
AS
declare @str varchar(20)
declare @i integer
set @str = 'BV'+left(convert(char,getdate(),112),6)
select @i=isnull(max(cast(right(rtrim(id),len(id)-8 ......
Ò»¡¢½»²æÁ¬½Ó£¨CROSS JOIN£©
½»²æÁ¬½Ó£¨CROSS JOIN£©£ºÓÐÁ½ÖÖ£¬ÏÔʽµÄºÍÒþʽµÄ£¬²»´øON×Ӿ䣬·µ»ØµÄÊÇÁ½±íµÄ³Ë»ý£¬Ò²½ÐµÑ¿¨¶û»ý¡£
ÀýÈ磺ÏÂÃæµÄÓï¾ä1ºÍÓï¾ä2µÄ½á¹ûÊÇÏàͬµÄ¡£
Óï¾ä1£ºÒþʽµÄ½»²æÁ¬½Ó£¬Ã»ÓÐCROSS JOIN¡£
SELECT O.ID, O.ORDER_NUMBER, C.ID, C.NAME
from ORDERS O , CUSTOMERS C
WHERE O.ID=1;
Óï¾ä2£ ......
-----------------------------------------------------
--×÷ÓãºÓÃÓÚsql server 2005 µ¼³öÓû§±íÊý¾Ý×Öµä
--1 ĬÈϵ¼³öµ±Ç°Êý¾Ý¿âÖÐËùÓÐÓû§±í(xtype = 'u')µÄÊý¾Ý×ֵ䣻
--2 ¿ÉÒÔÔÚxtype = 'u'Ìæ»»ÎªÈçÏÂËùʾÓï¾äxtype = 'u' and name in ('son','Person') µ¼³ö×Ô¶¨ÒåµÄ±íµÄÊý¾Ý×ֵ䣻
--3 ¿ÉÒÔÀûÓü¯³É·þÎñSSISµ¼³ ......