您的位置:新葡亰496net > 网络数据库 > 等学习拾遗,关于数据库建表时字段数据类型

等学习拾遗,关于数据库建表时字段数据类型

发布时间:2019-06-16 03:53编辑:网络数据库浏览(139)

    1.电话字段设置二十五个Byte竟然非常不足,好呢设置为50的长度。

    alter table <表名> alter column <字段名> 新类型名(长度)
    
    举例:
    alter table T_CustomerFile alter MobilePhoneNumber nvarchar(50)
    

    在SQL Server中,当大家设置字符型字段的时候,往往有许三个数据类型供大家挑选,如:char nchar varchar nvarchar等,那么大家到底应该选用哪叁个啊?上边就相继来叙述其分别。

    正文转自:

    在数据库设计时大家平常为数据类型而干扰,不过当你熟知了随后就不再烦恼了,看看啊,看看对您有未有救助。

    基础:

     2.剔除三个表,整个表在数据库中冲消

    IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[T_ABC]') AND type in (N'U'))
    
    DROP TABLE [dbo].[T_ABC]
    

    char:定点长度,非Unicode字符数据,长度为n个字节。n的取值范围为1至8,000,存储大小是n个字节。char的SQL二零零四同义词为character。

     

    char,varchar,text ,nchar,nvarchar,ntext 等求学拾遗,作者要好收藏的啊!

    char、varchar、text和nchar、nvarchar、ntext的区别

    3、整型bigint、int、smallint、tinyint的区别

    bigint

    从 -2^63 (-9223372036854775808) 到 2^63-1(9223372036854775807) 的整型数据

    (全部数字)。存款和储蓄大小为 8 个字节。

     

    int

    从 -2^31 (-2,147,483,648) 到 2^31 - 1(2,147,483,647) 的整型数据(全部数字)。

    存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。

     

    smallint

    从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存款和储蓄大小为 2 个字节。

     

    tinyint

    从 0 到 255 的整型数据。存款和储蓄大小为 1 字节。

    varchar:可变长度,非Unicode字符数据。n的取值范围为1至8,000。max提醒最大存款和储蓄大小是2^31-1个字节。存款和储蓄大小是输入数据的骨子里尺寸加2个字节。所输入数据的长短可认为0个字符。SQL-二〇〇二中的varchar就是charvarying或charactervarying。

    在 Microsoft® SQL Server™ 中,每种列、局地变量、表达式和参数都有叁个相关的数据类型,那是钦点对象可享有的数据类型(整型、字符、money 等等)的表征。SQL Server 提供系统数据类型集,定义了可与 SQL Server 一齐使用的具备数据类型。下边列出系统提供的数据类型集。

    看过那篇小说,重若是给我们给七个提出:

    1、CHAOdyssey。CHA兰德逍客存款和储蓄定长数据很有利,CHATiguan字段上的目录成效级高,举例定义char(10),那么不论是你存款和储蓄的多少是否达到了12个字节,都要占去十三个字节的上空,不足的活动用空格填充。

     4、varchar、nvarchar、char、nchar

    varchar(n)
    长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是二个在乎 1 和 8,000 之间的数值。存款和储蓄大小为输入数据的字节的实际尺寸,而不是 n 个字节。

    nvarchar(n)
    带有 n 个字符的可变长度 Unicode 字符数量。n 的值必须介于 1 与 4,000 之间。字节的囤积大小是所输入字符个数的两倍。

     如字段值只是英文可选用varchar,而字段值存在较多的双字节(中文等)字符时用nvarchar

     

    char的长度是不可变的,而varchar的尺寸是可变的。char的存取数度比varchar要快得多,因为其尺寸固定,方便程序的仓库储存与搜索;char为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符攻下空间,可谓是以空间换取时间效用,而varchar是以空间效能为第二个人的

     

    nchar的尺寸是不可变的,Unicode字符数据。

     

    char,varchar 最多8000个英文,4000个汉字
    nchar,nvarchar 可存储4000个字符,无论英文还是汉字

    TEXT

    text存款和储蓄可变长度的非Unicode数据,最大尺寸为2^31-1(2,147,483,647)个字符。

    ntext
    可变长度 Unicode 数据的最大尺寸为 2^30 - 1 (1,073,741,823) 个字符。存储大小是所输入字符个数的两倍(以字节为单位)。ntext 在 SQL-92中的同义词是 national text。

     

    假若数据量比不小,又能百分百显明长度且保存只是ansi字符,那么使用char
    能分明长度又不鲜明是ansi字符大概,那么使用nchar
    对于超大数据,如文章内容,使用nText 
    别的的通用nvarchar

    nchar:n个字符的从来长度的Unicode字符数据。n值必须在1到4,000之内(含)。存款和储蓄大小为两倍n字节。nchar的SQL-2000同义词为nationalchar和nationalcharacter。

    能够定义用户定义的数据类型,其是系统提供的数据类型的别称。有关用户定义的数据类型的越来越多消息,请参见 sp_addtype 和创立用户定义的数据类型。

    第三个提出:

     

     5、DECIMAL``(P,D)

    代表列能够储存D位小数的P位数。十进制列的莫过于范围取决于精度和刻度。

    剩余数字
    0 0
    1–2 1
    3–4 2
    5–6 3
    7-9 4

    例如:DECIMAL(19,9)对此小数部分持有9位数字,对于整数部分持有19位-9位 = 10位数字,小数部分须求4个字节。 整数有的对于前9位数字必要4个字节,1个剩余字节供给1个字节。DECIMAL(19,9)列共计必要9个字节。

     

    nvarchar:可变长度Unicode字符数据。n值在1到4,000以内(含)。max提醒最大存款和储蓄大小为2^31-1字节。存款和储蓄大小是所输入字符个数的两倍 2个字节。所输入数据的尺寸可感到0个字符。nvarchar的SQL-二零零四同义词为nationalcharvarying和nationalcharactervarying。

    当八个具备不一致数据类型、排序规则、精度、小数位数或长度的表明式通过运算符实行重组时:

             微软或然会几次三番的SQL Server版本中移除text类型,所以从现行反革命就活该用varchar(max) 来代替text、 用nvarchar(max)替代ntext,用binary(max)替代image. 为XML数据选拔xml类型。

    2、VALacrosseCHA途观。存款和储蓄变长数据,但存款和储蓄效能没有CHA奇骏高。借使叁个字段大概的值是不牢固长度的,我们只了解它不只怕超越12个字符,把它定义为 VACR-VCHACRUISER(10)是最经济的。VA安德拉CHA凯雷德类型的实际尺寸是它的值的实际上尺寸 1。为啥“ 1”呢?那三个字节用于保存实际使用了多大的长度。从空间上思虑,用varchar合适;从效用上思量,用char合适,关键是依附真实情形找到权衡点。

    PowerDesigner  和 astah professional 

    工作比较轻便的数据库设计,使用PowerDesigner就够了。

     

    点击新建新模型->Categories->Infomation->Physical Data,就能够张开数据库表结构划设想计之旅。

    统一策画好的多寡库表结构,双击在“Table Properties”标签页下,有叁个“Preview”的价签,张开,就能够看到相应数据库表设计的SQL语句。直接复制到MSSQLServer、Oracle或别的数据库的实施窗口,试行就可以创立。

     

    若果事业相对复杂,能够动用astah professional版本来进行当务和数据库设计,在astah的主分界面包车型的士tools->EKoleosDiagram->Export Sql... 能够导出对应的SQL语句。

    新葡亰496net 1

     

    参考

    char,varchar:最多8000个英文,4000个汉字

    1. 因此将数据类型的优先顺序规则应用到输入表达式的数据类型来规定所得值的数据类型。有关更加的多新闻,请参见数据类型的事先顺序。

    2. 纵然结果数据类型为 charvarchartextncharnvarcharntext,则结果值的排序规则由排序规则的优先顺序规则决定。有关越来越多信息,请参见排序规则的先行顺序。

    3. 结果的精度、小数位数及长度取决于输入表达式的精度、小数位数及长度。有关更加的多新闻,请参见精度、小数位数和长短。

    其次个提议:

     

    nchar,nvarchar:可存储陆仟个字符,无论英文依旧汉字

    SQL Server 为 SQL-92 包容性提供了数据类型同义词。有关更加的多新闻,请参见数据类型同义词。

                在字段为字符串并且相比较多小的时候,尽管字符串全是汉字,提出选拔Nvachar,如若既有字母又有汉字并且字母偏多的话,提议利用Char或者Varchar。

    3、TEXT。text存储可变长度的非Unicode数据,最大尺寸为2^31-1(2,147,483,647)个字符。

    char,nchar:定长,速度快,占空间大,需管理

    规范数字

    接下来大家能够详细看一下:

     

    varchar,nvarchar:变长,速度慢,占空间小,不要求管理

    整数

    bigint

    从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(全体数字)。

    int

    从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(全体数字)。

    smallint

    从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整数数据。

    tinyint

    从 0 到 255 的整数数据。

    1、varchar(n) 长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是贰个在于 1 和 8,000 之间的数值。存款和储蓄大小为输入数据的字节的莫过于尺寸,而不是 n 个字节。 2、nvarchar(n) 包蕴 n 个字符的可变长度 Unicode 字符数量。n 的值必须介于 1 与 4,000 之间。字节的仓库储存大小是所输入字符个数的两倍。 举例:两字段分别有字段值:作者和coffee ,那么varchar字段占2×2 6=十二个字节的贮存空间,而nvarchar字段占8×2=17个字节的囤积空间。 如字段值只是英文可挑选varchar,而字段值存在较多的双字节(汉语、土耳其共和国(The Republic of Turkey)语等)字符时用nvarchar 。

    4、NCHACR-V、NVA奇骏CHARAV4、NTEXT。那三种从名字上看比前边二种多了个“N”。它代表存款和储蓄的是Unicode数据类型的字符。我们精晓字符中,英文字符只必要八个字节存款和储蓄就足足了,但汉字众多,须求七个字节存款和储蓄,英文与汉字同期存在时便于形成混乱,Unicode字符集正是为着消除字符集这种不兼容的难题而发生的,它有着的字符都用八个字节表示,即英文字符也是用多少个字节表示。nchar、nvarchar的长度是在1到五千时期。和char、varchar相比起来,nchar、nvarchar则最多囤积四千个字符,不论是英文照旧汉字;而char、varchar最多能存款和储蓄八千个英文,伍仟个汉字。能够看来使用nchar、nvarchar

    定长便是长度固定的,当输入的数码长度未有达到规定的标准钦赐的长短时将活动以英文空格在其背后填充,使长度达到相应的长短。

    bit

    bit

    1 或 0 的莫西干发型数据。

    3、关于她们的贮存效能:

    数据类型时绝不操心输入的字符是英文仍然汉字,较为有利,但在存款和储蓄英文时数量上稍稍损失。

    变长字符数据则不会以空格填充,比较不一致的是,text存款和储蓄的也是可变长。

    decimal 和 numeric

    decimal

    从 -10^38 1 到 10^38 –1 的一定精度和小数位的数字数据。

    numeric

    效果上等同于 decimal

                                         char          varchar           text         nchar          nvarchar          ntext

     

    等学习拾遗,关于数据库建表时字段数据类型。1、char。char存款和储蓄定长数据很方便,char字段上的目录功效级高,比如定义char(10),那么不论你存款和储蓄的多少是不是达到规定的标准了拾一个字节,都要占去13个字节的长空,不足的自发性用空格填充,所以在读取的时候大概要反复用到Trim()。

    money 和 smallmoney

    money

    通货数据值介于 -2^63 (-922,337,203,685,477.5808) 与 2^63 - 1 ( 922,337,203,685,477.5807) 之间,准确到货币单位的千分之十。

    smallmoney

    通货数据值介于 -214,748.3648 与 214,748.3647 之间,准确到货币单位的千分之十。

    最大存储量(byte):       七千          8000            2E31-1    7000           九千               2E31-1

    越来越学习:

    2、varchar。积累变长数据,但存款和储蓄作用未有char高。倘诺一个字段恐怕的值是不稳固长度的,我们只略知一二它不只怕超越12个字符,把它定义为varchar(10)是最经济的。varchar类型的实际尺寸是它的值的实际上尺寸 1。为何“ 1”呢?那一个字节用于保存实际使用了多大的长度。从空间上思索,用varchar合适;从作用上惦念,用char合适,关键是依附真实景况找到权衡点。

    看似数字

    float

    从 -1.79E 308 到 1.79E 308 的浮点精度数字。

    real

    从 -3.40E 38 到 3.40E 38 的浮点精度数字。

    编码:                         非unicode   非unicode  非unicode  unicode     unicode          unicode

    char、varchar、text、ntext、bigint、int、smallint、tinyint和bit的分别及数据库的数据类型

    3、nchar、nvarchar、ntext。那三种从名字上看比前边三种多了个“n”。它表示存款和储蓄的是Unicode数据类型的字符。咱们驾驭字符中,英文字符只需求叁个字节存款和储蓄就足足了,但汉字众多,必要四个字节存款和储蓄,英文与汉字同时设不常便于导致杂乱,Unicode字符集正是为了化解字符集这种不相称的标题而产生的,它装有的字符都用三个字节表示,即英文字符也是用三个字节表示。nchar、nvarchar的长短是在1到5000时期。和char、varchar相比起来,nchar、nvarchar则最多囤积5000个字符,不论是英文照旧汉字;而char、varchar最多能存款和储蓄九千个英文,6000个汉字。可以见见使用nchar、nvarchar数据类型时决不记挂输入的字符是英文依然汉字,较为平价,但在仓库储存英文时数量上稍微损失。

    datetime 和 smalldatetime

    datetime

    从 1753 年 1 月 1 日到 9999 年 12 月 五日的日子和岁月数额,正确到百分之三秒(或 3.33 皮秒)。

    smalldatetime

    从 一九零一 年 1 月 1 日到 2079 年 6 月 6 日的日子和岁月数额,准确到分钟。

    储存成效:                   较高             极低            比较低           较高              极低                很低

     

    由此一般的话,假使含有中文字符,用nchar/nvarchar,假设纯英文和数字,用char/varchar。

    字符串

    char

    固化长度的非 Unicode 字符数量,最大尺寸为 8,000 个字符。

    varchar

    可变长度的非 Unicode 数据,最长为 8,000 个字符。

    text

    可变长度的非 Unicode 数据,最大尺寸为 2^31 - 1 (2,147,483,647) 个字符。

    新葡亰496net,最大英文数:              八千            九千           2E31-1       五千            5000              2E30-1

    Varchar 对各类英文(ASCII)字符都攻陷2个字节,对几个中中原人民共和国字也只占用八个字节

    你可能感兴趣的篇章:

    • 详解SQL Server中的数据类型
    • 详解MySQL数据类型int(M)中M的意义
    • mysql存款和储蓄引擎和数据类型(二)
    • Java数据类型与MySql数据类型对照表
    • SQL Server数据类型变换方法
    • SQL Server比较宽泛数据类型详解
    • SQLite教程(七):数据类型详解
    • sql使用cast进行数据类型转变示例
    • SQL二零零六中char nchar varchar nvarchar数据类型的差异和行使条件讲明
    • SQL的常用数据类型列表详解
    Unicode 字符串

    nchar

    从来长度的 Unicode 数据,最大尺寸为 4,000 个字符。

    nvarchar

    可变长度 Unicode 数据,其最大尺寸为 4,000 字符。sysname 是系统提供用户定义的数据类型,在效劳上等同于 nvarchar(128),用于引用数据库对象名。

    ntext

    可变长度 Unicode 数据,其最大尺寸为 2^30 - 1 (1,073,741,823) 个字符。

    最大中文数:              6000           5000            2E30-1       五千             四千             2E30-1

    char 对英文(ASCII)字符占用1个字节,对八个汉字占用2个字节Varchar 的类型不以空格填满,例如varchar(100),但它的值只是"qian",则它的值正是"qian"而char 分裂样,举例char(100),它的值是"qian",而实质上它在数据库中是"qian "(qian后共有九十七个空格,便是把它填满为九20个字节)。由于char是以牢固长度的,所以它的速度会比varchar快得多!但程序管理起来要麻烦一点,要用trim之类的函数把两边的空格去掉!

    二进制字符串

    binary

    永世长度的二进制数据,其最大尺寸为 8,000 个字节。

    varbinary

    可变长度的二进制数据,其最大尺寸为 8,000 个字节。

    image

    可变长度的二进制数据,其最大尺寸为 2^31 - 1 (2,147,483,647) 个字节。

    透过地方的表能够观察:

    ntext

    别的数据类型

    cursor

    游标的引用。

    sql_variant

    一种存款和储蓄 SQL Server 帮助的种种数据类型(textntexttimestampsql_variant 除却)值的数据类型。

    table

    一种格外的数据类型,存款和储蓄供之后管理的结果集。

    timestamp

    数据库范围的唯一数字,每一遍换代行时也张开更新。

    uniqueidentifier

    大局唯一标记符 (GUID)。

    ①char 和varchar之间的差距和nchar及nvarchar之间的出入同样,char 和 nchar是定长的,而varchar和nvarchar是可变长的;不带n的蕴藏非unicode字符,也便是英文字符占多个字节,中文字符占几个字节,一样体量,汉语字符个数唯有英文字符个数的50%,带n 的存储unicode字符,不管中文英文统统2个字节存款和储蓄二个字符。

    可变长度 Unicode 数据的最大尺寸为 230 - 1 (1,073,741,823) 个字符。存款和储蓄大小是所输入字符个数的两倍(以字节为单位)。ntext 在 SQL-9第22中学的同义词是 national text。

    optimize SQLSE瑞虎VE君越 3数据类型的设想

    分类:SQLSERVER

    l  decimal和numeric中尽量选取decimal,numeric只是为着向后格外。

    l  bigint,int,smallint,tinyint中

    率先int,空间占有合适,运算速度快;(2147,...,...2个多亿)

    万一不行在意空间的话,思量tinyint

    超大应用场所,思索bigint

    l money,smallmoney

    全力以赴考虑用decimal替代,原因:品质稍稍好有的;相对别的数据库包容性好。

    money的利润是足以用到一点货币运算函数。

    float类型尽量少用,质量倒霉,精度不高,一般只用于科学总结。

    l  char,varchar,nchar/nvarchar

    char品质好;varchar节省空中;选取情势:拾二个字节以上的用varchar

    n类型的攻下空间大,品质低,倘诺不策画存中文或中亚文字则尽量幸免使用。

    进一步向类似工号的字段更不用采取n类型,首先它不会存入汉语,其次它大概作为目录,此时对质量的熏陶就越来越大。

    l  text/image  惦念到保卫安全方便、效用以及程序支付的方便性,最棒不用,即不将其存入数据库中;采纳varchar指向其对应的积攒路线。

    1)char、varchar、text和nchar、nvarchar、ntext 

      char和varchar的长短都在1到八千中间,它们的差异在于char是定长字符数据,而varchar是变长字符数据。所谓定长正是长度固定的,当输入的多长未有达到规定的标准钦赐的长短时将活动以英文空格在其后边填充,使长度达到相应的长短;而变长字符数据则不会以空格填充。text存款和储蓄可变长度的非Unicode数据,最大尺寸为2^31-1(2,147,483,647)个字符。   

      前边三种数据类型和前面包车型地铁对照,从名称上看只是多了个字母"n",它象征存款和储蓄的是Unicode数据类型的字符。写进度序的情人对Unicode应该很精晓。字符中,英文字符只必要一个字节存款和储蓄就够用了,但汉字众多,必要多个字节存款和储蓄,英文与汉字同有时候存在时轻便变成混乱,Unicode字符集正是为着搞定字符集这种不包容的难点而发出的,它具备的字符都用三个字节表示,即英文字符也是用八个字节表示。nchar、nvarchar的长短是在1到四千里头。和char、varchar相比较:nchar、nvarchar则最多囤积伍仟个字符,不论是英文依旧汉字;而char、varchar最多能存款和储蓄7000个英文,5000个汉字。能够见到使用nchar、nvarchar数据类型时毫不操心输入的字符是英文照旧汉字,较为平价,但在仓库储存英文时数量上多少损失。  

      (2)datetime和smalldatetime 

      datetime:从1753年3月1日到9999年5月十八日的日子和岁月数额,正确到百分之三秒。 

      smalldatetime:从一九〇二年四月1日到2079年三月6日的日期和时间数额,准确到分钟。   

      (3)bitint、int、smallint、tinyint和bit 

      bigint:从-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型数据。 

      int:从-2^31(-2,147,483,648)到2^31-1(2,147,483,647)的整型数据。 

      smallint:从-2^15(-32,768)到2^15-1(32,767)的平头数据。 

      tinyint:从0到255的整数数据。 

      bit:1或0的整数数据。   

      (4)decimal和numeric 

      那二种数据类型是千篇一律的。都有八个参数:p(精度)和s(小数位数)。p内定小数点左边和右边手能够积攒的十进制数字的最大个数,p必须是从 1到38期间的值。s钦点小数点左边能够累积的十进制数字的最大个数,s必须是从0到p之间的值,默许小数位数是0。   

      (5)float和real 

      float:从-1.79^308到1.79^308之内的浮点数字数据。 

      real:从-3.40^38到3.40^38里头的浮点数字数据。在SQL Server中,real的同义词为float(24)。

    ②有关效能方面,定长的要比不定长的高,text和ntext也是不定长的。

     

    4、用varchar(max)代替text。

    text

           varchar的最大尺寸为九千,可是varchar(max)则能够积存多达2G的多少,由此其遵循相当于SQL 两千中的text。不过微软可能会持续的SQL Server版本中移除text类型,从未来就应有用varchar(max) 来替代text。 用nvarchar(max)代替ntext,用binary(max)代替image. 为XML数据选择xml类型。在SQL Server 二〇〇七中,为XML数据增加了对应的数据类型,由此存款和储蓄XML数据的列无需用 varchar(max)或nvarchar(max),而相应用xml数据类型,以利用T-SQL中等职业高校门针对xml数据列的新命令,以及针对性xml列的目录。

    服务器代码页中的可变长度非 Unicode 数据的最大尺寸为 231-1 (2,147,483,647) 个字符。当服务器代码页使用双字节字符时,存款和储蓄量仍是 2,147,483,647 字节。存款和储蓄大小恐怕低于 2,147,483,647 字节(取决于字符串)。

    易混淆的数据类型 (1)char、varchar、text和nchar、nvarchar、ntext         char和varchar的长短都在1到七千里面,它们的分别在于char是定长字符数据,而varchar是变长字符数据。所谓定长就是长度固定的,当输入的数额长度未有高达钦定的长短时将自行以英文空格在其后边填充,使长度到达相应的长短;而变长字符数据则不会以空格填充。 text存款和储蓄可变长度的非Unicode数据,最大尺寸为2^31-1(2,147,483,647)个字符。         后面两种数据类型和近些日子的对待,从名称上看只是多了个字母"n",它意味着存款和储蓄的是Unicode数据类型的字符。写进程序的仇敌对Unicode应该很了然。字符中,英文字符只要求八个字节存款和储蓄就丰裕了,但汉字众多,须求五个字节存款和储蓄,英文与汉字同一时候存在时轻巧导致混乱,Unicode字符集就是为了缓和字符集这种不相称的主题材料而产生的,它富有的字符都用四个字节表示,即英文字符也是用八个字节表示。nchar、nvarchar的尺寸是在1到五千里面。和char、varchar相比较:nchar、nvarchar则最多存储四千个字符,不论是英文还是汉字;而char、varchar最多能存款和储蓄柒仟个英文,四千个汉字。能够观察使用nchar、nvarchar数据类型时毫不忧虑输入的字符是英文还是汉字,较为有利,但在存款和储蓄英文时数量上多少损失。
    (2)datetime和smalldatetime       datetime:从1753年10月1日到9999年二月28日的日期和岁月数额,准确到百分之三秒。       smalldatetime:从壹玖零叁年5月1日到2079年8月6日的日子和时间数额,正确到分钟。
    (3)bitint、int、smallint、tinyint和bit     bigint:从-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型数据。     int:从-2^31(-2,147,483,648)到2^31-1(2,147,483,647)的整型数据。      smallint:从-2^15(-32,768)到2^15-1(32,767)的整数数据。      tinyint:从0到255的整数数据。
         bit:1或0的莫西干发型数据。 (4)decimal和numeric        那三种数据类型是平等的。都有七个参数:p(精度)和s(小数位数)。p钦点小数点左边和左边能够积存的十进制数字的最大个数,p必须是从 1到38里面包车型大巴值。s钦点小数点左侧能够储存的十进制数字的最大个数,s必须是从0到p之间的值,暗中同意小数位数是0。

    bigint:从-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型数据,存款和储蓄大小为 8 个字节。

           Decimal为SQL Server 数据类型,属于浮点数类型。存款和储蓄数据范围是:-1038~1038-1 的稳固精度和小数位的数字。一个decimal类型的多少占用了2~17个字节。

     

         Decimal 数据类型Decimal 变量存款和储蓄为 96 位(12个字节)无符号的整型情势,并除以四个 10 的幂数。这几个变比因子决定了小数点右面的数字位数,其范围从 0 到 28。变比因子为 0(未有小数位)的事态下,最大的只怕值为 /-79,228,162,514,264,337,593,543,950,335。而在有 二十多少个小数位的场合下,最大值为 /-7.9228162514264337593543950335,而细小的非零值为 /-0.0000000000000000000000000001。注意 此时,Decimal 数据类型只好在 Variant中使用,相当于说,不可能宣称一变量为 Decimal 的项目。然则可用 Cdec 函数,创立多个子类型为 Decimal 的 Variant。 那样就对了。

    int:从-2^31(-2,147,483,648)到2^31-1(2,147,483,647)的整型数据,存款和储蓄大小为 4 个字节。

     

     

      Decimal数据类型能够在powerBuilder中利用。直接在编写制定控件的时候利用就足以了。举个例子:当编辑一个Clicked事件脚本时就足以decimal r那样使用。

    smallint:从-2^15(-32,768)到2^15-1(32,767)的板寸数据,存储大小为 2 个字节。

     

     

      Decimal数据类型能够在Visual Studio编辑器中利用,只要在三个浮点类型的值后加一个大写或小写的M,则编辑器会认为那一个浮点类型的值是贰个Decimal类型。这种128人高精度十进制数表示法常常用在财务计算中。要小心的是,在.NET境况中,总结该项目标值会有总体性上的损失,因为它不是大旨类型。

    tinyint:从0到255的大背头数据,存款和储蓄大小为 1 字节。

     

     

      decimal[ (p[ , s] )] and numeric[ (p[ , s] )]

    bit:1或0的大背头数据,存款和储蓄大小为 1 字节。

     

    Unicode 数据

      固定有效位数和小数位数的数字。当使用最大有效位数时,有效值是从 - 10^38 1 到 10^38 - 1。decimal 的 SQL-92 同义字是 dec 和 dec(p, s)。numeric 的功力格外於 decimal。

     

     

    在 Microsoft SQL Server 3000 中,守旧上非 Unicode 数据类型允许行使由特定字符集定义的字符。字符集是在安装 SQL Server 时精选的,不可能改造。使用 Unicode 数据类型,列可存款和储蓄由 Unicode 标准定义的别的字符,包涵由差异字符集定义的有所字符。Unicode 数据类型供给一定于非 Unicode 数据类型两倍的贮存空间。

      p (有效位数)

     

     

    Unicode 数据采用 SQL Server 中的 nchar、varchar 和 ntext 数据类型实行仓库储存。对于仓库储存来源于多种字符集的字符的列,可选择那个数据类型。当列中各队所富含的 Unicode 字符数差异不常候(至多为 陆仟),使用 nvarchar 类型。当列中各队为同一固定长度时(至多为 6000 个 Unicode 字符),使用 nchar 类型。当列中自由项当先 5000 个 Unicode字符时,使用 ntext 类型。

      可积攒的最大十进位数总的数量,小数点左右两侧都囊括在内。有效位数必须是 1 至最大使得位数 38 之间的值。预设有效位数是 18。

     

     

    申明:SQL Server 的 Unicode 数据类型是依照 SQL-92 规范中的国家字符数据类型。SQL-92 使用前缀字符 n 标志这个数据类型及其值。

      s (小数位数)

     

     

    数据类型:

      小数点左侧所能积存的最大十进位数。小数位数必须是从 0 到 p 的值。只有在钦定了有效位数时,手艺钦命小数位数。预设小数位数是 0;因而,0 <= s <= p。最大积存体大小会随著有效位数而差别。

    数据类弄是数据的一种天性,表示数据所代表音信的档期的顺序。任何一种计算机语言都定义了友好的数据类型。当然,分歧的程序语言都抱有分化的特征,所定义的数据类型的各样和称号都或多或少有个别差别。SQL Server 提供了 25 种数据类型:

     

    ·Binary [(N)]

      例:

    ·Varbinary [(N)]

     

    ·Char [(N)]

      decimal(2,1),有效长度为2,小数位占1位。

    ·Varchar[(N)]

     

    ·Nchar[(N)]

      此时,插入数据“12.3”、“12”等会出现“数据溢出荒谬”的不得了;插入“1.23”或“1.2345...”会活动四舍五入成“1.2”;插入“2”会自行补成“2.0”,以担保2位的卓有功用长度,在那之中带有1位小数。 (5)float和real     float:从-1.79^308到1.79^308之内的浮点数字数据。     real:从-3.40^38到3.40^3第88中学间的浮点数字数据。在SQL Server中,real的同义词为float(24)。

    ·Nvarchar[(N)]

        希望对大家有着协理。现在再使用进度中自己还恐怕会持续周全。

    ·Datetime

    ·Smalldatetime

    ·Decimal[(p[,s])]

    ·Numeric[(p[,s])]

    ·Float[(N)]

    ·Real

    ·Int

    ·Smallint

    ·Tinyint

    ·Money

    ·Smallmoney

    ·Bit

    ·Cursor

    ·Sysname

    ·Timestamp

    ·Uniqueidentifier

    ·Text

    ·Image

    ·Ntext

     

    (1)二进制数据类型

    二进制数据包涵 Binary、Varbinary 和 Image.

    Binary 数据类型不只能够是固定长度的(Binary),也得以是变长度的。

    Binary[(N)] 是 n 位固定的二进制数据。个中,n 的取值范围是从 1 到 7000。其存款和储蓄窨的深浅是 n 4 个字节。

    Varbinary[(N)] 是 n 位变长度的二进制数据。在那之中,n 的取值范围是从 1 到 八千。其存款和储蓄窨的轻重是 n 4个字节,不是 n 个字节。

    在 Image 数据类型中蕴藏的数码是以位字符串存款和储蓄的,不是由 SQL Server 解释的,必须由应用程序来申明。比如,应用程序能够选取 BMP、TIEF、GIF 和 JPEG 格式把多少存储在 Image 数据类型中。

    (2)字符数据类型

    字符数据的门类包含 Char,Varchar 和 Text。

    字符数据是由其余字母、符号和数字狂妄组合而成的数目。

    Varchar 是变长字符数据,其尺寸不超越 8KB。Char 是定长字符数据,其尺寸最多为 8KB。当先 8KB 的ASCII 数据足以接纳Text 数据类型存款和储蓄。比方:因为 Html 文书档案全是 ASCII 字符,并且在相似情状下长度超过 8KB,所以那几个文书档案能够 Text 数据类型存款和储蓄在 SQL Server 中。

    (3)Unicode 数据类型

    Unicode 数据类型包蕴 Nchar,Nvarchar 和Ntext。

    在 Microsoft SQL Server 中,守旧的非 Unicode 数据类型允许行使由特定字符集定义的字符。在 SQL Server 安装进程中,允许采取一种字符集。使用 Unicode 数据类型,列中能够积存任何由Unicode 规范定义的字符。在 Unicode 标准中,包蕴了以各个字符集定义的万事字符。使用Unicode 数据类型,所占的空中是接纳非 Unicode 数据类型所占领的空间尺寸的两倍。

    在 SQL Server 中,Unicode 数据以 Nchar、Nvarchar 和 Ntext 数据类型存款和储蓄。使用这种字符类型存储的列能够累积七个字符集中的字符。当列的长短变化时,应该利用 Nvarchar 字符类型,那时最多能够积累 五千个字符。当列的长短固定不改变时,应该使用 Nchar 字符类型,同样,那时最多能够积累 陆仟 个字符。当使用 Ntext 数据类型时,该列能够积攒多于 伍仟 个字符。

    (4)日期和时间数据类型

    日期和时间数据类型包罗 Datetime 和 Smalldatetime 二种档案的次序。

    日子和岁月数据类型由有效的日期和岁月组成。比方,有效的日期和时间数额包蕴"4/01/98 12:15:00:00:00 PM"和"1:28:29:15:01 AM 8/17/98"。前二个数据类型是日期在前,时间在后一个数据类型是一念之差在前,日期在后。在 Microsoft SQL Server 中,日期和岁月数据类型包括Datetime 和 Smalldatetime 二种等级次序时,所蕴藏的日期范围是从 1753 年 1 月 1 日始发,到 9999 年12 月 31 日甘休(每叁个值须要 8 个存款和储蓄字节)。使用 Smalldatetime 数据类型时,所蕴藏的日子范围是 一九〇二 年 1 月 1日 起头,到 2079 年 12 月 31 日终结(每三个值需要 4 个存储字节)。

    日子的格式能够设定。设置日期格式的命令如下:

    Set DateFormat {format | @format _var|

    其中,format | @format_var 是日期的相继。有效的参数蕴含MDY、DMY、YMD、YDM、MYD 和 DYM。在暗中同意情状下,日期格式为 MDY。

    例如说,当推行 Set DateFormat YMD 之后,日期的格式为年 月 日 情势;当实践Set DateFormat DMY 之后,日期的格式为 日 月有年 方式

    (5)数字数据类型

    数字数据只包括数字。数字数据类型包涵正数和负数、小数(浮点数)和整数 。

    子弹头由正整数和负整数组成,举例 39、25、0-2 和 33967。在 Micrsoft SQL Server 中,整数存款和储蓄的数据类型是 Int,Smallint 和 Tinyint。Int 数据类型存款和储蓄数据的限制大于 Smallint 数据类型存款和储蓄数据的限量,而 Smallint 据类型存款和储蓄数据的范围大于 Tinyint 数据类型存款和储蓄数据的界定。使用 Int 数据狗昔存款和储蓄数据的限制是从 -2 147 483 648 到 2 147 483 647(每二个值须要4个字节存款和储蓄空间)。使用 Smallint 数据类型时,存款和储蓄数据的限制从 -32 768 到 32 767(每贰个值供给2个字节存款和储蓄空间)。使用 Tinyint 数据类型时,存款和储蓄数据的界定是从0 到255(每二个值要求1个字节存储空间)。

    正确小娄数据在 SQL Server 中的数据类型是 Decimal 和 Numeric。这种数据所占的积攒空间依据该多少的位数后的位数来分明。

    在SQL Server 中,近似小数数据的数据类型是 Float 和 Real。譬喻,三成那一个分数记作。3333333,当使用类似数据类型时能正确表示。由此,从系统中找找到的数目可能与储存在该列中数量非常的小同小异。

    (6)货币数据表示正的依旧负的钱币数据 。在 Microsoft SQL Server 中,货币数据的数据类型是Money 和 Smallmoney。Money 数据类型供给 8 个存款和储蓄字节,Smallmoney 数据类型供给 4 个存款和储蓄字节。

    (7)特殊数据类型

    卓殊数据类型包蕴后面未有提过的数据类型。特殊的数据类型有3种,即 Timestamp、Bit 和 Uniqueidentifier。

    Timestamp 用于表示SQL Server 活动的先后顺序,以二进投影的格式表示。Timestamp 数据与插入数据依然日期和岁月未曾提到。

    Bit 由 1 要么 0 组成。今世表真恐怕假、ON 可能 OFF 时,使用 Bit 数据类型。比如,询问是不是是每二次访问的客户机请求能够积攒在这种数据类型的列中。

    Uniqueidentifier 由 16 字节的十六进制数字组合,表示二个大局唯一的。当表的记录行须要只偶尔,GUID是老大平价。比方,在客户标志号列使用这种数据类型能够分别分化的客户。

    本文由新葡亰496net发布于网络数据库,转载请注明出处:等学习拾遗,关于数据库建表时字段数据类型

    关键词: