zoukankan      html  css  js  c++  java
  • MSSQL_1

    cast(变量 as  类型)
    convert(类型,变量)

    1. MSSQL 2005 基本数据类型

    1)字符串类型

    非unicode:char   最多存储8000个字符   char(10)

                        varchar   2^31.  变长 varchar(30)                  text

    unicode: nchar,nvarchar,ntext

    使用 UNICODE UCS-2 字符集(全球大部分字符都有)比如欧洲字母表很小,255个字符足够了。但是韩国,日本,中国的中文没办法全够。  unicode 使用2个字节,

    ,用2个字节表示一个字符。  即2^16=65536 字符

                 

    使用规则:当固定字长用char,变长varchar;       nchar,nvarchar是当不同国家字符在不同机器上 可以无误显示。

    2)数值类型

    精确数字
    bigint  8字节。 -2^63到2^63-1
    int  4字节 。  -2^31到2^31-1
    smallint 2字节   -2^16到2^16-1
    tinyint  1字节    0到255

    近似数字
    float
    real

    3)时间类型
    datetime  精确到3.33毫秒
    smalldatetime 精确到分钟

    4)

    二进制数据
    binary ,varbinary,image

    5)其他数据类型

    cursor
    timestamp  时间数字
    sql_variant
    uniqueidentifier
    table
    xml

    2.check 约束

    IF OBJECT_ID ('dbo.Vendors', 'U') IS NOT NULL
    DROP TABLE dbo.Vendors;
    GO
    CREATE TABLE dbo.Vendors
        (VendorID int PRIMARY KEY, VendorName nvarchar (50),
        CreditRating tinyint)
    GO
    ALTER TABLE dbo.Vendors ADD CONSTRAINT CK_Vendor_CreditRating
        CHECK (CreditRating >= 1 AND CreditRating <= 5)


     

     

    或者企业管理器编辑约束

    image右击ck_online_operate 

    //约束了creditRating只能插入 1-5之间的值

    select * from vendors

    insert into vendors values('1','sdf','6')   //插入的6大于5 就会报错

    执行结果:

    消息 547,级别 16,状态 0,第 1 行
    INSERT 语句与 CHECK 约束"CK_Vendor_CreditRating"冲突。该冲突发生于数据库"companyData",表"dbo.Vendors", column 'CreditRating'。
    语句已终止。

    *default 约束

    USE [companyData]
    GO
    ALTER TABLE [dbo].[companyKey] ADD  DEFAULT ((0)) FOR [isUsed]

  • 相关阅读:
    TSQL常用查询语句
    团队开发注意事项
    SQLServer2005 XML数据类型操作
    Nunit学习笔记
    服务器架构工具表
    JQuery 做的下拉文本框
    面向对象和结构化程序设计的区别
    AFX_MSG是什么意思
    DECLARE_MESSAGE_MAP()
    AfxBeginThread的介绍/基本用法
  • 原文地址:https://www.cnblogs.com/StudyLife/p/3132216.html
Copyright © 2011-2022 走看看