SQLServer2016数据类型

SQLServer2016数据类型

2023年7月13日发(作者:)

说明:入为整数。的varchar数据类型。 TYPE Address

varchar(35) NOT NULL

har(70)

AS ObjectName,

SQL Server 2008数据类型该代码返回如下结果(注意,Name是一种用户定义的数据类型)。此过程中还涉及其他一些用于处理表中索引和其他任何关系的步骤。型,那么该操作可能需要很长时间。可以通过在Management Studio界面中脚本化这种改可以使用如下语法创建一种自定义数据类型(Address),但要注意,它基于SQL Server标准名称,然后将数据复制到该表中。最后,界面删除旧表并用新的数据类型重命名新表。当然,变来观察其原因。Management Studio再创建一个临时表,采用像tmpTableName这样的数据类型。即使创建自定义数据类型,它也必须基于一种标准的SQL Server数据类型。例如,

12016

2

81

42进行反向操作,可使用TYPE_ID()函数。需要注意的另一个函数是SCHEMA_ID(),它用于返回架构的标识值。在需要编写有关SQL Server元数据的报表时,这是特别有用的。要将Employees表中JobTitle列的数据类型改为varchar(70),可以使用如下语法。有两个函数可能不太为您所熟悉。函数TYPE_NAME()将数据类型id转换为适当的名称。要如果在SQL Server Management Studio的表设计界面中更改一个大型表中某列的数据类很多种,但最常见的一种方法是连接s表和s表。在下面的代码中,在转换为与当前数据不兼容的数据类型时,可能丢失重要数据。例如,如果要将包含一些数据如果有一个包含数百万条记录的大型表,则该过程可能需要花费十分钟,有时可能是数小时。您可能想对SQL Server表编写一个报表,显示表中每列的数据类型。完成这项任务的方法有在创建表时,必须为表中的每列指派一种数据类型。本节将介绍SQL Server中最常用的一些(如15.415)的numeric数据类型转换为integer数据类型,那么15.415这个数据将四舍五为避免这种情况,可在查询窗口中使用简单的单行T-SQL语句来更改该列的数据类型。例如, TABLE ee ALTER COLUMN JobTitle Name ColumnName DataType

AS ColumnName,

TYPE_NAME(_type_id) as DataType

FROM s o JOIN s c

ON _id = _id

WHERE ='Department'

and _ID = SCHEMA_ID('HumanResources') 表1-11. 字符数据类型Char(n)将插入拖尾空格来填满20个字符。使用varchar数据类型的好处将超过其额外开销。表1-1列出了这些类型,对其作了简单描述,并说明了要求的存储空间。Nchar(n)数 据 类 型描 述N为1~8000字符之间N为1~4000 Unicode字符之间n字节2.---------------------------------------------------

ment DepartmentID smallint

ment Name

Name

ment GroupName Name

ment ModifiedDate

datetime

是最好使用varchar(max)和nvarchar(max)而不是text和ntext数据类型。于存储字符数据。varchar和char类型的主要区别是数据填充。如果有一表列名为型相同,但这两种数据类型可以处理国际性的Unicode字符。它们需要一些额外开销。以个字节。但如果在数据类型为char(20)的列中存储相同的值,将使用全部20个字节。SQL和增加的空间,应该避免使用Unicode列,除非确实有需要使用它们的业务或语言需求。字符数据类型包括varchar、char、nvarchar、nchar、text以及ntext。这些数据类型用FirstName且数据类型为varchar(20),同时将值Brian存储到该列中,则物理上只存储5应尽可能少地使用这两种数据类型,因为可能影响性能但可在单行的列中存储多达2GB的数nvarchar数据类型和nchar数据类型的工作方式与对等的varchar数据类型和char数据类如果要节省空间,那么为什么还使用char数据类型呢?使用varchar数据类型会稍增加一些将使用10个字节;而如果将它存储为nchar(20),则需要使用40字节。由于这些额外开销低于该值的采用char数据类型,反之则采用varchar数据类型。通常的原则是,任何小于或认为应最大可能地节省空间,但一般来说,好的做法是在组织中找到一个合适的阈值,并指定等于5个字节的列应存储为char数据类型,而不是varchar数据类型。如果超过这个长度,Unicode形式存储的数据为一个字符占两个字节。如果要将值Brian存储到nvarchar列,它系统开销。例如,如果要存储两字母形式的州名缩写,则最好使用char(2)列。尽管有些DBA接下来要提的数据类型是text和ntext。text数据类型用于在数据页内外存储大型字符数据。

