SQL Server Collation解惑】的更多相关文章

某些产品会有固定的DB Collation,如果提前创建DB的时候没有按照要求指定对应的Collation,这个时候就会报错,提示你Collation不匹配.在安装SQL Server的时候有时候需要有区分大小写的要求,只是在安装的时候改变Collation成CaseSensitive(区分大小写),其实至始至终也不明白Collation在SQL Server中的作用到底是什么. Collation到底是什么? 说白了Collation其实就是描述了数据在数据库中是按照什么规则来描述字符,以及字…
问题描述 某维度表的字符串列同时出现两条记录,A记录以半角空格(英文空格)结束,B记录以全角空格(中文空格)结束,除此之外其他部分均相同.Analysis Service处理的时候抛出“Key not found”的异常,导致处理失败. 为了实验,我们创建两张非常简单的表: -- 员工交易事实表 Create Table [FactTransaction]( [TransactionKey] [int] not null, [EmployeeKey] [int] not null ) -- 员工…
instance / database / schema / object login / user / schema (dbo) sequence Collation PSM: Both Instance and DB need case insensitive Windchill: Both Instance and DB as SQL_Latin1_General_CP1_CS_AS (Since 2012, it is Latin1_General_100_CS_AS_SC) Cogno…
https://support.microsoft.com/en-us/kb/904803 Character data is represented incorrectly when the code page of the client computer differs from the code page of the database in SQL Server 2005 Email Print SYMPTOMS Consider the following scenario: In…
http://sqlserverbuilds.blogspot.jp/   What version of SQL Server do I have? This unofficial build chart lists all of the known Service Packs (SP), Cumulative Updates (CU), patches, hotfixes and other builds of MS SQL Server 2016, 2014, 2012, 2008 R2,…
原帖地址 What version of SQL Server do I have? This unofficial build chart lists all of the known Service Packs (SP), Cumulative Updates (CU), patches, hotfixes and other builds of MS SQL Server 2014, 2012, 2008 R2, 2008, 2005, 2000, 7.0, 6.5 and 6.0 tha…
今天查询二个db,出现这个错误,二种方法,一种是把db里的collation改成一样的:如果不方便可以直接在sql语句后面转一下: select * from table where crm_mscrm.dbo.imei.imei_no = csmrep.crmextdb.dbo.imei.imei_no collate Chinese_PRC_CI_AS sql server 小技巧 集锦…
一.写在前面 最近公司进行开发环境升级,数据库也准备了一个新的服务器,一切准备好后开始数据迁移,采取的方式为对现有Database(现有服务器Windows Server 2003 + SQL Server 2005)进行Back up,然后在新服务器(Windows Server 2008 R2 + SQL Server 2008 R2)上再Restore Databse,一切似乎挺顺利的.但是当从Web Server开始访问的时候出现错误Cannot resolve the collatio…
今天遇到一个较为头痛的问题: Cannot resolve the collation conflict between "Chinese_PRC_90_CI_AS" and "Latin1_General_CI_AS" in the equal to operation. SQL2008 R2,数据库是从SQL2005的备份文件还原回来的. 估计是因为各种环境问题从而导致同一个数据库不同的表中的列有不同的Collation设置,导致在通过这样的字段连接两个表的时候…
This info is from: http://www.codeproject.com/Articles/302405/The-Easy-way-of-changing-Collation-of-all-Database Have you encountered a problem where you wanted to change your database collation to default or even just change it to a different type?…
目录 目录 正确认识SQL Server的字符集 选择合适的SQL Server字符集 错误使用SQL Server的字符集 参考资料 正确认识SQL Server的字符集 SQL Server作为一个国际化产品,支持多语言环境.在SQL Server中,字符集被称为排序规则(即Collation).排序规则不仅影响记录行的sort顺序,还影响中文显示是否乱码等.在SQL Server中,排序规则可在3处地方设置: 服务器级别 =>instances db库级别 =>databases 表列级…
原文:SQL Server解惑--为什么你的查询结果超出了查询时间范围 废话少说,直接上SQL代码(有兴趣的测试验证一下),下面这个查询语句为什么将2008-11-27的记录查询出来了呢?这个是同事遇到的一个问题,个人设计了一个例子. USE AdventureWorks2014; GO SELECT *  FROM [Person].[Person] WHERE ModifiedDate >= '2008-11-26 00:00:00:000'   AND ModifiedDate <= '…
一同事在写脚本时,遇到一个关于LIKE里面使用不同的变量类型导致查询结果不一致的问题,因为这个问题被不同的人问过好几次,索性总结一下,免得每次都要解释一遍,直接丢一篇博客岂不是更方便!其实看似有点让人不解的现象背后实质跟数据类型的实现有关. 下面我们构造这样一个类似的简单案例.如下所, CREATE TABLE TEST (ID        INT IDENTITY(1,1), NAME    VARCHAR(32) )   INSERT INTO dbo.test SELECT 'abc32…
一同事在写脚本时,遇到一个关于LIKE里面使用不同的变量类型导致查询结果不一致的问题,因为这个问题被不同的人问过好几次,索性总结一下,免得每次都要解释一遍,直接丢一篇博客岂不是更方便!其实看似有点让人不解的现象背后实质跟数据类型的实现有关. 下面我们构造这样一个类似的简单案例.如下所, CREATE TABLE TEST (ID ,), NAME ) ) INSERT INTO dbo.test SELECT 'abc32' INSERT INTO dbo.test SELECT 'abd32'…
关于SQL Server数据库中的对象命名的唯一性问题.例如表.索引.约束等数据库对象,有时候DBA在做数据库维护时,经常要创建对象或重命名对象,此时就会遇到一个问题,对象命名的唯一性问题.虽然是一个小小的问题,估计不少人搞不清,在看文章前,你可以先回答几个问题 1: 表名在数据库是不是唯一? 不同的Schema下,是否可以存在同名的表? 2: 索引名在数据库是不是唯一? 不同的Schema下,是否可以存在同名的表? 3: 其它数据库对象呢? 例如约束.触发器. 那么我们接下来看看实验例子吧,如…
  1:每个表只能创建一个标识列. 如下测试所示,如果表中有一个标识列,新增一个标识列就会遇到错误"Multiple identity columns specified for table 'TEST'. Only one identity column per table is allowed." CREATE TABLE dbo.TEST (     ID        INT IDENTITY(1,1) ,     NAME        VARCHAR(32) );   AL…
  在SQL Server中可能有这样的拼接字符串需求,需要将查询出来的一列拼接成字符串,如下案例所示,我们需要将AddressID <=10的AddressLine1拼接起来,分隔符为|.如下截图所示.这种方式看起来似乎没有什么问题,而且简单测试也是OK: USE AdventureWorks2014; GO DECLARE @address_list NVARCHAR(MAX); SET @address_list ='';   SELECT @address_list = @address…
