① 怎样知道sqlServer的排序规则
语句:
select
SERVERPROPERTY('Collation')
--查看默认排序规则
select
SERVERPROPERTY('SqlCharSetName')--查看排序使用字符集名称
至于sqlserver的字符集个人认为就是windows的字符集。
排序规则还可以通过SSMS中右键查看数据库属性里的‘维护'。
② sql遇到排序规则不一样的问题 怎么查询
select * from databasename1.dbo.tablename t1 inner join databasename2.dbo.tablename2 t2
on t1.col1 = t2.col1
选择只要用【数据库名.dbo.表名】 即可(可能也不是dbo 看数据库的设置了)
③ 如何查看SQL Server 2005的排序规则
步骤如下:1、首先备份一下系统数据库或直接将系统库所在的文件夹复制一份
2、找到sql2005 的安装包
3、执行下面的批处理内容如下:cd D:\sql server 2005(64)\1
start /wait setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=sa SQLCOLLATION=Chinese_PRC_CI_AS
4、修改完之后如果发现数据库找不到,需要重新附加一下数据库。
_BIN二进制排序_CI_AI不区分大小写、不区分重音、不区分假名类型、不区分全半角_CI_AI_WS不区分大小写、不区分重音、不区分假名类型、区分全半角_CI_AI_KS不区分大小写、不区分重音、区分假名类型、不区分全半角
_CI_AI_KS_WS
不区分大小写、不区分重音、区分假名类型、区分全半角_CI_AS不区分大小写、区分重音、不区分假名类型、不区分全半角_CI_AS_WS不区分大小写、区分重音、不区分假名类型、区分全半角_CI_AS_KS不区分大小写、区分重音、区分假名类型、不区分全半角
_CI_AS_KS_WS
不区分大小写、区分重音、区分假名类型、区分全半角_CS_AI区分大小写、不区分重音、不区分假名类型、不区分全半角_CS_AI_WS区分大小写、不区分重音、不区分假名类型、区分全半角_CS_AI_KS区分大小写、不区分重音、区分假名类型、不区分全半角
_CS_AI_KS_WS
区分大小写、不区分重音、区分假名类型、区分全半角_CS_AS区分大小写、区分重音、不区分假名类型、不区分全半角_CS_AS_WS区分大小写、区分重音、不区分假名类型、区分全半角_CS_AS_KS区分大小写、区分重音、区分假名类型、不区分全半角
区分大小写、区分重音、区分假名类型、区分全半角
④ sql server中的规则是什么 如何定义速回有加分!
CREATE RULE (Transact-SQL)
创建名为规则的对象。当绑定到列或别名数据类型时,使用规则指定可以插入到列中的可接受的值。
重要提示:
后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。建议您改用检查约束。检查约束是使用 CREATE TABLE 或 ALTER TABLE 的 CHECK 关键字创建的。有关详细信息,请参阅 CHECK 约束。
列或别名数据类型只能被绑定一个规则。不过,列可以同时有一个规则以及一个或多个检查约束与其相关联。在这种情况下,将评估所有限制。
Transact-SQL 语法约定
语法
CREATE RULE [ schema_name . ] rule_name
AS condition_expression
[ ; ]
参数
schema_name
规则所属架构的名称。
rule_name
新规则的名称。规则名称必须符合标识符规则。根据需要,指定规则所有者名称。
condition_expression
定义规则的条件。规则可以是 WHERE 子句中任何有效的表达式,并且可以包括诸如算术运算符、关系运算符和谓词(如 IN、LIKE、BETWEEN)这样的元素。规则不能引用列或其他数据库对象。可以包括不引用数据库对象的内置函数。不能使用用户定义函数。
condition_expression 包括一个变量。每个局部变量的前面都有一个 at 符号 (@)。该表达式引用通过 UPDATE 或 INSERT 语句输入的值。在创建规则时,可以使用任何名称或符号表示值,但第一个字符必须是 at 符号 (@)。
注意:
请避免对使用别名数据类型的表达式创建规则。虽然可以对使用别名数据类型的表达式创建规则,但在将规则绑定到列或别名数据类型后,表达式被引用时将无法对其进行编译。
⑤ sql server 2008 怎么查看数据库排序规则
首先要知道数据库排序规则的含义,如Chinese_PRC_CI_AS就可以不区分大小写了,下面为Chinese_PRC打头的规则: _BIN 二进制排序 _CI_AI 不区分大小写、不区分重音、不区分假名类型、不区分全半角 _CI_AI_WS 不区分大小写、不区分重音、不区分假名类型、区分全半角 _CI_AI_KS 不区分大小写、不区分重音、区分假名类型、不区分全半角 _CI_AI_KS_WS 不区分大小写、不区分重音、区分假名类型、区分全半角 _CI_AS 不区分大小写、区分重音、不区分假名类型、不区分全半角 _CI_AS_WS 不区分大小写、区分重音、不区分假名类型、区分全半角 _CI_AS_KS 不区分大小写、区分重音、区分假名类型、不区分全半角 _CI_AS_KS_WS 不区分大小写、区分重音、区分假名类型、区分全半角 _CS_AI 区分大小写、不区分重音、不区分假名类型、不区分全半角 _CS_AI_WS 区分大小写、不区分重音、不区分假名类型、区分全半角 _CS_AI_KS 区分大小写、不区分重音、区分假名类型、不区分全半角 _CS_AI_KS_WS 区分大小写、不区分重音、区分假名类型、区分全半角 _CS_AS 区分大小写、区分重音、不区分假名类型、不区分全半角 _CS_AS_WS 区分大小写、区分重音、不区分假名类型、区分全半角 _CS_AS_KS 区分大小写、区分重音、区分假名类型、不区分全半角 _CS_AS_KS_WS 区分大小写、区分重音、区分假名类型、区分全半角 如需要对数据库重新进行规则设定,具体步骤如下: 1、找到sql2005 的安装包 2、执行下面的批处理,指定某种规则,如Chinese_PRC_CI_AS 内容如下: cd D:\SQL Server 2005\SQL Server x86\Servers start /wait setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=sa SQLCOLLATION=Chinese_PRC_CI_AS 3、重新附加一下数据库就发现排序规则变更了。
⑥ sql中表达完整性约束的规则主要有哪几种
1、实体完整性:规定表的每一行在表中是惟一的实体。
2、域完整性:是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取值范围、精度等规定。
3、 参照完整性:是指两个表的主关键字和外关键字的数据应一致,保证了表之间的数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。
4、用户定义的完整性:不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件,它反映某一具体应用必须满足的语义要求。
(6)sql规则在哪看扩展阅读
完整性约束的类型介绍:
1、与表有关的约束:是表中定义的一种约束。可在列定义时定义该约束,此时称为列约束,也可以在表定义时定义约束,此时称为表约束。
2、域(Domain)约束:在域定义中被定义的一种约束,它与在特定域中定义的任何列都有关系。
3、断言(Assertion):在断言定义时定义的一种约束,它可以与一个或多个表进行关联。
⑦ sql server怎么查看规则的绑定状态
1
2
3
4
5
6
7
-- SQLServer:
SELECT DISTINCT sysobjects.name,
syscolumns.colid,syscolumns.name, systypes.name, syscolumns.prec,
syscolumns.scale
FROM syscolumns, sysobjects, systypes
WHERE sysobjects.id = syscolumns.id AND systypes.type =
syscolumns.type AND ((sysobjects.type='u'))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
该表相关字段的含义如下:
SYSOBJECTS.name 对象名,如:表名,视图名。
SYSOBJECTS.id 对象id。
SYSOBJECTS.type 对象类型(p存储过程,v视图,s系统表,u用户表)。
表SYSCOLUMNS 为每个表、视图中的每个列和每个存储过程的每个参数创建一条记录。
该表相关字段的含义如下:(此处的列系指数据库中每个表、视图中的列)
SYSCOLUMNS. id 该列所属的表的id,可与SYSOBJECTS.id相关联
SYSCOLUMNS.colid 列id,表示该列是表或视图的第几列。
SYSCOLUMNS.type 物理存储类型,可与SYSTYPES.type相关联。
SYSCOLUMNS.length 数据的物理长度。
SYSCOLUMNS.name 列名字,即字段名。
SYSCOLUMNS .Pre 列的精度级。
SYSCOLUMNS .Scale 列的标度级。
表SYSTYPES
为每个系统和每个用户提供的数据类型创建一条记录,如果它们存在,给定域和默认值,描述系统提供的数据类型的行不可更改。
该表相关字段的含义如下:
SYSTYPES.name 数据类型的名字。
SYSTYPES.type 物理存储数据类型。
分享评论 | 0 0
0808xyj | 来自团队:Oracle爱好者 | 十一级 采纳率80%
擅长: 数据库DB 数据结构及算法
其他类似问题
⑧ 如何查看sql 执行sql语句
在sql server里按下CTRL+M,然后执行一个你需要分析的sql语句,在结果框边上会有一个Execultion plan,看这里面就行
⑨ 请问哪里有介绍标准的sql语法的书
你写的2个完全一模一样,都是Inner join的一种。另外 楼上说的Exist的效率也是要看不同的情况才能体现效率。 但是至少来说,您自己写的2个方法完全相同。
SQL Server 和Oracle里的某些不同,体现在Outter Join (左或者右)上。但也仅仅是细微差距不同。
对于所有的sql来说,基本语法都是一样的,但是你可能在看到某些语句时发现不同,那是因为他们在自己的基础上加入个各个编程环境的东西。比如,(这里我希望楼主不要认为这些不同是由于SQL 语言造成的,而是由于编程环境造成的,再者还是再强调一遍,你说的2个语句哪里用都一样。)
例1.
下句是网上找的SQL Server赋值查询结果方法
select @bbsTopic=count(*) from dbo.bbsTopic where Tuid=@id。
@bbs相信就是他定义的变量
而Oracle里:
select count(*) into @bbsTopic from .........where....
这里看上去就不同了。 当然,也指出来,Pl sql里 ,至少我这里吧是不喜欢用@开头的定义变量的。那个是Microsoft在他的开发程序里规定的而已
如果有人喜欢用Open Source看到PHP和My SQL的话,那看到的可能又是一种写法。可能你满眼都是“$"符号了。。
例2.
Oracle 里, 有from al的赋值。比如
select seq_a.nextval into v_variable from al.
seq_a是一个。。。中文叫啥我不知道,英文是sequence 作用是计数 可以调整递增以及其他作用, 我就让他递增(按我顶高的规则)和 java使用方法一样 用“.”和方法名。。
而你在SQL Server里是看不到的
我这只是给你2个小例子。很多东西你还是多做做课程设计之类的,慢慢理解。最好有个人指导你。
⑩ SQL server中如何更改排序规则
1、首先新建一个数据库,如图为test。