精华内容
下载资源
问答
  • ts数据类型的定义

    千次阅读 2019-11-16 21:00:26
    1. 数据类型 let title = '张三' let age = 18 let loading = true 对比写法 let title:string = '张三' let age:number = 18 let loading:boolean = true 定义数组 let arr = [1, 2, 3] 对比写法 let arr:...

    1. 基本数据类型

    let title = '张三'
    let age = 18
    let loading = true
    let obj = null
    let total = undefined
    

    对比的写法

    let title:string = '张三'
    let age:number = 18
    let loading:boolean = true
    let obj:null = null
    let total:undefined = undefined
    

    上面都是一个变量,一种类型,那么如何一个变量多种类型呢

    let title:number|string = 18
    

    表示变量title可能是数字或者字符串,多种数据类型中的一种,TS中称为联合类型

    2. 引用数据类型

    定义数组

    let arr = [1, 2, 3]
    

    对比的写法

    let arr:number = [1, 2, 3]
    let arr:Array<number> = [1, 2, 3]
    

    写法的含义表示数组的每一项都是数字,长度不固定

    已知数组的长度和类型:在TS中称为元组类型

    let arr: [string, number] = ['张三', 18]
    

    表示数组只能是两项,第一项是字符串,第二项是数字,不能多,不能少

    定义对象

    let obj = {
      name: '张三',
      age: 18
    }
    

    对比的写法

    interface Props {
      name: string,
      age: number
    }
    
    let obj: Props = {
      name: '张三',
      age: 18
    }
    
    console.log(obj)
    

    表示name是字符串类型,age是数字类型,只能有两个属性,不能多,不能少

    interface 在TS中称为接口,用来描述对象的形状

    interface Props {
      name: string,
      age: number,
      title?:string
    }
    

    问好和冒号表示该属性可能有可能没有

    3. 枚举类型

    表示值可能出现的情况,如性别是男是女,固定的,数量不多

    enum Gender {
      BOY,
      GIRL
    }
    
    console.log(Gender.BOY) // 0
    console.log(Gender.GIRL) // 1
    

    编译之后

    "use strict";
    var Gender;
    (function (Gender) {
        Gender[Gender["BOY"] = 0] = "BOY";
        Gender[Gender["GIRL"] = 1] = "GIRL";
    })(Gender || (Gender = {}));
    console.log(Gender.BOY); // 0
    console.log(Gender.GIRL); // 1
    

    可以指定默认值

    enum Gender {
      BOY = 1001,
      GIRL = 1002
    }
    
    console.log(Gender.BOY) // 1001
    console.log(Gender.GIRL) // 1002
    

    常数枚举

    const enum Gender {
      BOY,
      GIRL
    }
    
    console.log(Gender.BOY) // 0
    console.log(Gender.GIRL) // 1
    

    编译之后

    "use strict";
    console.log(0 /* BOY */); // 0
    console.log(1 /* GIRL */); // 1
    

    3. 任意类型

    let todo:any = 'go home'
    

    不建议使用,为了强类型校验,建议给每个变量都定义好数据类型

    4. 函数返回值

    函数有返回值的情况

    function todo(a: number): number {
      return a
    }
    

    函数没有返回值使用void

    function todo(a: number): void {
      console.log(a)
    }
    

    函数抛出错误,永远不会执行完成(如死循环),使用never

    function demo(): never {
      throw new Error('出错了')
    }
    

    5. 类型断言

    在这里插入图片描述

    通过断言成数字再进行调用

    let a:number|string;
    console.log((a as number).toFixed(2))
    console.log((<number>a).toFixed(2))
    

    不能断言成联合类型中不存在的类型

    6. 字面量类型

    通过type关键字进行定义

    type Gender = 1 | 2;
    let boy:Gender = 1;
    let girl:Gender = 2;
    

    表示几个值中的某一个,联合类型表示多种类型中的一种。限制值和限制类型的区别。

    展开全文
  • 抽象数据类型的定义

    千次阅读 2016-03-14 19:59:21
    数据类型:是一组性质相同集合及定义在此集合上一些操作。 按照取值不同,数据类型可以分为两类: 1.原子类型:不可以再分解基本类型,例如整形,浮点型,字符型等。 2.结构类型:由若干个类型组合而...
    /**
    抽象数据类型:(所谓抽象数据类型就是把数据类型和相关操作捆绑在一起)
    数据类型:是一组性质相同的值的集合及定义在此集合上的一些操作。
    
    按照取值的不同,数据类型可以分为两类:
      1.原子类型:不可以再分解的基本类型,例如整形,浮点型,字符型等。
      2.结构类型:由若干个类型组合而成,是可以再分解的,例如整形数组
        是由若干整形数组组成的。
    
    抽象:抽象是指抽取事物具有的普遍的本质。它要求抽出问题的特征而
    忽略非本质的细节,是对具体事物的一个概括。抽象是一种思考问题的
    方式,它隐藏了细节。
    */
    #include<stdio.h>
    
    int main()
    {
        printf("Hello 数据库!!!");
        return 0;
    }

    展开全文
  • 在Oracle中NUMBER数据类型的定义问题

    千次阅读 2016-10-29 12:48:39
    在Oracle中NUMBER数据类型的定义问题: 1、当括号内只有一个参数时,如NUMBER(50)。表示所定义的数字最大可设置50位长,不包含小数。 2、当括号内有两个参数时,如NUMBER(5, 2)。表示所定义的数字最大是5位长,...

    OracleNUMBER数据类型的定义问题:

    1、当括号内只有一个参数时,如NUMBER(50)。表示所定义的数字最大可设置50位长,不包含小数。

    2、当括号内有两个参数时,如NUMBER(5, 2)。表示所定义的数字最大是5位长,其中包含2位小数。

    展开全文
  • MySQL 和 DB2 数据类型的定义和差异

    千次阅读 2016-11-16 11:05:28
    SQL ANSI标准规定了关系数据库系统中使用的数据类型的规则。但是,并非每种数据库平台都支持标准委员会定义的每个数据类型。而且,特定数据类型的厂商实现可能与标准的规定不同,甚至在所有数据库厂商之间互不相同。...

     

    MySQLPostgreSQLDB2之间的数据类型对比

    SQL ANSI标准规定了关系数据库系统中使用的数据类型的规则。但是,并非每种数据库平台都支持标准委员会定义的每个数据类型。而且,特定数据类型的厂商实现可能与标准的规定不同,甚至在所有数据库厂商之间互不相同。因此,尽管许多MySQLPostgreSQLDB2数据类型在名称和/或含义方面是相似的,但是也有许多需要注意的差异。

    2列出最常用的DB2数据类型。我们在后面的小节中提供MySQLPostgreSQL数据类型与DB2最接近的匹配。

    尽管DB2SQL有一些限制(比如对约束名的长度限制、数据类型限制等等),但是各个新版本正在系统化地消除这些限制。


    2. DB2数据类型

    数据类型

    说明

    BIGINT

    存储有符号或无符号整数,使用8字节的存储空间。

    BLOB
    BLOB(n)

    存储长度可变的二进制数据,长度最大为2 GB。超过1 GB的长度不进行日志记录。

    CHAR(n)
    CHARACTER(n)

    存储固定长度的字符数据,长度最大为254字节。使用 ‘n’字节的存储空间。

    CHAR(n) FOR BIT DATA

    存储固定长度的二进制值。

    CLOB
    CLOB(n)

    存储长度可变的字符数据,长度最大为2 GB。超过1 GB的长度不进行日志记录。

    DATE

    存储日历日期,不包含天内的时间。使用4字节的存储空间。

    DEC(p,s)
    DECIMAL(p,s)
    NUM(p,s)
    NUMERIC(p,s)

    采用精度(p131和刻度(s031来存储数值。使用(p/2) +1字节的存储空间。

    DOUBLE
    DOUBLE PRECISION
    FLOAT

    存储浮点数,使用8字节的存储空间。

    FLOAT(p)

    采用精度(p153来存储数值。如果p <= 24,那么相当于REAL。如果p >= 25,那么相当于DOUBLE PRECISION

    GRAPHIC(n)

    用于National Language SupportNLS)和长度固定的字符串(常常是DBCS),长度最大为127字节。对于双字节字符集,使用n*2字节的存储空间;对于单字节字符集,使用n字节的存储空间。

    INT
    INTEGER

    存储有符号或无符号整数,使用4字节的存储空间。

    REAL

    存储浮点数,使用4字节的存储空间。

    SMALLINT

    存储有符号和无符号整数,使用2字节的存储空间。

    TIME

    存储天内的时间,使用3字节的存储空间。

    TIMESTAMP

    存储日期(年、月、日)和时间(小时、分钟、秒),最大精度6毫秒。使用10字节的存储空间。

    VARCHAR(n)
    CHAR VARYING(n)
    CHARACTER VARYING(n)

    存储长度可变的字符数据,长度最大为32,672字节。使用n+2字节的存储空间。

    VARCHAR(n) FOR BIT DATA

    存储长度可变的二进制数据。使用n字节的存储空间。

    VARGRAPHIC(n)

    存储长度可变的双字节字符数据,长度最大为16,336字符。使用(n*2)+2字节的存储空间。



    MySQLDB2

     

    MySQL <wbr>和 <wbr>DB2 <wbr>数据类型的定义和差异

    理解MySQLDB2之间的数据类型问题

    • 从性能方面考虑,将少于32KBLOBCLOB迁移为VARCHAR(n) WITH BIT DATAVARCHAR(n)。迁移工具通过研究表中的实际数据处理这一转换。

    • 迁移工具处理UNSIGNED数据类型。

    • Boolean数据类型迁移到SMALLINTCHAR(1)

    • 如果小数精度大于31,那么迁移工具将列转换为双精度数据类型。

    • 自动递增的列迁移为数值数据类型并使用IDENTITY子句。


    下面的表中描述 MySQL 和 DB2 数据类型的定义和差异。表 3 描述最常用的 MySQL 数据类型。表 4 将 MySQL 数据类型映射到最接近的 DB2 数据类型。

     

    MySQL可以使用SERIAL别名作为数据类型,这相当于BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE

    BOOLBOOLEANTINYINT(1)的同义词。在MySQL中,DECIMAL的最大位数是65,支持的最大小数位是30。如果为DECIMAL指定UNSIGNED,那么不允许负数。

    时间戳列不支持毫秒。


    3. MySQL数据类型

    数据类型

    说明

    BIT

    固定长度的位串。

    BOOLEAN

    存储逻辑布尔值(true/false/unknown),可以是TRUEtrue1FALSEfalse0

    TINYBLOB

    用于存储二进制对象(比如图形)的原始二进制数据,最大255字节。

    BLOB

    用于存储二进制对象(比如图形)的原始二进制数据,最大65,535字节。

    MEDIUMBLOB

    用于存储二进制对象(比如图形)的原始二进制数据,最大16,777,215字节。

    LONGBLOB

    用于存储二进制对象(比如图形)的原始二进制数据,最大4GB

    CHAR(n)
    CHARACTER(n)

    包含固定长度的字符串,用空格填充到长度n

    DATE

    3字节的存储空间存储日历日期(年、月、日)。

    DATETIME

    8字节的存储空间存储日历日期和天内的时间。

    YEAR

    1字节的存储空间存储两位或四位格式的年份。

    DECIMAL(p,s)
    NUMERIC(p,s)

    存储精确的数值,精度(p)最高为65,刻度(s)为30或更高。

    FLOAT

    存储浮点数,限制由硬件决定。单精度浮点数精确到大约7位小数。UNSIGNED属性不允许负数。

    DOUBLE
    REAL

    存储双精度浮点数,限制由硬件决定。双精度浮点数精确到大约15位小数。UNSIGNED属性不允许负数。

    TINYINT

    存储有符号或无符号1字节整数。

    SMALLINT

    存储有符号或无符号2字节整数。

    MEDIUMINT

    存储有符号或无符号3字节整数。

    INTEGER

    存储有符号或无符号4字节整数。

    BIGINT

    存储有符号或无符号8字节整数。

    TINYTEXT

    用于存储最多255字节的字符串数据。

    TEXT

    用于存储最多65,535字节的字符串数据。

    MEDIUMTEXT

    用于存储最多16,777,215字节的字符串数据。

    LONGTEXT

    用于存储最多4GB的字符串数据。

    TIME

    3字节的存储空间存储天内的时间。

    TIMESTAMP

    4字节的存储空间存储日期和时间。如果没有提供有效值的话,TIMESTAMP列会自动设置为最近操作的日期和时间。

    VARCHAR(n)
    CHARACTER VARYING(n)
    CHARACTER VARYING

    存储长度可变的字符串,最大长度由n指定。末尾的空格不存储。

    ENUM

    一种串对象,它的值只能是从值列表 ‘value1’, ‘value2’, ..., NULL中选择的一个值。

    SET

    一种串对象,它可以具有零个或更多的值,这些值必须从值列表 ‘value1’, ‘value2’, ...中选择。

    BINARY

    CHAR类型相似,但是存储二进制字节串而不是字符串。

    VARBINARY

    VARCHAR类型相似,但是存储二进制字节串而不是字符串。



    4. MySQL数据类型到DB2的映射

    MYSQL

    DB2

    说明

    BIT

    CHAR(n) FOR BIT DATA

    关于用来简化迁移的UDF的细节,请参阅参考资料

    BOOLEAN

    SMALLINTCHAR(1)

    使用检查约束来实施规则。

    TINYBLOB

    VARCHAR(255) FOR BIT DATA

    可以使用BLOB(255)VARCHAR(255) FOR BIT DATA。在这种情况下,使用VARCHAR效率比较高。

    BLOB

    BLOB(64K)

    如果长度小于32K,那么考虑使用VARCHAR(n) FOR BIT DATA

    MEDIUMBLOB

    BLOB(16M)

    可以使用NOT LOGGED改进性能。

    LONGBLOB

    BLOB(2G)

    支持的BLOB最大长度是2GB

    CHAR(n)
    CHARACTER(n)

    CHAR(n)
    CHARACTER(n)

    DB2中,‘n’的最大值为254

    DATE

    DATE

    -

    DATETIME

    TIMESTAMP

    可以使用特殊寄存器CURRENT TIMEZONE对日期进行转换。

    YEAR

    SMALLINT

    可以使用检查约束实施YEAR规则。

    DECIMAL(p,s)
    NUMERIC(p,s)

    DECIMAL(p,s)
    NUMERIC(p,s)

    如果p大于31,那么使用DOUBLE

    FLOAT

    REAL

    _

    DOUBLE
    REAL

    DOUBLE

    _

    SMALLINT

    SMALLINT

    使用检查约束限制值小于256

    SMALLINT

    SMALLINT

    _

    MEDIUMINT

    INTEGER

    如果需要,使用检查约束限制最大长度。

    INTEGER

    INTEGER
    INT

    _

    BIGINT

    BIGINT

    _

    TINYTEXT

    VARCHAR(255)

    对于少于32K的数据,使用VARCHAR比较高效。

    TEXT

    CLOB(64K)

    DB2允许为CLOBBLOB指定长度参数。指定需要的长度,而不要使用TINYMEDIUMLONG CLOB

    MEDIUMTEXT

    CLOB(16M)

    _

    LONGTEXT

    CLOB(2G)

    最大长度是2GB。如果使用LOGGED,那么BLOBCLOB的最大长度为1GB。使用NOT LOGGED选项可以提高性能。

    TIME

    TIME

    _

    TIMESTAMP

    TIMESTAMP

    _

    VARCHAR(n)
    CHARACTER VARYING(n)

    VARCHAR(n)
    CHARACTER VARYING(n)

    如果长度小于32K,那么使用VARCHAR

    ENUM

    VARCHAR(n)

    使用检查约束来实施规则。


    原文链接:http://blog.csdn.net/zajin/article/details/52209150

    展开全文
  • hive 学习系列一(数据类型的定义

    千次阅读 2018-06-06 12:40:22
    数字类型(Numeric Types) 整型 TINYINT(取值范围:-128 – 127) SMALLINT(取值范围:-32,768 to 32,767) INT/INTEGER(取值范围: -2,147,483,648 to 2,147,483,647) BIGINT(取值范围: -9,223,372,036,854,...
  • Point、Size、Rect、Mat 及 Scalar、Vec、Range都是OpenCV中常用的...1. 定义这些数据类型的目的有哪些?或者有哪些好处?  1.1 定义这些数据类型有哪些共性? 2. 这些数据类型之间的关系有哪些?如能否相互转化、
  • int8_t int16_t int32_t等数据类型的定义

    千次阅读 2019-07-24 17:27:05
    一、数据类型特别是int相关的类型在...C99标准并不规定具体数据类型的长度大小,只规定级别: 16位平台 char 1个字节8位 short 2个字节16位 int 2个字节16位 long 4个字节32位 指针 2个字节 32位平台 char ...
  • 最近一直在学STM8 代码里面一直出现u8 * / u16.../*芯片唯一ID地址 96位*/ define UNIQUE_ID_START_ADDR 0x48CD u8 i; s16 temp; s8 t; u8 * pUniqueId; int main( void ) { return 0; }一直不理解什么是u8 今天
  • TI DSP中各种数据类型的定义

    千次阅读 2010-03-22 23:02:00
    DSP/BIOS中匈牙利记法为: Sm开头表示8-bit类型; Md开头表示16-bit类型; Lg开头表示32-bit类型; Int表示有符号整型; Uns表示无符号类型; Bits表示按bit计算类型; /* ==========================...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 135,495
精华内容 54,198
关键字:

数据类型的定义