不同資料庫標誌符長度限制總結

2021-07-03 23:22:07 字數 4445 閱讀 9139

作業系統:win7

mysql版本:5.6.24

oracle版本:11gr2

postgre版本:9.4

sqlserver版本:2008

長度單位:字元;

資料庫名稱

表名稱列名稱

索引名稱

別名mysql

已測試oracle

已測試postgre

(

區分大小寫

)

已測試sqlserver

已測試

ps:1、  在sqlserver2008上測試,資料庫名稱的最大長度是124,不是128;

2、  oracle的例項名長度限制為12位;

sql技術手冊》中的總結如下:

2.1識別符號長度

平台

規格

sql3

128個字元

mysql

64個字元,別名為255個字元

oracle

30個字元(字元數視字符集而定),資料庫鏈結限定為128個位元組

postgresql

63個字元(namedatalen-1)

sql server

128個字元,臨時表最多116個字元

2.2識別符號可包含的字元

sql3

任何數字或字元及下劃線(_)符號

mysql

任何數字、字元或符號,不能全部由數字組成

oracle

任何數字或字元及下劃線(_)、井號(#)及美元符號($)(最後2個符號不推薦使用),資料庫鏈結頁包含句點(.)

postgresql

任何數字或字元及下劃線(_)

sql server

任何數字或字元及下劃線(_)、at符號(@)、井號(#)及美元符號($)

2.3識別符號不能包含的字元

sql3

空格或特殊字元

mysql

句點(.)、斜線(/)或ascii(0)及ascii(255)。單引號(『』)及雙引號(「」)僅用於引用識別符號內。識別符號不應以空格結尾。

oracle

空格、雙引號(「」)或特殊字元

postgresql

雙引號(「」)

sql server

空格或特殊字元

2.4識別符號的字首必須為

sql3

字母

mysql

字母或數字,不能全部由數字組成

oracle

字母

postgresql

字母或下劃線

sql server

字母、下劃線(_)、at符號(@)、井號(#)

2.5 引用標誌符的符號

sql3

雙引號(「」)

mysql

單引號(『』)或ansi相容模式下的雙引號(「」)

oracle

雙引號(「」)

postgresql

雙引號(「」)

sql server

雙引號(「」)或方括號(),最好使用方括號

2.6大小寫是否敏感

sql3

mysql

只有底層檔案系統(mac os或unix)才區分大小寫。觸發器、日誌檔案組及表空間是區分大小寫的

oracle

預設情況下不可以,但可以修改此預設值

postgresql

sql server

預設情況下不可以,但可以修改此預設值

ps:1、 mysql5.6.24中測試,可以用純數字作為資料庫名稱、表名稱、欄位名稱,但是執行查詢時,會報錯;

2、 postgre的大小寫敏感問題(windows環境):

當表名存在大寫字母時,比如ab:

執行select * from ab 和select * from ab;都會報錯:error: relation"ab" does not exist;

只有當表名都是小寫時,才不會報錯,比如ab:

執行select * from ab 和select * from ab;都不會報錯;

mysql

官方文件

identifier

maximum length (characters)

database

64 (ndbstorage engine: 63)

table

64 (ndbstorage engine: 63)

column

64index

64constraint

64stored program

64view

64tablespace

64server

64log file group

64alias

256 (see exception following table)

compound statement label

16oracle

官方文件

均不超過30

postgrel

官方文件

不超過namedatalen-1

位元組的乙個識別符號,

namedatalen預設是

64,所以最大長度是63,長名字會被截斷。這個限制是可以被修改的:src / include / pg_config_manual.h namedatalen常數。

不同資料庫分頁

oracle分頁 分頁的宗旨是控制查詢出來的資料個數,下面這條語句對於oracle分頁已經足夠了。注 該語句只能用於oracle select from select aa.rownum rn from select from users order by id desc aa where rown...

資料庫 資料庫 不同場景下 推薦

目錄場景 大資料儲存 資料倉儲 hive 資料實時分析 tidb 各資料庫介紹 tidb 開源分布式關係型資料庫 hive 資料倉儲 hive是基於hadoop的乙個資料倉儲工具,用來進行資料提取 轉化 載入,這是一種可以儲存 查詢和分析儲存在hadoop中的大規模資料的機制。hive資料倉儲工具能...

不同資料庫的資料插入

1.同一伺服器不同資料庫表的資料插入 insert into gduapdev3.dbo.tbltmtasklist select from uap2.dbo.tbltmtasklist 表結構相同的情況 2.不同伺服器的資料庫表的資料插入 sql server2005中要先鏈結伺服器才執行sql ...