zoukankan      html  css  js  c++  java
  • SQL Server 2012 新特性

    --Concat示例
    Select CONCAT('SQL Server',2012,null,'RTM')
    
    --Format实例
    DECLARE @d DATETIME = GETDATE();
    SELECT FORMAT( @d, 'd', 'en-US' ) AS Result
    SELECT FORMAT( @d, 'd', 'zh-CN' ) AS Result
    
    --Choose实例
    SELECT CHOOSE(0,'CareySon','Jack','Tony','Peter')
    SELECT CHOOSE(2,'CareySon','Jack','Tony','Peter')
    SELECT CHOOSE(3,'CareySon','Jack','Tony','Peter')
    SELECT CHOOSE(5,'CareySon','Jack','Tony','Peter')
    --Choose
    select CHOOSE(ManagerID,'CareySon','Jack','Tony','Peter')
     FROM [AdventureWorks].[HumanResources].[Employee]
    --传统的CASE...WHEN
    SELECT ManagerID=case when ManagerID=1 then 'CareySon'
         when ManagerID=2 then 'Jack'
         when ManagerID=3 then 'Tony'
         when ManagerID=4 then 'Peter'
         else null
         end
    FROM [AdventureWorks].[HumanResources].[Employee]
    
    --IIF示例
    select IIF(1>2,'结果1','结果2')
    
    --DATEFROMPARTS示例
    SELECT DATEFROMPARTS ( 2012, 3, 12 ) AS Result;
    
    --EOMONTH示例
    declare @date datetime
    set @date='2012-3-12'
    SELECT EOMONTH ( @date ) AS '本月最后一天'
    SELECT EOMONTH ( @date, 1 ) AS '下个月最后一天'
    SELECT EOMONTH ( @date, -1 ) AS '上个月最后一天'
    
    --PARSE和Cast示例
    SELECT TRY_PARSE('Monday, 13 December 2010' AS datetime2 USING 'en-US') AS Result
    SELECT Cast('Monday, 13 December 2010' AS datetime2) AS Result
    
    --Convert和Try_Convert示例
    --转换不成功,为NULL
    select TRY_CONVERT(float, 'test')
    --转换不成功报错
    select CONVERT(float, 'test')
    --永远不可能转换成功的,报错
    SELECT TRY_CONVERT(xml, 4) AS Result;
    
    --TRY_PARSE和PARSE
    SELECT TRY_PARSE('错误值' AS datetime2 USING 'en-US') AS Result
    SELECT PARSE('错误值' AS datetime2 USING 'en-US') AS Result
    
    
    --Throw语句尝试
    --1.更简洁优雅的代码
    --2.可以正确的标识出出错的行数,对于大量T-SQL来说,这点可以节省不少时间
    
    BEGIN TRAN
    BEGIN TRY
     select 1/0;
     COMMIT
    END TRY
    BEGIN CATCH
        ROLLBACK;
        --RAISERROR('自定义错误消息',12,1)
        --THROW
        THROW 50001,'自定义错误消息',1;
        --PRINT ERROR_NUMBER+ERROR_SEVERITY()+ERROR_STATE()+ERROR_PROCEDURE()+ERROR_LINE()+ERROR_MESSAGE()
    END CATCH
  • 相关阅读:
    Struts系列教材 (十九)- 其他
    Struts系列教材 (十八)- 其他
    Struts系列教材 (十七)- 其他
    Struts系列教材 (十六)- 标签
    Struts系列教材 (十五)- 标签
    Struts系列教材 (十四)- 标签
    Struts系列教材 (十三)- 标签
    Struts系列教材 (十二)- 标签
    Struts系列教材 (十一)- 标签
    ios中二维码的使用之二: 二维码的扫描
  • 原文地址:https://www.cnblogs.com/sunxuchu/p/6008661.html
Copyright © 2011-2022 走看看