當前位置:首頁 » 數據倉庫 » sql資料庫日期類型
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql資料庫日期類型

發布時間: 2023-03-22 07:52:24

『壹』 sql資料庫中的時間類型

滿意答案。9級2010-11-29使用nvarchar對於前期的實現比較容易,但性能及後期使用及後期需求開發比較困難
如按時間排序,資料庫類型校驗,根據時間段查詢,根據時間的分組統計等等方面造成的影響比較大
追問:
如果用datetime
我的MyEclipse用Hibernate轉換時是timestamp類型的
在用模糊查詢查時間時有點糾結啊
老是報不能轉換的錯誤
回答:
用hibernate啊
那你在配置文件注入類型不用時間戳
改成這個試試java.util.Date
補充:
hibernate項目好幾年沒做過了
原來在資料庫時間建模和操縱時習慣用java.sql.Timestamp與資料庫中DateTime對應,但業務流通層,模型里還是用java.util.Date
因為這些時間直接的轉換都是一樣的方便,而且這樣做邏輯理解上比較直觀
記憶中是沒有出現過錯誤,Timestamp在現在使用數據源時經常使用
追問:
知道用date類型的哇
但是hibernate自動生成的就是timestamp類型
不改配置文件
就用timestamp怎麼做啊?總不能每次生成就改一次配置文件吧.....
追問:
還有我做的是模糊查詢
在form裡面時間又是string類型的
轉換有點麻煩
回答:
你在createSQLQuery方法後面在使用
addScalar方法傳入你datetime的實體對應名和hibernate類型試一下吧
補充:
這個的確比較麻煩,你可以寫個公共轉換方法進行轉換
就是字元串根據你的時間格式進行取出時間long
然後轉換就可以了
大概這樣子
SimpleDateFormat
simpleDateFormat
=
new
SimpleDateFormat();

『貳』 SQL中如何將數字型轉換為日期型

平時為了方便存儲和查詢,通常會選擇將時間存儲為毫秒或者秒的形式。但是頁面顯示的時候很不直觀,需要將整型數字轉化成日期格式,轉化方式包括下面幾種:

1、秒數與Date之間的轉換:selectfrom_unixtime(1388776825);

還可以定義時間格式,用法如下:

SELECTFROM_UNIXTIME(1388776825,'%Y-%m-%d%H:%m:%s');

結果:2014-01-0403:01:25

SELECTFROM_UNIXTIME(1388776825,'%Y年%m月%d')

結果:2014年1月4

2、將秒數轉為Date:SELECTUNIX_TIMESTAMP('2014-03-2310:10:40')

如果想逆向轉換,可以通過unix_timestamp()函數反向轉換。用法如下:

SELECTUNIX_TIMESTAMP();//獲取當前時間的秒數

SELECTUNIX_TIMESTAMP('2014-03-2310:10:40');//獲取指定日期格式的秒數

SELECTUNIX_TIMESTAMP('2014-03-23');//獲取指定日期格式的秒數

(2)sql資料庫日期類型擴展閱讀:

一、date型換int型

SELECTUNIX_TIMESTAMP(『2017-9-2213:54:45』)

二、int型轉date型

SELECTFROM_UNIXTIME(1506059685)

需要注意的是,一個int值轉換為DateTime需要從1970年1月1日0點0分0秒開始,但是必須明確,這個時間是標准時間,而不是北京時間。

資料庫中數據的時間都是以標准時間為准繩的。所以必須轉換到當前時間,中國是+8,可以簡單的調用ToLocalTime達到效果。

『叄』 sql數據類型有哪些

SQL數據類型有以下這些:

1、二進制數據類型。

二進制數據包括 Binary、Varbinary 和 Image

Binary 數據類型既可以是固定長度的(Binary),也可以是變長度的。

Binary[(n)] 是 n 位固定的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4 個位元組。

Varbinary[(n)] 是 n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4個位元組,不是n 個位元組。

2、字元數據類型。

字元數據類型包括char、varchar和text。

字元數據是由字母、符號和數字的任意組合組成的數據。

varchar是可變長度字元數據,其長度不超過8kb。char是最大長度為8kb的固定長度字元數據。超過8kb的ASCII數據可以使用文本數據類型存儲。

3、Unicode 數據類型。

Unicode數據類型包括nchar、nvarchar和ntext。

在Microsoft SQL Server中,傳統的非Unicode數據類型允許使用由特定字元集定義的字元。在安裝SQL Server期間,允許選擇字元集。