在SQL Server的查询条件中,能否在IN里面使用变量呢? 如果可以的话,有没有需要注意的地方或一些限制呢?在回答这个问题前,我们先来看看这个例子: IF EXISTS (SELECT 1 FROM sys.objects WHERE name='TEST' AND type='U') BEGIN     DROP TABLE TEST; END GO CREATE TABLE TEST ( ID INT, NAME VARCHAR(16) ); GO   INSERT INTO dbo.T…
恢复SQL Server被误删除的数据(再扩展) 大家对本人之前的文章<恢复SQL Server被误删除的数据> 反应非常热烈,但是文章里的存储过程不能实现对备份出来的日志备份里所删数据的恢复 这个是一个缺陷,本人决定对这个存储过程扩展一下,支持对log backup文件里的delete语句进行恢复 实验步骤 1.首先先准备好测试表和测试语句 USE [sss] GO --建表 CREATE TABLE testdelete ( id , ) NOT NULL PRIMARY KEY , NA…
恢复SQL Server被误删除的数据 <恢复SQL Server被误删除的数据(再扩展)> 地址:http://www.cnblogs.com/lyhabc/p/4620764.html 曾经想实现Log Explorer for SQL Server的功能,利用ldf里面的日志来还原误删除的数据 这里有一篇文章做到了,不过似乎不是所有的数据类型都支持 以下为译文:http://raresql.com/2011/10/22/how-to-recover-deleted-data-from-s…
非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry 大牛 Glenn Berry 大牛会对这个脚本持续更新 -- SQL Server 2012 Diagnostic Information Queries -- Glenn Berry -- April 2015 -- Last Modified: April 27, 2015 -- http://sqlserverperformance.wordpress.com/ -- http://sqlskills…
一.背景 在复制的运用场景中,事务发布是使用最为广泛的,我遇到这样一个场景:在Task数据库中有Basic与Group两个表,需要提供这两个表的部分字段给其它程序读取放入缓存,程序需要比较及时的获取到这些数据,作为DBA你需要从权限和性能控制的角度出发,我采用了SQL Server的事务复制技术和timestamp,下面只讲述事务复制的搭建过程: 二.实现过程 (一) 环境信息 系统环境:Windows Server 2008 + SQL Server 2008 R2 发布服务器:192.168…
在上篇MS SQL 排序规则总结中,大致就数据库服务器排序规则(或者叫数据库实例排序规则).数据库排序规则.列的排序规则粗浅的叙说了一遍,重点讲述了修改数据库服务器排序规则(数据库实例排序规则),其中对于数据库排序规则的修改只是粗略带过.其实相对而言,修改服务器排序规则(数据库实例排序规则)相对简单一些,修改数据库的排序规则就复杂多了,因为涉及到数据.SQL脚本等等,例如,一不小心,修改排序规则后,数据当中可能就会出现乱码: 另外,修改数据库排序规则麻烦的是要大量修改相关表的字段的排序规则,如果…
一.测试需求介绍与准备 公司计划服务器迁移过程计划同时上线SQL Server2012,引入SQL Server2012群集提高高可用性,需要对SQL Server2012群集技术进行研究.测试,确保此项技术是否能满足公司的业务和容灾需求. 此文档记录了SQL Server2012群集测试的详细过程. 群集采用基于iSCSI方式的1+1模式,因此测试用Hyper-V准备四台虚拟服务器分别用于:域控制器[AD].存储服务器.群集活动节点.群集备节点. 设置四个网络适配器,分别用于内网连接,外网连接…
SQL SERVER常用函数 1.DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值. (1)语法: DATEADD ( datepart , number, date ) (2)参数:datepart 规定应向日期的哪一部分返回新值的参数.下表列出了 Microsoft  SQL Server识别的日期部分和缩写. 日期部分     缩写 Year         yy, yyyy quarter      qq, q Month       mm, m dayof…
SQL Server 表变量和临时表的区别 一.表变量 表变量在SQL Server 2000中首次被引入.表变量的具体定义包括列定义,列名,数据类型和约束.而在表变量中可以使用的约束包括主键约束,唯一约束,NULL约束和CHECK约束(外键约束不能在表变量中使用).定义表变量的语句是和正常使用Create Table定义表语句的子集.只是表变量通过DECLARE @local_variable语句进行定义. 表变量的特征: 表变量拥有特定作用域(在当前批处理语句中,但不在任何当前批处理语句调用…
摘自:http://www.cnblogs.com/Amaranthus/archive/2012/03/07/2383551.html 研究cpu压力工具 perfom SQL跟踪 性能视图 cpu相关的wait event Signal wait time SOS_SCHEDULER_YIELD等待 CXPACKET等待 CMEMTHREAD等待 调度队列 cpu密集型查询 高CPU使用率的创建几种状况 miss index 统计数据丢失 非SARG谓词 隐式类型转化 参数探测器 ad ho…
用脚本定时监控SQL Server主从一致性 首先说一下我们的环境 我们使用的是事务复制,复制是单向的,主服务器和从服务器都在同一个机房,当然不同机房也可以,只需要改一下IP和端口 下面的脚本在我们的SQLServer 2008上已经应用,暂时没有发现问题,当然,如果大家使用过程中有发现问题欢迎向我反馈o(∩_∩)o 首先,我们为什麽要校验呢? 我们知道因为网络延迟,或者从库有写入的情况(当然一般我们在订阅端会设置为db_datareader,不允许写)会造成主从数据不一致的情况 无论是SQL…
/****** Object: StoredProcedure [dbo].[Recover_Deleted_Data_Proc] Script Date: 04/23/2014 22:11:59 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- Script Name: Recover_Deleted_Data_Proc -- Script Type : Recovery Procedure -- Develop By: M…
数据类型的选择帮助优化查询,比如针对int类型列和针对文本类型列可能会生成完全不同的查询计划 三种数据类型: 系统数据类型 别名数据类型:用户可以为系统数据类型提供一个别名,并且可以对数据类型做进一步限制,这样可以保持数据库和应用程序的一致性 用户自定义数据类型:引入的托管代码中的数据类型,包括CLR中的系统数据类型和CLR中用户自定义数据类型 整数数据类型: tinyint存储的是一个字节(8位),值范围是0-255 smallint存储的是两字节(16位),值范围是-32768-32767…