12016

2

81

42据。与text数据类型相比,更好的选择是使用varchar(max)类型,因为将获得更好的性能。另外,text和ntext数据类型在SQL Server的一些未来版本中将不可用,因此现在开始还节额外开销存 储 空 间(2n字节)+2字表1-2TextNtext数值数据类型包括bit2. 精确数值数据类型intVarchar(n)Varchar(max)其他常见的数值数据类型如表1-2所示。Nvarchar(max)最多为230–1bigint(1 073 741 823)Unicode字符节额外开销tinyintsmallint数 据 类 型描 述最多为231–1最多为230–10、1或Null(2 147 483 647)字符N为1~8000字符之间–2 147 483 648~0~255之间的整数2 147 483 647之间的整数(1 073 741 823)Unicode字符最多为231–1(2 147 483 647)字符每字符1字节+2数据类型都用于存储不同类型的数字值。第一种数据类型bit只存储0或1,在大多数应用程bit、tinyint、smallint、int、bigint、numeric、decimal、money、float以及real。这些

12016

2

81

42存 储 空 间序中被转换为true或false。bit数据类型非常适合用于开关标记,且它只占据一个字节空间。1字节(8位)字节额外开销字节额外开销每字符1字节每字符2字节2×字符数+2字每字符1字节+29 223 372 036 854 775 807–32 768~32 767之间的整数–9 223 372 036 854 775 808~8字节4字节2字节1字节 (续表)表1-3money它将被舍入为14.3。3. 近似数值数据类型数 据 类 型smallmoneydecimal(p,s)因此不能精确地表示所有值。float()时(括号中为空),默认为53。 SQL Server 2008数据类型(2)numeric(p,s)或–1 038+1~1 038–1之间的数值最多17字节

12016

2

81

42之间的整数描 述

922 337 203 685 477.580 7–214 748.3648~2 14 748.36474字节–922 337 203 685 477.580 8~8字节存 储 空 间点右边的位数。精度(Precision)定义了总位数,包括小数点右边的位数。例如,由于果指定位于1~24之间,SQL就使用24。如果指定25~53之间,SQL就使用53。当指定如decimal和numeric等数值数据类型可存储小数点右边或左边的变长位数。Scale是小数这个分类中包括数据类型float和real。它们用于表示浮点数据。但是,由于它们是近似的,float(n)中的n是用于存储该数尾数(mantissa)的位数。SQL Server对此只使用两个值。如14.88531可为numeric(7,5)或decimal(7,5)。如果将14.25插入到numeric(5,1)列中,表1-3列出了近似数值数据类型,对其进行简单描述,并说明了要求的存储空间。real()float[(n)]数 据 类 型描 述–3.40E+38~–1.18E––1.79E+308~–2.23E–308,0,2.23E–308~1.79E+308N> 24-8字节4字节存 储 空 间N< =24-4字节表1-4注意:4. 二进制数据类型5. 日期和时间数据类型real的同义词为float(24)。近的3.33毫秒。ImageBinary(n)数 据 类 型Varbinary(n)描 述Varbinary(max)最多为231–138,0,1.18E–38~3.40E+38最多为231–1(2 147 483 647)十六进制数位项将数据存储为文件,同时不受varbinary(max)的2GB大小的限制。表1-4列出了二进制数据类型,对其作了简单描述,并说明了要求的存储空间。

12016

2

81

42N为1~8000十六进制数字之间n字节存 储 空 间N为1~8000十六进制数字之间每字符1字节每字符1字节每字符1字节(2 147 483 647)十六进制数字+2字节额外开销+2字节额外开销可保存最多8KB的二进制数据,其性能通常比image数据类型好。SQL Server 2008的新如varbinary、binary、varbinary(max)或image等二进制数据类型用于存储二进制数据,功能是可以在操作系统文件中通过FileStream存储选项存储varbinary(max)对象。这个选据页外部存储最多2GB的文件。image数据类型的首选替代数据类型是varbinary(max),如图形文件、Word文档或MP3文件。其值为十六进制的0x0~0xf。image数据类型可在数SQL Server 2008有4种与日期相关的新数据类型:datetime2、dateoffset、date和datetime和smalldatetime数据类型用于存储日期和时间数据。smalldatetime为4字节,存储1900年1月1日~2079年6月6日之间的时间,且只精确到最近的分钟。datetime数据类型为8字节,存储1753年1月1日~9999年12月31日之间的时间,且精确到最time。通过SQL Server联机丛书可找到使用这些数据类型的示例。为3。为0~7之间。

