国产莉萝无码av在线播放-尤物av无码国产在线观看-亚洲中文字幕日本无线码-在线观看片免费人成视频无码-99re6这里有精品热视频

什么是SQL Server?為什么數據類型很重要?

什么是SQL Server?為什么數據類型很重要?

有許多類型的數據與 SQL Server 兼容,重要的是要了解它們是什么以避免不兼容的數據類型出現問題。理解兼容的數據類型也是理解數據類型優先級的基礎,它決定了在處理兩種不同類型的對象時會產生什么類型的數據。 在本指南中,我們將介紹 SQL Server 支持的所有數據類型,以及使用 Transact-SQL 或 Microsoft .NET Framework 定義自定義數據類型的過程。

什么是SQL Server?為什么數據類型很重要?-美聯科技

什么是 SQL Server?

在深入了解 SQL Server 支持的許多數據類型之前,先快速回顧一下 SQL Server 是什么。Microsoft 開發了 SQL Server 作為關系數據庫管理系統 (RDBMS)。SQL Server 使用 SQL,這是使用各種關系數據庫的標準語言。 Microsoft 的 SQL Server 不再專屬于 Windows 環境,現在可以在 Linux 上使用,這對于有興趣使用 SQL Server 的人來說是個好消息。此外,微軟的云平臺 Azure 支持 SQL Server。因此,如果您需要一個地方來托管它,那么沒有比原生解決方案更好的地方了。

微軟將其稱為“最了解 SQL Server 的云”,Azure SQL Server 確實受益于無縫集成、簡單性和可靠性,因為服務器和云基礎設施都是由同一家公司開發和維護的。 但是,無論您在何處托管 SQL Server,都必須注意 SQL Server 使用的 SQL 語言略有不同。Microsoft 開發了 Transact-SQL (T-SQL),它與標準 SQL 非常相似,但定義了一組對 SQL Server 編程所必需的專有概念。 如果您熟悉 SQL,則使用 Transact-SQL 并不難,您將能夠輕松使用 SQL Server。但有效使用 SQL Server 的另一個關鍵方面是了解它支持的所有數據類型。

為什么數據類型很重要?

錯誤的數據類型會導致數據庫性能、查詢優化和數據截斷等問題。這些問題通常是開發團隊首先意識到的,因為它們是跟蹤速度和性能的問題。盡管如此,問題可能會蔓延到整個組織,導致數據完整性問題和其他嚴重挑戰。 如果您是 SQL Server 的新手,那么數據類型的絕對數量可能會讓人不知所措。

什么是SQL Server?為什么數據類型很重要?-美聯科技

但是,它們組織得井井有條并且有據可查,只要您了解計劃存儲的數據類型,就可以更容易地找到所需的內容。當然,雖然您可以隨時參考,但獲得 SQL Server 數據類型的知識對于長期的效率和優化至關重要。深入研究后,您會發現存在一些重疊,并且只有在您完全了解所有選項的情況下,才能知道何時選擇浮點數而不是十進制數或選擇可變長度而不是固定值。

有哪些不同的數據類別?

下面是 SQL Server 中每個數據類別的概覽,以及適合每個數據類型的所有數據類型。

精確數字

使用精確的數字數據類型時,了解您的選項很重要,這樣您就可以選擇適合您的用例的最小數據類型。還需要選擇與您存儲的數字類型相對應的數據類型,例如貨幣的貨幣或小貨幣。

  • tinyint:最小的整數存儲類型,能夠存儲 0 到 255 之間的數字。
  • smallint:整數存儲類型,大小為兩倍,最多 2 個字節。
  • int:整數存儲類型,最多存儲 4 個字節。
  • bigint:最大的整數存儲類型,最多可容納 8 個字節的數據。
  • 十進制和數字:這些同義詞指的是相同的數據類型,其特點是其固定的小數位數和精度。
  • bit:此數據類型的值始終為 1、0 或 NULL。您可以將真/假數據轉換為位,其中 1 等于 True,0 等于 False。
  • smallmoney:此數據類型表示貨幣值,最多允許兩位小數。
  • money:這是另一種貨幣數據類型,但最多允許四位小數。

