用户定义表数据类型是从SQL Server 2008开始提供的一种新功能。
本文主要向大家介绍了SQLServer数据库之Sqlserver 自定义表类型定义,使用,删除,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。
在sqlserver数据库中 创建自定义数据库类型,并且自定义数据类型为中文,设置自定义数据类型中文为表的主键。
如下是创建自定义中文数据类型的语句。以及建表语句。
- /****** Object: UserDefinedDataType [dbo].[D_系统主键] Script Date: 10/25/2022 11:14:58 ******/
- CREATE TYPE [dbo].[D_系统主键] FROM [bigint] NULL
- GO
- /****** Object: UserDefinedDataType [dbo].[D_实验室ID] Script Date: 10/25/2022 11:14:57 ******/
- CREATE TYPE [dbo].[D_实验室ID] FROM [bigint] NULL
- GO
- /****** Object: UserDefinedDataType [dbo].[D_快捷码] Script Date: 10/25/2022 11:14:57 ******/
- CREATE TYPE [dbo].[D_快捷码] FROM [varchar](20) NULL
- GO
- /****** Object: UserDefinedDataType [dbo].[D_汉语拼音字头] Script Date: 10/25/2022 11:14:57 ******/
- CREATE TYPE [dbo].[D_汉语拼音字头] FROM [varchar](50) NULL
- GO
- /****** Object: Table [dbo].[TEST] Script Date: 10/25/2022 11:14:57 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE TABLE [dbo].[TEST](
- [LabID] [bigint] NOT NULL,
- [MicroBCBTOMID] [dbo].[D_系统主键] NOT NULL,
- [MicroBCBMID] [dbo].[D_系统主键] NULL,
- [MicroBCBTID] [dbo].[D_系统主键] NULL,
- [DispOrder] [int] NULL,
- [DataAddTime] [datetime] NULL,
- [DataUpdateTime] [datetime] NULL,
- [DataTimeStamp] [timestamp] NULL,
- CONSTRAINT [PK_B_MICROBCBOTTLETYPEOFMANUFA] PRIMARY KEY CLUSTERED
- (
- [MicroBCBTOMID] ASC
- )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
- ) ON [PRIMARY]
- GO
希望对同学们学习SQL Server数据库有所帮助!
·Binary[(n)]二进制数据既可以是固定长度的(Binary),也可以是变长度的。其中,n的取值范围是从1到8000。其存储窨的大小是n+4个字节。
·Varbinary[(n)]二进制数据n位变长度的二进制数据。其中,n的取值范围是从1到8000。其存储窨的大小是n+4个字节。
·Char[(n)]字符数据类型(任何字母、符号和数字任意组合而成的数据)定长字符数据,其长度最多为8KB。
·Varchar[(n)]变长字符数据长度最多为8KB。
·Nchar[(n)]Unicode数据类型(列可以存储多个字符集中的字符)列长度固定不变最多可以存储4000个字符。
·Nvarchar[(n)]Unicode数据类型列长度变化最多可以存储4000个字符。
·Datetime日期和时间数据类型所存储的日期范围是从1753年1月1日开始,到9999年12月31日结束(每一个值要求8个存储字节)。精确到三百分之一秒或3.33毫秒。
·Smalldatetime日期和时间数据类型1900年1月1日开始,到2079年12月31日结束(每一个值要求4个存储字节)。精确到一分钟
·Decimal[(p[,s])]17个字节容纳从1028-1到-1028-1.的值的精确的数字数据类型。你可以定义精度(1-28)和符号(0-定义精度)。缺省精度和符号分别是18和0
·Numeric[(p[,s])]数据类型与decimal型相同。
·Float[(n)]浮点数可以是从-1.79E+308到1.79E+308之间的任意数。
·Real近似数值类型。它可以表示数值在-3.40E+38到3.40E+38之间的浮点数。
·Int数据类型存储数据的范围是从-2147483648到2147483647(每一个值要求4个字节存储空间)。
·Smallint存储数据的范围从-32768到32767(每一个值要求2个字节存储空间)。
·Tinyint存储数据的范围是从0到255(每一个值要求1个字节存储空间)。
·Money货币数据表示正的或者负的货币数量Money数据类型要求8个存储字节存储从-9220亿到9220亿之间的数据,精确到货币单位的万分之一。
·Smallmoney货币数据表示正的或者负的货币数量Smallmoney数据类型要求4个存储字节。能存储从-214748.3648到214748.3647之间的数据,精确到货币单位的万分之一
·Bit由1或者0组成。当表示真或者假、ON或者OFF时,使用Bit数据类型。
·Cursor特殊的数据类型,它包含一个对游标的引用。这种数据类型用在存储过程中,而且创建表时不能用。
·Sysname系统提供的用户定义数据类型,功能上相当于nvarchar(128),用于引用数据库对象名称。
·Timestamp用于表示SQLServer活动的先后顺序,以二进投影的格式表示。Timestamp数据与插入数据或者日期和时间没有关系。
·Uniqueidentifier由16字节的十六进制数字组成,表示一个全局唯一的。当表的记录行要求唯一时,GUID是非常有用。
·Text用来存储大量的非统一编码型字符数据。这种数据类型最多可以有231-1或20亿个字符
·Image二进制数据存储的数据是以位字符串存储的,不是由SQLServer解释的,必须由应用程序来解释。例如,应用程序可以使用BMP、TIEF、GIF和JPEG格式把数据存储在Image数据类型中。
·NtextUnicode数据类型该列可以存储多于4000个字符。