12016

2

81

42表1-5DateDatetime数 据 类 型Datetime2(n)SmalldateTime描 述精确到最近的3.33毫秒6月6日,精确到1分钟0~7之间的N指定小数秒Datetimeoffset(n)9999年1月1日~12月31日1900年1月1日~2079年9999年1月1日~12月31日9999年1月1日~12月31日为+/-14小时,包含了UTC偏移量,因此可以合理化不同时区捕捉的时间。0~7之间的N指定小数秒+/–偏移量表1-5列出了日期/时间数据类型,对其进行简单描述,并说明了要求的存储空间。1753年1月1日~9999年12月31日,8字节4字节3字节6~8字节这个表达式中的3表示存储时秒的小数精度为3位,或0.999。有效值为0~9之间,默认值datetimeoffset数据类型和datetime2数据类型一样,带有时区偏移量。该时区偏移量最大date数据类型只存储日期,这是一直需要的一个功能。而time数据类型只存储时间。它也支持time(n)声明,因此可以控制小数秒的粒度。与datetime2和datetimeoffset一样,n可datetime2数据类型是datetime数据类型的扩展,有着更广的日期范围。时间总是用时、分钟、秒形式来存储。可以定义末尾带有可变参数的datetime2数据类型--如datetime2(3)。8~10字节存 储 空 间表1-6Time(n)6. 其他系统数据类型小时:分钟:秒.99999990~7之间的N指定小数秒还有一些之前未见过的数据类型。表1-6列出了这些数据类型。3~5字节TableCursor数 据 类 型HierarchyidRowversionSQL_VariantTimestamp or描 述(或元数据)Uniqueidentifier可以包含全局唯一标识符可能包含任何系统数据类包含一个对光标的引用和所有计算机来说是唯一的。8016字节型的值,除了text、ntext、对于每个表来说是唯一的、自用于存储用于进一步处理的数image、timestamp、xml、寸为8000字节数据+16字节

12016

2

81

42动存储的值。通常用于版本戳,及用户定义的数据类型。最大尺可以只用作变量或存储过程参数它们也可用于存储过程和批处理中主要用于返回表值函数的结果集,包含一个对层次结构中位置的引用据集。定义类似于Create Table。varbinary (max)、sql_variant以varchar(max)、nvarchar(max)、8字节不适用取决于表定存 储 空 间义和存储的行数字节的额外开销1~892字节+2尽管存储为16位的二进制值,函数获得。这个函数返回的值对(Globally Unique Identifier,GUID)。guid值可以从Newid()该值在插入和每次更新时自动改变16字节注意:这些内容。XML7. CLR集成cursor数据类型可能不用于Create Table语句中。个成员在行中的数字级别,如/1/3。可以运用一些与这种数据类型一起使用的特殊函数。XML数据存储XML文档或片段。根据文档中使用UTF-16或是UTF-8,它在尺寸上像texthierarchyid列是SQL Server 2008中新出现的。您可能希望将这种数据类型的列添加到这存储在该列中的值是行在层次结构中的路径。层次结构中的级别显示为斜杠。斜杠间的值是这在SQL Server 2008中,还可使用公共语言运行库(Common Language Runtime,CLR)

12016

2

81

42或ntext一样存储。XML数据类型使用特殊构造体进行搜索和索引。第15章将更详细地介绍样的表中--其表行中的数据可用层次结构表示,就像组织层次结构或经理/雇员层次结构一样。创建自己的数据类型和存储过程。这让用户可以使用Visual Basic或C#编写更复杂的数据类绍其管理部分的内容。可以以Unicode或非Unicode形式存储最多2GB型,以满足业务需求。这些类型被定义为基本的CLR语言中的类结构。第8章将更详细地介但它显示为char(36)

发布者:admin,转转请注明出处:http://www.yc00.com/news/1689248224a225690.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信