什么是SQL Server?為什么數據類型很重要?-美聯科技

Unicode 字符串

如果您不熟悉 Unicode,它是一種通用標準,它為每個字符分配一個唯一編號,從而允許對書面文本進行一致的編碼和表示。例如,Unicode 中的“嘿”將被分解如下:U+0048(“H”)、U+0065(“E”)和 U+0059(“Y”)。SQL Server 支持使用這些字符串的所有 Unicode 字符數據。它們可以是固定的或可變的。

  • nchar:大小固定,推薦在列數據大小一致時使用。
  • nvarchar:大小可變,建議在列中的數據大小變化很大時使用。
  • ntext:計劃在 SQL Server 的未來版本中刪除,設計為 Unicode 的可變長度數據類型。Microsoft 建議改為使用 nvarchar(max)。

近似數值

當數值數據不能精確表示時,它被稱為“浮點”數值數據,您可以使用近似數數據類型來存儲它。對于浮點數據類型,數字使用科學計數法寫入,因此 825,000 將存儲為 8.5 x 10 5。浮點數可以非常大或非常小。浮點數和十進制數據類型都可以存儲帶有小數的數字——不同之處在于浮點數需要更少的存儲空間,而小數則更精確。SQL Server 支持浮點數和實數數據類型的兩種近似數值。

  • float:雙精度浮點數,相當于 8 個字節或 64 位。
  • real:單精度浮點數,相當于 4 個字節或 32 位。

什么是SQL Server?為什么數據類型很重要?-美聯科技

字符串

字符串有一個不言自明的名稱:這些數據類型用于存儲字符。它們的大小可以是固定的或可變的。

  • char:使用靜態內存位置的固定大小的字符串數據。當您知道字符串的長度并且列中的所有字符串都相同時是理想的。
  • varchar:使用動態內存位置的可變大小的字符串數據。如果您不確定字符串的長度或列中字符串的長度會有很大差異時使用。
  • text:計劃在 SQL Server 的未來版本中刪除,設計為非 Unicode 數據的可變長度數據類型。Microsoft 建議將其替換為 varchar (max)。

二進制字符串

二進制數據類型支持固定或可變的數據字符串。字符串和二進制字符串之間的區別在于它們包含的數據:字符串通常存儲文本,但也可以存儲數字或符號。二進制字符串通常以字節的形式存儲非傳統數據,例如圖片。

  • binary:固定長度,當列中的數據大小一致時非常適合使用。
  • varbinary:當列中的數據大小變化很大時,可變長度是理想的。
  • 圖片:計劃在 SQL Server 的未來版本中刪除,旨在存儲可變長度的二進制數據。Microsoft 建議將其替換為 varbinary (max)。

什么是SQL Server?為什么數據類型很重要?-美聯科技

日期和時間

這些數據類型明確設計用于存儲日期和時間。有些支持時區意識,有些則不支持。在處理日期和時間時,選擇一種保持條目格式一致的數據類型并選擇一種足夠靈活以支持您需要的詳細程度(即一天中的時間、時區等)的數據類型至關重要。

  • date:定義日期。默認格式為 YYYY-MM-DD,但可以采用 20 多種不同的方式進行格式化,包括 DMY、DYM 和 YMD。
  • datetimeoffset:定義日期和時間。此數據類型可識別時區。 datetime2:上述數據類型的擴展,具有可選的小數秒精度。
  • datetime:與 datetime2 類似,但小數秒精度較低。
  • smalldatetime:定義日期和時間,但秒始終為零。
  • time:定義一天中的某個時間,但不知道時區。

其他數據類型

