① 怎樣知道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。