zoukankan      html  css  js  c++  java
  • SQL点滴6—“微软不认识闰年2月29日”&字符"N"的作用

    http://www.cnbeta.com/articles/50580.htm这个网页新闻中报告许多微软软件不能识别闰年的2月29号 ,其中就包含SQL Server 2008,本人就在自己的SQL Server 2008中写了几个语句试验,这几个语句显示能得到2月29号这一天,不知道照这则新闻所说在这一天安装软件会不会导致错误。

    select DATEADD(DD,1,'28/Feb/2008')
    输出:2008-02-29 00:00:00.000
    
    select DATEADD(DD,1,'28/Feb/2004')
    输出:2004-02-29 00:00:00.000
    
    select DATEADD(DD,1,'28/Feb/2000')
    输出:2000-02-29 00:00:00.000 
     
    select DATEADD(DD,1,'28/Feb/1996')
    输出:1996-02-29 00:00:00.000

     SQL语句没有出现异常。

    select N'上海长宁店'

    在字符串前面加上 N 代表存入数据库时以 Unicode 格式存储。
    N'string'  表示string是个Unicode字符串

    Unicode 字符串的格式与普通字符串相似,但它前面有一个 N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language))。N 前缀必须是大写字母。例如,'Michél' 是字符串常量而 N'Michél' 则是 Unicode 常量。Unicode 常量被解释为 Unicode 数据,并且不使用代码页进行计算。Unicode 常量确实有排序规则,主要用于控制比较和区分大小写。为 Unicode 常量指派当前数据库的默认排序规则,除非使用 COLLATE 子句为其指定了排序规则。Unicode 数据中的每个字符都使用两个字节进行存储,而字符数据中的每个字符则都使用一个字节进行存储。有关更多信息,请参见使用 Unicode 数据。

    Unicode 字符串常量支持增强的排序规则。

    作者:Tyler Ning
    出处:http://www.cnblogs.com/tylerdonet/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,请微信联系冬天里的一把火

  • 相关阅读:
    join命令
    参与者模式
    字符串中的第一个唯一字符
    Git与SVN对比
    惰性模式
    .NET Conf 2020
    使用Github部署Azure应用服务
    Azure Terraform(一)入门简介
    打日志还能打出个线上Bug_ 太难了。。。
    让API并行调用变得如丝般顺滑的绝招
  • 原文地址:https://www.cnblogs.com/tylerdonet/p/1965009.html
Copyright © 2011-2022 走看看