日期:2012-06-27 04:57:00 来源:本站整理
SQL 特别语句(学习笔记)[MSSQL防范]
本文“SQL 特别语句(学习笔记)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
【1】 以XML 返回
(1)未定义属性的
select logisticsId,logisticsName from LogisticsCompany for xml auto,elements
(2)定义属性节的
复制代码 代码以下:
SELECT TOP 21 AS Tag,
NULL AS Parent,
title_id AS [titles!1!title_id],
title AS [titles!1!title!element],
type AS [titles!1!type]
FROM
titles
FOR XML EXPLICIT
【2】处理大批量数据的增添
复制代码 代码以下:
CREAT PROCEDURE [dbo].[Sp_DB_InsertBatch]
(
@LogXml NVARCHAR(MAX),
@LastTime DATETIME,
@CurrentTime DATETIME
)
AS
BEGIN
BEGIN TRAN
BEGIN TRY
--利用OPENXML()需求一个预备行动:
--定义一个文档指针@XMLHandler,范例为int(SP_XML_PREPAREDOCUMENT).
--利用完后还需求把它释放掉(SP_XML_REMOVEDOCUMENT)
DECLARE @XMLHandler INT;
--OPENXML()本身返回一个行集,并且需求3个参数和一组列映射定义.
--预先预备好的文档指针@XMLHandler,搜索途径起点,映射标志.
EXEC SP_XML_PREPAREDOCUMENT @XMLHandler OUTPUT,@LogXml;
INSERT INTO [dbo].[DBRate]
([RateID]
,[LastModifyTime]
,[LastTime]
,[CurrentTime])
SELECT [RateID]
,[LastModifyTime]
,@LastTime
,@CurrentTime
FROM OPENXML(@XMLHandler,'/DB/DBRate',2)
WITH( RateID INT
,LastModifyTime DATETIME
)
--释放掉(SP_XML_REMOVEDOCUMENT)
EXEC SP_XML_REMOVEDOCUMENT @XMLHandler;
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
END CATCH
END
【3】转换范例
复制代码 代码以下:
select convert(int,'100.1')
select cast('100' as int)
截取并替换其他字符
select stuff('1347097110',5,6,'*******')
获得ID为4四周的四条数据
select top 4 * from Student order by abs(4-id)
分组获得 select * from (select Row_Number() Over(partition by sex order by ID) as rowindex,* from Student) a where rowindex<5
联表删除数据 deletefrom Souce from Souce inner join Student on Souce.sid = Student.id
以上是“SQL 特别语句(学习笔记)[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论