SQL Server 中存在其他數據類型,但它們并不完全適合上述任何類別。因此,這些數據類型僅存在于“其他”下。其他數據類型包括:

  • rowversion:用于在表中標記行的版本。不保留日期或時間的簡單遞增數字。
  • ?hierarchyid:可變長度系統數據類型,用于表示層次結構中的位置。
  • uniqueidentifier:能夠存儲多達 16 個字節的全局唯一標識符 (GUID)。
  • sql_variant:存儲 SQL 支持的各種數據類型。sql_variant 最重要的部分是它是可變的。例如,一個 sql_variant 列可以在一行中包含一個 int,而在另一行中包含一個二進制值。為了應用算術運算,如 SUM 或 PRODUCT,必須首先將類型轉換為與該運算一起使用的東西。
  • xml:存儲 XML 數據。
  • 空間幾何類型:表示平面坐標系中的數據。
  • 空間地理類型:表示圓形地球坐標系中的數據。
  • 表:用于存儲結果以供稍后處理的特殊數據類型。

什么是SQL Server?為什么數據類型很重要?-美聯科技

定義自定義數據類型

如果您的自定義數據類型在上述任何類別中都不是特定的,您仍然可以將其帶到 SQL Server 上,只要您提前設置它。使用 Transact-SQL 或 Microsoft .NET Framework,開發人員可以為他們的項目定義自定義數據類型。

在創建自定義數據類型時,SQL Server 的界面有一些工具可以幫助您生成 Transact-SQL。您需要指定的字段包括架構、名稱、基礎數據類型、長度、允許空值、字節大小、默認值中的可選字段以及數據類型必須遵循的任何規則。例如,電子郵件字段可能會使用 varchar 基礎類型,并且必須包含 @ 和 .,以及不允許使用的字符列表。然后,您將設置一個適合您需要的最大長度,并且字節數將自動填充到界面中。

如果您需要創建自己的數據類型,Microsoft 會提供更多信息。

選擇正確的數據類型

使用 SQL Server 時,為正在使用的任何數據選擇正確的數據類型至關重要。不這樣做可能會導致數據質量問題或數據丟失,例如在您使用數據類型來存儲不打算這樣做的日期和時間的情況下。錯誤的數據類型也會對??查詢和性能產生負面影響。

例如,如果您需要存儲整數,您可能會認為只需選擇精確的數字數據類型就不會出錯。但是,不必要地使用 bigint 類型來存儲像年齡這樣的小而簡單的數字會導致資源浪費。

大多數人會告訴您在處理數字數據時從 smallint、integer、bigint 或 decimal 中進行選擇。如果您正在處理非常大的數字,他們可能會建議 decfloat 或 float。但是,當您處理特定用例時,此建議過于簡單和籠統。

客戶經理
主站蜘蛛池模板: 波多野结衣超清无码专区| 欧美大屁股xxxx高跟欧美黑人| 欧美老妇人与禽交| 亚洲精品无码av黄瓜影视| 肉体暴力强伦轩在线播放| 亚洲熟妇丰满xxxxx国语| 日本最新免费二区三区| 久久久久欧美精品网站| 六月婷婷国产精品综合| 韩国19禁主播深夜福利视频| 欧美va天堂va视频va在线| 亚洲精品综合网在线8050影院| 黑人好猛厉害爽受不了好大撑| 国产精品视频2020年最新视频| 国产尤物av尤物在线观看| 蜜臀av一区二区| 日韩精品无码一本二本三本| 日本免费一区二区三区激情视频| 成人精品av一区二区三区网站| 亚洲一卡2卡3卡4卡5卡乱码观看| 精品99日产一卡2卡三卡4| 亚洲国产三级在线观看| 久久精品中文字幕大胸| 国产色诱视频在线播放网站| 日本韩国的免费观看视频| 国产综合色在线视频区| 亚洲色av天天天天天天| 亚洲婷婷五月综合狠狠| 国精品无码人妻一区二区三区| 亚洲综合无码精品一区二区| 老色鬼在线精品视频在线观看| 好男人社区资源| 亚洲精品一区国产精品| 午夜福利一区二区三区在线观看| 国产乱人伦真实精品视频| 小泽玛利亚一区二区免费| 国产精品久线在线观看| 无码国内精品久久人妻蜜桃| 亚洲多毛女人厕所小便| 五月婷久久综合狠狠爱97| 色情久久久av熟女人妻网站 |