在Unicode標准中,包含由各種字元集定義的所有字元。使用Unicode數據類型佔用的空間是使用非Unicode數據類型的兩倍。

4、日期和時間數據類型。

日期和時間數據類型包括 Datetime 和 Smalldatetime兩種類型。

日期和時間數據類型由有效的日期和時間組成。

例如,有效的日期和時間數據包括「4/01/98 12:15:00:00:00 PM」和「1:28:29:15:01AM 8/17/98」。

前一個數據類型是日期在前,時間在後。後一個數據類型是時間在前,日期在後。

在 Microsoft SQL Server中,日期和時間數據類型包括Datetime 和 Smalldatetime 兩種類型時,所存儲的日期范圍是從 1753 年 1 月 1 日開始,到9999 年12 月 31 日結束(每一個值要求 8 個存儲位元組)。

5、數字數據類型。

數字數據只包含數字。數字數據類型包括正數和負數、小數(浮點)和整數。

整數由正整數和負整數組成,如39、25、0-2和33967。在Microsoft SQL Server中,存儲在整數中的數據類型是int、smallint和tinyint。

int數據類型存儲的數據多於smallint數據類型,而smallint數據類型存儲的數據多於tinyint數據類型。

使用int數據類型存儲數據的范圍從-2 147 483 648到2 147 483 647(每個值需要四個位元組的存儲空間)。

6、貨幣數據類型。

在 Microsoft SQL Server 中,貨幣數據的數據類型是Money 和 Smallmoney

Money數據類型要求 8 個存儲位元組,Smallmoney 數據類型要求 4 個存儲位元組。

『肆』 在SQL-Server中關於日期的數據類型有哪些

有datetime和smalldatetime兩種格式的日期時間數據類型,如下:
1、datetime
資料庫內部用兩個4位元組的整數存儲datetime數據類型的值。
第一個4位元組存儲基礎日期(即1900-1-1, base date)之前或之後的日期。
日期范圍為1753-1-1至9999-12-31。當日期為1900-1-1時值為0,之前的日期是負數;之後日期是正數,另外一個4位元組存儲以午夜後三又三分之一(10/3)毫秒數所代表的每天的時間。
2、smalldatetime
smalldatetime數據類型存儲日期和每天的時間,但精確度低於datetime。
SQL Server將smalldatetime的值存儲為兩個2位元組的整數。
第一個2位元組存儲1900-1-1後的天數,另外一個2位元組存儲午夜後的分鍾數。
日期范圍從1900-1-1到2079-6-6,時間精確到分鍾,29.998秒或更低的smalldatetime值向下舍入為最接近的分鍾,29.999秒或更高的smalldatetime值向上舍入為最接近的分鍾。
--returns time as 12:35
SELECT CAST('2000-05-08 12:35:29.998' AS smalldatetime)
GO
--returns time as 12:36
SELECT CAST('2000-05-08 12:35:29.999' AS smalldatetime)
GO
注意:沒有單獨的日期或時間類型。

『伍』 SQL Server常用數據類型

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,可能會有一些不支持問題。可以看到Agent沒啟動的,實際上是這個版本沒有Agent。

有意思的是,使用SSMS可以創建庫,卻不能創建表。從錯誤信息來看,似乎是不支持圖形界面創建表。

總結:

嘗鮮性地測試一下,有機會還會測試更多功能。目前不支持Agent,復制和大部分BI功能組件。

很多人對SQL Server On Linux是有所期待。如果它在Linux上的表現與之在以往Windows上的表現一樣優秀的話,我相信會有更多人會使用它的。

SQL Server On Linux的更多文檔內容:SQL Server on Linux Documentation

;

『陸』 sql 日期格式轉換

1、首先點擊頂部菜單的【新建查詢】,打開一個SQL輸入窗口。

2、將當前日期格式化為【年-月-日】格式,SelectCONVERT(varchar(100),GETDATE(),23)。

3、將當前時間格式化為【時:分:秒】格式,SelectCONVERT(varchar(100),GETDATE(),8)。

4、將當前日期時間格式化為【年-月-日時:分:秒】格式,SelectCONVERT(varchar(100),GETDATE(),20)。

5、將當前日期格式化為【日-月-年】格式,SelectCONVERT(varchar(100),GETDATE(),105)。

6、將當前日期格式化為【年/月/日】格式,SelectCONVERT(varchar(100),GETDATE(),111)。完成效果圖。

『柒』 在SQL中新建表中的出生時間用哪種數據類型

規定使用date類型。

1.單擊桌面上的「ManagementStudio」圖標。