- 相關推薦
SQL Server常用數據類型
數據類型是數據的一種屬性,是數據所表示信息的類型。下面是小編為大家搜索整理了關于SQLServer常用數據類型,歡迎參考閱讀,希望對大家有所幫助。
SQLServer2000提供了比較多的數據類型供用戶使用,包括字符型數據類型、數值型數據類型、貨幣型數據類型、日期/時間型數據類型等。
一、字符型數據類型
字符型數據類型是使用最多的數據類型。它可以用來存儲各種字母、數字符號、特殊符號。在使用字符類型數據時,必須為其加上單引號。若將數值數據包括在單引號中,將被視為字符類型數據。一般來說,字符型數據類型有兩種基本形式:
(一)CHAR定長字符型數據類型
CHAR數據類型的定義形式為CHAR(n),n為長度,n的取值范圍為1-8000,共占n個字節。若存儲的字符串長度小于n,則系統自動使用空格填補剩余的位置。若存儲的字符串長度大于n,那么在執行插入記錄語句時將導致執行錯誤。
(二)VARCHAR變長字符型數據類型
VARCHAR數據類型的定義形式為VARCHAR(n),最大長度為n,n的取值范圍為1-8000。VARCHAR數據類型的存儲長度為實際字符串的長度,若存儲的字符串長度小于n,系統不會使用空格填補剩余的位置。VARCHAR數據類型通常用于存放長度變化較大的字符串,這樣可以節約大量的存儲空間。但是使用varn)數據類型的缺點是,這種變長的存儲方法使得用戶無法確切地估計存儲數據所使用的空間大小。
二、數值型數據類型
數值型數據類型包括整型數據類型、數字數據類型和浮點數據類型三種。
(一)整型數據類型
整型數據類型只存儲整數。整型數據類型包括以下四種:
bigint數據類型
bigint數據類型占8個字節,共64位,能夠存儲-263~263-1之間的所有正負整數。在64位中,63位用來存儲數值,1位用來存儲數值的正負。
int數據類型
int數據類型占4個字節,共32位,能夠存儲-231~231-1之間的所有正負整數。在32位中,31位用來存儲數值,1位用來存儲數值的正負。
smallint數據類型
smallint數據類型占2個字節,共16位,能夠存儲-215~215-1之間的所有正負整數。在16位中,15位用來存儲數值,1位用來存儲數值的正負。
(二)數字數據類型
數字數據類型包括decimal數據類型和numeric數據類型兩種,numeric數據類型與decimal數據類型完全相同。decimal數據類型可以提供小數所需要的實際存儲空間,decimal數據類型最多可存儲38位數字。
decimal數據類型的定義形式為decimal(p,s)。
其中:
p:為指定精度或對象能夠控制的數字個數。
s:為指定可放到小數點右邊的小數位數或數字個數。
p和s必須遵守以下規則:0<=s<=p<=38。
(三)浮點數據類型
浮點數據類型包括float數據類型和real數據類型,這兩種數據類型被稱為近似數據類型。
real數據類型
real數據類型占4個字節,共32位,能夠存儲-3.40E+38~3.40E+38之間所有的浮點數。
float數據類型
float數據類型占8個字節,共64位,能夠存儲-1.79E+308~1.79E+308之間所有的浮點數。float數據類型可精確到第15位小數。float數據類型可以定義為float(n),n為數據的精度。若n取1到7時,實際上是定義了一個real類型的數據,系統將分配4個字節的空間存儲數據;若n取8到15時,系統認為其是float類型,將分配8個字節的空間存儲數據。
三、貨幣型數據類型
貨幣型數據類型用于存儲貨幣值。在SQLServer2000中提供兩種貨幣型數據類型:money數據類型和smallmoney數據類型。
(一)money數據類型
money數據類型使用8個字節存儲數據,由兩部分組成,前面4個字節表示貨幣值的整數部分,后面4個字節表示貨幣值的小數部分。
(二)smallmoney數據類型
smallmoney數據類型類似于money類型,使用4個字節存儲數據,前面2個字節表示貨幣值的整數部分,后面2個字節表示貨幣值的小數部分。
四、日期/時間型數據類型
日期/時間型數據類型用于存儲日期和時間的結合體。
(一)datetime數據類型
datetime數據類型可以存儲從公元1753年1月1日零時起到公元9999年12月31日23時59分59秒之間的所有日期和時間,其精確度可達三百分之一秒。datetime數據類型占用8個字節的存儲空間。
(二)smalldatetime數據類型
smalldatetime數據類型與datetime數據類型相似,但其日期時間范圍較小,可以存儲從1900年1月1日到2079年6月6日,精度可以達到分鐘。smalldatetime數據類型占用4個字節的存儲空間。
SQL Server vNext on Linux安裝
今天微軟正式發布上SQL Server 2016 SP1,根據以往的SP1定律,可以在生產環境上使用了。打了SP1的標準版將具有企業版幾乎所有的的功能。只有RAM 超過128GB或者超過24核心或者超過4路的環境才必須要安裝企業版。
還有一個重要的發布:SQL Server vNext on Linux。也是本文介紹安裝的版本。長話短說,開始安裝。
這個版本的SQL Server,官方支持的平臺是Red Hat Enterpise 7.2 或者Ubuntu 16.04。但是我手上暫時沒有Red Hat,就用CentOS 7.2試試。我是以root身份安裝的。
1. 安裝
#下載庫配置文件curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo#安裝sudo yum install -y mssql-server
2. 運行配置文件
#運行SQL Server的配置文件進行配置。#這個過程會要你同意License條款,設置SA密碼,設置SQL Server服務開機啟動/opt/mssql/bin/sqlservr-setup
3. 檢查服務狀態
#檢查SQL Server的服務狀態systemctl status mssql-server
4. 修改防火墻
#修改防火墻,允許1433端口systemctl start firewalldfirewall-cmd --zone=public --add-port=1433/tcp --permanentfirewall-cmd --reload
5. 安裝SQL工具,包括sqlcmd和bcp
#下載源的庫配置文件curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo#安裝toolsyum install mssql-tools
6. 連接測試
# 使用sqlcmd的本地連接。直接在-P參數后填密碼或者回車后輸入密碼。sqlcmd -S . -U SA -p
發現sqlcmd的使用方式和windows下是一樣的。返回內容最后有一個根據當前查詢的耗時預估的每秒事務處量。
然后建個庫,建個表試試。
遠程連接。從windows使用sqlcmd,用外網IP連接
使用SSMS連接,我使用是SQL 2014安裝時自帶SSMS,可能會有一些不支持問題?梢钥吹紸gent沒啟動的,實際上是這個版本沒有Agent。
有意思的是,使用SSMS可以創建庫,卻不能創建表。從錯誤信息來看,似乎是不支持圖形界面創建表。
總結:
嘗鮮性地測試一下,有機會還會測試更多功能。目前不支持Agent,復制和大部分BI功能組件。
很多人對SQL Server On Linux是有所期待。如果它在Linux上的表現與之在以往Windows上的表現一樣優秀的話,我相信會有更多人會使用它的。
SQL Server On Linux的更多文檔內容:SQL Server on Linux Documentation
【SQL Server常用數據類型】相關文章:
Sql Server、Access數據排名的實現方法03-30
SQL優化大全03-08
oracle的sql語句01-21
SQL查詢語句大全04-25
SQL語句的理解原則03-30