精华内容
下载资源
问答
  • VHDL数据类型 &自定义数据类型

    万次阅读 2014-06-09 11:26:24
    VHDL数据类型   VHDL是一种强数据类型语言。   要求设计实体中的每一个常数、信号、变量、 函数以及设定的各种参量都必须具有确定的数据类 型,并且相同数据类型的量才能互相传递和作用。   VHDL数据...

    VHDL数据类型

          VHDL是一种强数据类型语言。

         要求设计实体的每一个常数、信号、变量、

    函数以及设定的各种参量都必须具有确定的数据类

    型,并且相同数据类型的量才能互相传递和作用。

         VHDL数据类型分为四大类:

            ? 标量类型(SCALAR TYPE);

            ? 复合类型(COMPOSITE TYPE);

            ? 存取类型(ACCESS TYPE);

            ? 文件类型(FILES TYPE

     

    76  

    又分为:

       ? 预定义数据类型、

       ? 用户自定义数据类型 

    1VHDL的预定义数据类型

       1)布尔量(boolean

          布尔量具有两种状态:false 和 true

       常用于逻辑函数,如相等(=)、比较(<)

       作逻辑比较。

       如,bit 值转化成boolean 值:

          boolean_var := (bit_var = ‘1’);

     

    77  

    2)位(bit

        bit 表示一位的信号值。

        放在单引号,如 ‘0’  或 ‘1’。

    3)位矢量 (bit_vector

       bit_vector 用双引号括起来的一组位数据。

       如: “001100”       X“00B10B”

    4)字符(character

       用单引号将字符括起来。

        variable character_var : character;

         ... ...

        Character_var : = ‘A’;

     

    78  

    5)整数(integer

       integer 表示所有正的和负的整数。硬件实现时,

    利用32位的位矢量来表示。可实现的整数范围为:

           -(231-1) to  (231-1)

       VHDL综合器要求对具体的整数作出范围限定,

    否则无法综合成硬件电路。

       如:signal  s :integer range 0 to 15;

       信号 s 的取值范围0-15,可用4位二进制数表

    示,因此 s 将被综合成由四条信号线构成的信号。

     

    79  

    6)自然数(natural)和正整数(positive) 

       naturalinteger的子类型,表示非负整数。

       positiveinteger的子类型,表示正整数。 

       定义如下:

       subtype natural is integerrange 0 to 

         integer’high;

       subtype positive is integerrange 1 to

         integer’high;

     

    80  

    7)实数(REAL

          或称浮点数

          取值范围:-1.0E38 - +1.0E38

          实数类型仅能用于VHDL仿真器,一般综合器

       不支持。

    8)字符串(string

           string character 类型的一个非限定

       数组。用双引号将一串字符括起来。如:

         variable  string_var : string(1 to 7);

           ……

         string_var :=“Rosebud”;

     

    81  

    9)时间(TIME

         由整数和物理单位组成

         如:55 ms,20 ns

    10)错误等级(SEVERITY_LEVEL

        仿真用来指示系统的工作状态,共有四种:

           NOTE(注意)、

           WARNING(警告)、

           ERROR(出错)、

           FAILURE(失败)

     

    82  

    2、IEEE预定义标准逻辑位与矢量

       1)std_logic 类型

           由 ieee 的std_logic_1164 程序

       包定义,为九值逻辑系统,如下:

        (‘U’,‘X’,‘0’,‘1’,‘Z’,‘W’,‘L’,‘H’,‘-’)

          ‘U’:未初始化的, ‘X’:强未知的,

          ‘0’:强0,        ‘1’:强1,

          ‘Z’:高阻态,    ‘W’:弱未知的,

          ‘L’:弱0,        ‘H’:弱1,

          ‘-’:忽略

     

    83  

        由 std_logic 类型代替 bit 类型可以完成电

    子系统的精确模拟,并可实现常见的三态总线电路。

    2)std_logic_vector 类型

       由 std_logic 构成的数组。定义如下:

          typestd_logic_vector is array(natural  

              range<>) of std_logic; 

       赋值的原则:相同位宽,相同数据类型。

    84  

    3、用户自定义类型

       用户自定义类型VHDL语言的一大特色。

       可由用户定义的数据类型有:

          ? 枚举类型、

          ? 整数和实数类型、

          ? 数组类型、

          ? 记录类型、

          ? 子类型

     

    85  

         用类型定义语句TYPE和子类型定义语句

    SUBTYPE实现用户自定义数据类型。

        TYPE语句格式: 
     

    例:type byte is array(7 downto 0) of bit

        variable  addend :byte 

        type week is (sun, mon,tue, wed, thu, 

            fri, sat); 

    type 数据类型名   is  数据类型定义  [of   基本数据类型];

     

    86  

    SUBTYPE语句格式: 
     
     

    例:

        subtype digits isinteger range 0 to 9; 

        由subtype 语句定义的数据类型称为子类型。 

    subtype 子类型名  is 基本数据类型   约束范围;

     

    87  

    1)枚举类型

        枚举该类型的所有可能的值。格式: 

    如:type std_logic is(‘U’,‘X’,‘0’,‘1’,

             ‘Z’,‘W’,‘L’,‘H’,‘-’)

    如:type color is(blue,green,yellow, red)

        type my_logic  is (‘0’, ‘1’, ‘U’, ‘Z’)

        variable  hue :color

        signal  sig :my_logic

        hue := blue;      sig <= ‘Z’; 

    type  类型名称  is  (枚举文字{,枚举文字});

     

    88  

    枚举类型的编码:

         综合器自动实现枚举类型元素的编码,一

    般将第一个枚举量(最左边)编码为0,以后的

    依次加1。编码用位矢量表示 ,位矢量的长度

    将取所需表达的所有枚举元素的最小值。 

    如:type color is(blue,green,yellow,red)

        编码为:blue=“00”;              

                green=“01”;

                yellow=“10”;       

                red=“11”;

     

    89  

    2)整数类型

          用户定义的整数类型是标准包中整数类型的子范围。格式: 
     

    例:type my_integer is integer range 0 to 9

    3)数组类型

       数组:同类型元素的集合。VHDL支持多维数组。

       多维数组的声明:

       type byte is array(7 downto 0)of bit

       type vector is array(3 downto0) of  byte

       限定数组、非限定数组、属性: 

    type  类型名称  is  range  整数范围;

     

    90  

    限定数组

        其索引范围有一定的限制。

    格式:

        

    非限定数组:数组索引范围被定义成一个类型范围。

    格式: 
     

    例:type bit_vector is array(integer range <>)

             of  bit

        variablemy_vector:bit_vector (5 downto -5) 

    type  数组名  is  array(数组范围) of  数据类型; 

    type  数组名  is  array(类型名称range <>)  of  数据类型;

     

    91  

    属性:

          VHDL为多种类型定义了属性。

         语法如下:

            对象’属性

         VHDL为数组预先定义的属性:

            left      right

            high      low

            length    range

            reverse_range

     

    92  

    对应变量:

           variable  my_vector : bit_vector (5 downto -5)

    各属性如下:

           my_vector’left                            5

           my_vector’right                        -5

           my_vector’high                          5

           my_vector’low                         -5

           my_vector’length                      11

           my_vector’range                 (5 downto -5)

           my_vector’reverse_range        (-5 to 5)

     

    93  

    4)记录类型

          记录是不同类型的名称域的集合。

       格式如下:

       

       访问记录体元素的方式:记录体名.元素名 

    type  记录类型名  is  record

                       元素名:数据类型名;

                       元素名:数据类型名;

                            ┇  

    end   record

     

    94  

    例:

        constantlen:integer:= 8 ;

      subtype byte_vec is bit_vector(len-1downto 0);

      type byte_and_ix  is record

           byte :byte_vec;

            ix : integer range 0 to len;

      end  record ;

      signal  x, y, z : byte_and_ix ;

      signal  data : byte_vec ;

      signal  num : integer ;

                  …….

      x.byte <= “11110000” ;

      x.ix <= 2 ;

      data <= y.byte ;

      num <= y.ix ;

      z <= x ;

     

    95  

    5)子类型

          子类型是已定义的类型或子类型的一个子集。

    格式:             

    例:

       bit_vector 类型定义如下:

       type bit_vector is array(natural range <>)

           of bit

       如设计中只用16bit;可定义子类型如下:

       subtype  my_vector is  bit_vector(0 to 15)

    注:子类型与基(父)类型具有相同的操作符和子

        程序。可以直接进行赋值操作。 

    subtype  子类型名  is  数据类型名[范围];

     

    96  

    4、数据类型转换

        VHDL是一种强类型语言,不同类型的数据

    对象必须经过类型转换,才能相互操作。 

    1)类型转换函数方式

       通过调用类型转换函数,使相互操作的数据对

    象的类型一致,从而完成相互操作。

     

    97  

    library ieee;

    library dataio;

    use ieee.std_logic_1164.all;

    use dataio.std_logic_ops.all;

    entity cnt4 is

        port(clk: in std_logic;

              p: inout std_logic_vector(3 downto 0);

    end cnt4;

    architecture behv of cnt4 is

    begin

       process(clk)

       begin

          if clk’eventand clk=‘1’ then

            p<=to_vector(2, to_integer(p)+1);

          end if;

       end process;

    end behv;

     

    99  

    2)直接类型转换方式

        对相互间非常关联的数据类型(如整型、浮

    点型),可进行直接类型转换。格式:

        数据类型标识符(表达式)

    如:variable a, b : real;

        variable c, d : integer;

           ……

        a:= real(c);

        d:= integer(b);

     

    展开全文
  • 数据类型: 是一个值的集合和定义在此集合上一组操作的总称。 数据类型有两种:简单型和结构类型。 对于结构类型,比如数组,它的值是可以分割的,它是某个结构的值,因此数组这个数据类型的子集是一个数据结构。...

    数据类型: 是一个值的集合和定义在此集合上一组操作的总称。
    数据类型有两种:简单型结构类型
    对于结构类型,比如数组,它的值是可以分割的,它是某个结构的值,因此数组这个数据类型的子集是一个数据结构。所以数据类型也可以看做是一个数据结构和定义在这个数据结构上一组操作的总称。

    抽象数据类型(Abstract Datat Type, ADT): 是一个数学模型和定义在此数学模型上一组操作。
    在数据结构中,这个数学模型指的就是数据结构。因此在数据结构中,讨论的抽象数据类型是:一个数据结构和定义在这个数据结构上的一组操作
    因为ADT有两个重要特征,所以从抽象数据类型这个角度讨论数据结构有很多好处。
    【ADT的两个重要特征】
    1.数据抽象
    数据的抽象性指的是:用ADT描述程序处理的实体时,强调的是其本质的特征、其所能完成的功能以及它和外部用户的接口(即外界使用它的方法)。
    强调的是本质特征,自然会忽略掉无关紧要的属性;描述的是外部使用的接口,能保证外部用户正确地使用它们。
    例如: 抽象复数的数据类型
    复数类型在高级语言里不能直接进行加减,为了使外部用户能够直接使用它,这时就可以定义抽象数据类型复数。
    抽象数据类型复数的定义:

    ADT Complex{
    数据对象:
        D={e1,e2 | e1,e2∈RealSet}
        
    数据关系:
        R1={<e1,e2> | e1是复数的实数部分,e2是复数的虚数部分}
        
    基本操作:
        InitComplex(&Z,v1,v2)   //初始化一个复数
        操作结果:构造复数Z,其实部和虚部分别被赋以参数v1和v2值。
        DestroyComplex(&Z)     //销毁一个复数
        操作结果:复数Z被销毁。
        GetReal(Z,&realPart)   //取复数的实部
        初始条件:复数已存在。
        操作结果:用realPart返回复数Z的实部值。
        GetImageNet(Z,&imagPart)   //取复数的虚部
        初始条件:复数已存在。
        操作结果:用imagPart返回复数Z的虚部值。
        Add(z1,z2,&sum)   // 两个复数相加
        初始条件:z1,z2是复数。
        操作结果:用sum返回两个复数z1,z2的和值。
    }ADT Complex
    

    外部用户对复数操作的时候,只需要简单地调用相加的函数就能实现,这样就实现了抽象数据类型的抽象性。
    2.数据封装
    数据的封装性指的是:将实体的外部特性和其内部实现的细节分离,并且对外部用户隐藏其内部实现细节。
    例如:对于刚才的抽象数据类型复数,外部用户想要实现两个复数的相加,只需要调用相加的函数就可以了,不需要关心复数在计算机内部是怎么表示的。

    抽象数据类型的描述方法: 抽象数据类型可用(D, S, P)三元组表示,其中,D是数据对象,即具有相同特性的数据元素的集合,S是D上的关系集,P是对D的基本操作集。
    说明: D+S实际上就是数据结构,P就是定义在这个数据结构上的操作集。当在讨论数据结构的时候,都是从抽象数据类型出发的,也就是说数据结构和它的操作集是一个整体。

    抽象数据类型的表示方法: 抽象数据类型通过已有的数据类型来实现。

    展开全文
  • oracle数据类型

    千次阅读 2018-11-08 20:20:39
    oracle数据类型

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

     

     

    oracle数据类型 

     

     

    有道是,磨刀不误砍柴工。多了解一些底层的东西,对于Oracle开发、维护大有裨益。个人总结了一些Oracle数据类型集解,相信读者阅读了本文以后,Oracle数据库开发起来会事半功倍!


    在Oracle数据库中,每个关系表都由许多列组成。给每一列指派特定的数据类型来定义将在这个列中存储得数据类型。

    1、CHAR
    最多可以以固定长度的格式存储2000个字符或字节。默认指定为以字符形式进行存储,这个数据类型是固定长度的,并且当位数不够时,需要在其右边添加空格来补满。

    例如:
    CREATE TABLE test
    (name char(20))

    2、VARCHAR和VARCHAR2
    最多可以以可变长度来存储4000B,因此不需要空格来作补充。VARCHAR2 比 VARCHAR 更适合使用,由于兼容性的原因,所以仍然在 Oracle 数据库中保留着 VARCHAR 。

    例如:
    CREATE TABLE test
    (name varchar2(20))

    3、NCHAR
    NLS(national language support , 国际语言支持)的数据类型仅可以存储由数据库 NLS 字符集定义的 Unicode 字符集。该数据类型最多可以存储2000B。NCHAR 的列在位数不够时需要在右边填充空格。例如:
    CREATE TABLE test
    (name Nchar(20))
    注意:在 Oracle9i 数据库及其更新的版本中,仅使用 Unicode 数据类型

    4、NVARCHAR2
    NLS 的数据类型与 VARCHAR2 数据类型等价。这个数据类型最多可存储4000B 。例如:
    CREATE TABLE test
    (name Nvarchar2(20))
    注意:在 Oracle9i 数据库及其更新的版本中,仅使用 Unicode 数据类型

    5、NUMBER
    用于存储零、正数、定长负数以及浮点数。NUMBER 数据类型可以以 NUMBER(P,S)的

    形式来定义数字的精度和范围。 这里:p 表示精度 (1-38),它表示存储在列中数

    字的总长度是 p 位: s 表示范围,它表示小数点后的位数。该取值范围可以从-84 到 127 。例如:
    CREATE TABLE test
    (name number(5))
    使用精度 5 来定义一个正数(如 12345)。
    CREATE TABLE test
    (name number(5,2))
    使用精度 5 和范围 2 来定义一个数字。符合这种数据类型的数字值如 123.45 和 12.34

    6、LONG
    LONG 类型的列存储可变长度的字符串,最多可以存储 2GB 的数据。LONG 类型的列有很多在 VARCHAR2 类型列中所具有的特征。可以使用 LONG 类型的列来存储 LONG 类型的文本字符串。LONG 数据类型的使用是为了向前兼容的需要。建议使用 LOB 数据类型来代替 LONG 类型。例如:
    CREATE TABLE test
    (name long)

    7、DATE
    用于在数据库中存储日期和时间。存储时间的精度可以达到 1/100s。不提供时区的相关信息。例如:
    CREATE TABLE test
    (name DATE)

    8、TIMESTAMP
    使用年、月、日、小时、分钟、秒域来对日期/时间提供更详细的支持。最多可以使用 9 位数字的精度来存储秒(受底层操作系统支持的限制)。这个数据类型没有时区的相关信息,它可以在 Oracle9i 数据库及其更新的版本中使用。例如:
    CREATE TABLE test
    (timestamp_column TIMESTAMP);

    9、TIMESTAMP WITH TIME ZONE
    包含 TIMESTAMP 数据类型中的所有域,除此之外,还包含两个额外的域:timezone_hour 和 timezone_minute。这个数据类型包含支持时区的相关信息。这个数据类型可以在 Oracle9i 数据库及其更新的版本中使用。例如:
    CREATE TABLE test
    (timestamp_column
    TIMESTAMP WITH
    TIME ZONE);

    10、TIMESTAMP WITH LOCAL TIME ZONE
    除了在数据库中存储的时区采用标准化以外,所包含的其他域与 TIMESTAMP 数据类型中的域相同。当选择列时,将日期/时间标准为会话的时区。这个数据类型可以在 Oracle9i 数据库及其更新的版本中使用。例如
    CREATE TABLE test
    (timestamp_column
    TIMESTAMP WITH
    LOCAL TIME ZONE);

    11、INTERVAL YEAR TO MONTH
    用于存储一个时间段,由月份和年组成。需要 5B 来存储。这个数据类型可以在 Oracle9i 数据库及其更新的版本中使用。例如:
    SELECT INTERVAL
    '01-05'
    YEAR TO MONTH -
    INTERVAL '01-02' YEAR
    TO MONTH FROM dual;

    12、INTERVAL DAY TO SECOND
    用于存储一个时间段,由日和秒组成。需要 11B 来存储。这个数据类型可以在 Oracle9i 数据库及其更新的版本中使用。例如:
    SELECT INTERVAL
    '100 10:20:42.22'
    DAY(3) TO SECOND(2) -
    INTERVAL
    '101 10:20:42.22'
    DAY(3) TO SECOND(2)
    FROM dual;

    13、RAW
    用于存储 raw 类型的二进制数据。最多可以存储 2000B。建议使用 BLOB 来代替它。例如:
    CREATE TABLE test
    (raw_column
    RAW(2000));

    14、LONG RAW
    用于存储 raw 类型的二进制数据。最多可以存储 2GB 的数据。建议使用BLOB来代替它。例如:
    CREATE TABLE test
    (raw_column LONG RAW);

    15、ROWID
    表中 ROWID 类型的字符串表示。使用这个数据类型来存储由 ROWID 类型伪列的返回值。例如:
    CREATE TABLE test
    (rowid_column ROWID);

    16、UROWID
    在索引组织表中表示逻辑行地址。例如:
    CREATE TABLE test
    (urowid_column UROWID);

    17、CLOB
    用于存储基于字符的大对象。在 Oracle9i 数据库中最多可以存储 4GB 的数据,这比 Oracle10g 数据库中可存储的最大数据还要大,这也是现在数据库规定块大小的一个因素(~4GB* 数据块大小)。例如:
    CREATE TABLE test
    (clob_column CLOB);

    18、NCLOB
    可以使用由数据库国际字符集所定义的字符集来存储仅为 Unicode 类型的基于字符的数据。最多可以存储 4GB 的数据,这比 Oracle10g 数据库中可存储的最大数据还要大,这也是现在数据库规定块大小的一个因素(~4GB* 数据块大小)。例如:
    CREATE TABLE test
    (nclob_column NCLOB);

    19、BLOB
    最多可以存储 4GB 数据的二进制大对象,这比 Oracle10g数据库中可存储的最大数据还要大,这也是现在数据库规定块大小的一个因素(~4GB* 数据库块大小)。例如:
    CREATE TABLE test
    (blob_column BLOB);

    20、BFILE
    存储指向数据库外部文件的定位符。外部文件最大为 4GB。例如:
    CREATE TABLE test
    (bfile_column BFILE);

    21、BINARY_FLOAT
    该数据类型是一个基于 ANSI_IEEE745 标准的浮点数据类型。它定义了一个 32 位的双精度浮点数。这个数据类型需要 5B 的存储空间。例如:
    CREATE TABLE test
    (b_float BINARY_FLOAT);

    22、BINARY_DOUBLE
    该数据类型是一个基于 ANSI_IEEE745 标准的双精度浮点数据类型,它定义了一个32位的双精度浮点数。这个数据类型需要 9B 节的存储空间。例如:
    CREATE TABLE test
    (b_float BINARY_DOUBLE);


    关于各种数据类型的注释

    1、关于 CHAR 和 VARCHAR2 数据类型的注释
    由数据库字符集来确定特定的 CHAR、VARCHAR 或者 VARCHAR2 字符类型所占的字节数。多字节字符集中的字符可以存储 1~4B。CHAR 或 VARCHAR2 数据类型的大小由该数据类型可以存储的字节数或字符数来决定(这成为字符的语义)。所有定义的存储大小都是默认以字节为单位的。如果使用多字节字符集(大部分常见的西方字符集都是以单字节为单位的,而值得注意的是,有一个例外就是 UTF 字符集不是以单字节为单位的),则可能需要定义以字符为单位的存储,下面的例子说明了这个问题:

    CREATE TABLE test
    (name VARCHAR2(20 char));

    建议在表的末尾处创建一些值为 NULL 的列。通过使用这种方法,可以用 VARCHAR2 数据类型来存储一些数据,但不能使用 CHAR 数据类型来存储数据,因为 Oracle 数据库是以在一行中连续存储多个 NULL 值的方式来进行存储的。

    Oracle9i 数据库及其更新的版本提供数据压缩功能,该功能仅在包含于只读表空间中的表中使用(也就是说,表中的数据将不会改变)。仅当通过下面的批量装载(bulk-load)操作中的任意一种操作将数据装载进表中时,才会执行数据压缩操作


    使用 create table as select(CTAS)操作来创建表。
    在直接模式下的 insert 操作或者并行的 insert 操作。
    SQL*Loader 装载程序在直接模式下的操作。

    注意:
    如果使用 update 语句对数据进行了修改,则已经压缩过的数据块将不会再次压缩!因此,一张很小的表可以快速地增长成一张很大的表。通过使用 alter table move 命令可以在已经存在的表中压缩数据。下面是创建压缩表的例子和对已经存在的表进行压缩的例子:

    CREATE TABLE my_tab (id NUMBER,current_value VARCHAR2(2000)) COMPRESS;
    ALTER TABLE my_comp_tab MOVE COMPRESS;

    关于 CHAR 和 VARCHAR2 数据类型,常常会有这样一个问题:到底是用哪一个数据类型最好?下面是对这个问题的一些指导性建议:
    通常 VARCHAR2 数据类型比 CHAR 数据类型优先使用。
    如果数据大小是变化的则在数据库中使用 VARCHAR2 数据类型可以节省空间。
    如果 VARCHAR2 数据类型列中的数据需要频繁更新,则 VARCHAR2 数据类型列的扩展可能会导致行连接或者行迁移的发生。当最终需要使用 VARCHAR2 数据类型列总大小的时候,可以考虑使用 CHAR 数据类型来代替 VARCHAR2 数据类型。

    注意:
    通常来说,使用 VARCHAR2(1)数据类型比使用 CHAR(1)数据类型开销要大,但上面所讲的则是例外。

    2、关于 NUMBER 数据类型的注释
    NUMBER 数据类型内部使用科学计数法以可变长度格式来存储数据。使用 1B 存储指数,而另外 20B(这个字节数可以变化)用于存储该数字剩下的部分。这种存储模式使得 NUMBER 数据类型可以表示的精度为 38 位。

    如果想要确定给定的数字所占字节数的大小,可以使用 vsize 函数,如下所示:

    SQL>SELECT VSIZE(100) FROM dual;
    VSIZE(100)
    ----------
     2

    在上面的例子中,该 vsize 函数用于将数字的大小指定为100.使用 2B 存储。1B 存储数字,另 1B存储指数。
    也可以使用 dump 函数来确定任意列的具体大小,如下所示:
    SQL>SELECT id,dump(id) did FROM test;
     ID DID
    -----------------------------
     123 Typ=2 Len=3: 194,2,24
     141 Typ=2 Len=3: 194,2,42
         123456 Typ=2 Len=4: 195,13,35,57

    NUMBER 数据类型可以有若干种形式来定义。可以根据需要使用或禁用精度和范围的方式来定义 NUMBER 数据类型。如果使用特定的精度来定义 NUMBER 列,则当超过所定义的精度时,Oracle 数据库将会产生错误。例如,NUMBER(6,2) 在存储数字 1234.56 时,不会对该数字的值产生任何影响,而在存储数字 123.456 时将会对该数字进行四舍五入,最终存储的数字将变成 123.46;如果以相同的 NUMBER 数据类型来存储数字 12345.67 时,数据库将产生错误,因为该数字的精度是 7 而不是 6.

    最后需要注意的是,也可以将列定义为没有精度的 NUMBER 数据类型,这表明将把

    NUMBER 数据类型的列作为没有范围属性的整数来看待。

    3、关于 LONG RAW 数据类型的注释

    LONG RAW 数据类型用于存储数据库无法解释的二进制数据。这个数据类型最多能够存储 2GB 的数据并且它的存储容量是可变的。Oracle 数据库不鼓励使用 LONG RAW 数据类型,因为该数据类型已经由 BLOB 数据类型所代替了。Oracle 数据库

    (Oracle9i数据库及其更新的版本)已经提供了通过 alter table 命令将 LONG RAW 数据类型列转换到相应的 CLOB 数据类型的能力。也可以使用 to_lob 函数将 LONG RAW 数据格式转换为 BLOB 数据格式。

    4、关于 LONG 数据类型的注释

    LONG 数据类型用于存储大量的字符文本。LONG 数据类型会受到某些存储的限制,最多可以存储 2GB 的数据。Oracle 数据库不鼓励使用 LONG 数据类型,因为这个数据类型已经由 CLOB 数据类型所代替了。Oracle数据库(Oracle9i 数据库及其更新的版本)已经提供了通过 alter table 命令将 LONG 数据类型列转换到相应的 LOB 数据类型的能力。也可以使用 to_lob 函数将 LONG 数据格式转换成 CLOB 数据格式。
    在下面的 SQL 语句类型中可以引用 LONG 数据类型列:
    * select 列表
    * 在 update 语句的 set 子句中
    * 在 insert 语句的 values 子句中使用 LONG 数据类型将会受到许多的限制;
    * 在每个表中只允许使用一个 LONG 数据类型的列。
    * 不能使用 LONG 数据类型的属性创建对象类型。
    * Oracle 数据库的 where 子句或者完整性约束不能引用 LONG 数据类型,仅有一种例外的情况,就是 LONG 数据类型可以出现在 NULL 和 NOT NULL 约束中,或者可以作为 NULL 或者 NOT NULL 的 where 子句谓语的一部分。
    * 不能索引 LONG 数据类型的列。
    * 不能对包含 LONG 数据类型的列进行分布操作。所有包含 LONG 数据类型列的事务

    必须在同一个数据库中协同工作。
    * 复制不支持 LONG 数据类型。
    * 如果所创建的表有 LONG 和 CLOB 两种数据类型的列,则在同一 SQL 语句中,同时绑定到 LONG 和 CLOB 数据类型列上的数据不能超过 4000B。但是可以将超过 4000B 的数据单独绑定到 LONG 数据类型或者 CLOB 数据类型列上。
    除了前面所讲的约束外,当 LONG 数据类型出现在 SQL 语句中时,还有另一些关于 LONG 数据类型列的约束。首先需要注意的是,下面的操作不支持 LONG 数据类型列:

    * group by
    * order by
    * connect by
    * distinct
    * unique
    * 任何 SQL 的内建函数、表达式或者条件
    * 任何 select 语句(在该语句中,union、intersect 或者 minus 操作将查询或者子查询结合起来)
    也会存在关于 LONG 数据类型的 DDL 约束,如下所示:
    * 在 create cluster 语句的表列中不能包含 LONG 数据类型列。
    * 在 alter table ...move 语句中不能包含 LONG 数据类型列。
    * 在 create table as select 语句的选择列表中不能包含 LONG 数据类型列。

    在PL/SQL 程序单元和触发器中使用 LONG 数据类型列时,同样也存在一些约束,如下所示:
    * 不能使用 LONG 数据类型表示触发器中的变量。
    * 触发器变量 :new 和 :old 的数据类型不能是 LONG 数据类型列。
    * PL/SQL 存储函数不能返回 LONG 数据类型,但是 PL/SQL 程序中的变量或参数可以使用 LONG 数据类型,不过不能从 SQL 语句中调用这种 PL/SQL 程序单元。

    5、关于 DATE 数据类型的注释

    DATE 数据类型是 Oracle 数据库中自带的一种用于存储日期和时间的方法。当 DATE 数据类型存储在数据库中的时候,这个数据类型占据 7B 的内部存储空间。这些字节分别用来存储世纪、年、月、日、小时、分和秒的详细信息。
    默认的显示格式为 dd-mon-yy,它表示日、月以及两位数的年,由破折号(-)将其分离。例如默认格式为:01-FEB-01。如果要重新定义日期格式,可以在数据库参数文件中设置 nls_date_format 变量。如果要改变日期的格式,也可以为特定的会话使

    用 alter session 命令设置 nls_date_format 变量的值。如下所示:
    SQL>SELECT sysdate FROM dual;
    SYSDATE
    ---------
    24-MAY-03
    SQL>ALTER SESSION SET nls_date_format='mm/dd/yyyy hh24:mi:ss';
    Session altered.
    SQL>SELECT sysdate FROM dual;
    SYSDATE
    --------------------
    06/25/2009 16:49:09

    在上面的例子中,将日期格式的时间标志改变为 24 小时制格式的时间,并且在年的前面加上了世纪值。
    如果想要在特定系统的所有会话中使用不同的日期格式,可以设置 NLS_LANG 操作系统的环境变量,并且同时将 NLS_DATE_FORMAT 作为操作系统环境变量进行设置。这将使得每一次登录系统时,会发出 alter session 命令。需要注意的是,只有当同时设置了环境变量 NLS_LANG 时,环境变量 NLS_DATE_FORMATE 才会生效。

    注意:
    如果使用 RMAN(Oracle Recovery Manager,Oracle 恢复管理),则显示的左右日期格式都将是默认的日期格式。应该在启动 RMAN 之前设置 NLS_LANG 和 NLS_DATE_FORMAT 环境变量以设定所需要的日期格式。

    在 SQL 语句中为了改变输出的格式,需要使用 Oracle 数据库的内建函数 to_char。如果有基于字符的日期要插入到 DATE 数据类型列中,则需要使用 to_date 函数。关于 to_char 函数转换日期格式的例子如下所示:
    SQL>SELECT to_char(sysdate,'mm/dd/yyyy hh24:mi:ss') the_date FROM dual;
     THE_DATE
    -----------------
    06/25/2009 17:05:36

    在上面的例子中,将日期格式转化为由四位数表示的年以及 24 小时制、分钟、秒表示的时间格式。

    6、关于 TIMESTAMP 和 INTERVAL 数据类型的注释

    某些新的 TIMESTAMP 数据类型的值依赖于数据库中适当的时区设置。数据库的时区默认为当前操作系统的时区。在数据库创建的时候,可以通过在 create database 命令中使用 set time_zone 参数为数据库设置不同的时区。也可以通过使用 alter database set time_zone 命令改变已经存在的数据库时区。使用 alter session 命令可以在会话级上修改时区设置。可以定义基于UTC(Universal Time Coordinated,协调世界时)小时偏移的时区,或者使用一个指定的时区,如 CST 或 EST。下面是设置数据库时区的例子:
    ALTER DATABASE SET time_zone='CST';
    ALTER DATABASE SET time_zone='-05:00';

    一些转换函数可以用于 TIMESTAMP 和 INTERVAL 数据类型。这些函数包括 to_data、to_char、to_timestamp_tz、to_yminterval 和 to_dsinterval,同时 nls_timestamp_format 参数和 nls_timestamp_tz_format 参数也与 TIMESTAMP 和 INTERVAL 数据类型有一些特定的关联。
    当从 TIMESTAMP 数据类型列中获取数据时,可以使用其他的内建函数。extract 函数可以从 TIMESTAMP 数据类型列中获取特定的信息,如小时或者分钟的信息。如下所示(注意,从 sysdate 函数到 TIMESTAMP 数据类型格式的隐式转换):
    CREATE TABLE my_tab(test_col TIMESTAMP);
    INSERT INTO my_tab VALUES (sysdate);
    SELECT test_col,EXTRACT(HOUR FROM test_col) FROM my_tab;
    TEST_COL           HOUR
    -------------------------------------
    25-JUNE -09 05.18.50.000000 PM     9

     


    参考文献:【美】夫雷曼(Freeman.R.G.)《Oracle + DBA 必备技能详解》
    关于《Oracle + DBA 必备技能详解》中译本,作者有一本影印版的PDF格式的,40M大小,已经上传至作者 CSDN 资源共享给大家,有兴趣的朋友可以去看看,下载地址:http://download.csdn.net/source/1410669

               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    新的改变

    我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

    1. 全新的界面设计 ,将会带来全新的写作体验;
    2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
    3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
    4. 全新的 KaTeX数学公式 语法;
    5. 增加了支持甘特图的mermaid语法1 功能;
    6. 增加了 多屏幕编辑 Markdown文章功能;
    7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
    8. 增加了 检查列表 功能。

    功能快捷键

    撤销:Ctrl/Command + Z
    重做:Ctrl/Command + Y
    加粗:Ctrl/Command + B
    斜体:Ctrl/Command + I
    标题:Ctrl/Command + Shift + H
    无序列表:Ctrl/Command + Shift + U
    有序列表:Ctrl/Command + Shift + O
    检查列表:Ctrl/Command + Shift + C
    插入代码:Ctrl/Command + Shift + K
    插入链接:Ctrl/Command + Shift + L
    插入图片:Ctrl/Command + Shift + G

    合理的创建标题,有助于目录的生成

    直接输入1次#,并按下space后,将生成1级标题。
    输入2次#,并按下space后,将生成2级标题。
    以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

    如何改变文本的样式

    强调文本 强调文本

    加粗文本 加粗文本

    标记文本

    删除文本

    引用文本

    H2O is是液体。

    210 运算结果是 1024.

    插入链接与图片

    链接: link.

    图片: Alt

    带尺寸的图片: Alt

    当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

    如何插入一段漂亮的代码片

    博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

    // An highlighted block var foo = 'bar'; 

    生成一个适合你的列表

    • 项目
      • 项目
        • 项目
    1. 项目1
    2. 项目2
    3. 项目3
    • 计划任务
    • 完成任务

    创建一个表格

    一个简单的表格是这么创建的:

    项目 Value
    电脑 $1600
    手机 $12
    导管 $1

    设定内容居中、居左、居右

    使用:---------:居中
    使用:----------居左
    使用----------:居右

    第一列 第二列 第三列
    第一列文本居中 第二列文本居右 第三列文本居左

    SmartyPants

    SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

    TYPE ASCII HTML
    Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
    Quotes "Isn't this fun?" “Isn’t this fun?”
    Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

    创建一个自定义列表

    Markdown
    Text-to-HTML conversion tool
    Authors
    John
    Luke

    如何创建一个注脚

    一个具有注脚的文本。2

    注释也是必不可少的

    Markdown将文本转换为 HTML

    KaTeX数学公式

    您可以使用渲染LaTeX数学表达式 KaTeX:

    Gamma公式展示 Γ(n)=(n1)!nN\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N 是通过欧拉积分

    Γ(z)=0tz1etdt&ThinSpace;. \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.

    你可以找到更多关于的信息 LaTeX 数学表达式here.

    新的甘特图功能,丰富你的文章

    gantt
            dateFormat  YYYY-MM-DD
            title Adding GANTT diagram functionality to mermaid
            section 现有任务
            已完成               :done,    des1, 2014-01-06,2014-01-08
            进行中               :active,  des2, 2014-01-09, 3d
            计划一               :         des3, after des2, 5d
            计划二               :         des4, after des3, 5d
    
    • 关于 甘特图 语法,参考 这儿,

    UML 图表

    可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::

    张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间,文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五

    这将产生一个流程图。:

    链接
    长方形
    圆角长方形
    菱形
    • 关于 Mermaid 语法,参考 这儿,

    FLowchart流程图

    我们依旧会支持flowchart的流程图:

    • 关于 Flowchart流程图 语法,参考 这儿.

    导出与导入

    导出

    如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

    导入

    如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
    继续你的创作。


    1. mermaid语法说明 ↩︎

    2. 注脚的解释 ↩︎

    展开全文
  • TypeScript数据类型

    千次阅读 2018-04-21 17:09:51
    TypeScript 中的数据类型有Undefined、Number(数值类型)、string(字符串类型)、Boolean(布尔类型)、enum(枚举类型)、any(任意类型)、void(空类型)、Array(数组类型)、Tuple(元祖类型)、Null(空类型...

    本博文为阅读笔记,供个人复习备忘用

    数据类型

    TypeScript 中的数据类型有UndefinedNumber(数值类型)、string(字符串类型)、Boolean(布尔类型)、enum(枚举类型)、any(任意类型)、void(空类型)、Array(数组类型)、Tuple(元祖类型)、Null(空类型)。

    JavaScript 中的数据类型有UndefinedNumber(数值类型)、string(字符串类型)、Boolean(布尔类型)、nullObject(引用类型)。

    通过上面的对比,我们可以看到 TypeScript 相对于 JavaScript 增加了新的数据类型。这些新增的数据只用于 TypeScript 环境下,当 TypeScript 编译成 JavaScript 的时候,会去掉 TypeScript 中的新类型转变成 JavaScript 中的数据类型。

    1、Undefined 类型

    当定义了一个变量,没有给这个变量进行赋值,那这个变量中有一个默认值 undefined,undefined 就是 Undefined 类型。

    let a: number;
    console.log(a);  //输出undefined
    2、Number 类型

    和JavaScript一样,TypeScript里的所有数字都是浮点数。 这些浮点数的类型是 number

    let b: number = 10;
    let c: number = 2.13

    在 TypeScript 中存在以下几种特殊的 Number 类型数据:

    • NaN:不是数字(Not a Number)。如果一个计算结果或者函数的返回值本应该是数字,但是不是数字,在 TypeScript 中并不会报错,而是把它的结果设置成NaN;
    • nfinity:正无穷大;
    • -Infinity:负无穷大。
    3、string 字符串

    由单引号''或者双引号""括起来的一串字符就是字符串。

    let d: string = "lanbots";  //输出 lanbots
    let e: string = 'linbots';  //输出 linbots

    你还可以使用模版字符串,它可以定义多行文本内嵌表达式。 这种字符串是被``包围 ,并且以${ expr }这种形式嵌入表达式

    let name: string = "lanbots";
    let age: number = 23;
    let sentence: string = `my name is ${ name }.
    I'll be ${ age + 1 } years old next month.`;

    这与下面定义sentence的方式效果相同:

    let sentence: string = "my name is " + name + ".\n" +
        "I'll be " + (age + 1) + " years old next month.";
    4、boolean 布尔类型

    在程序中我们经常碰到这样的情况:判断条件是否成立,判断对错。这样的结果无非就是两种情况:是,否。表示这种情况的变量就是布尔类型(boolean),其数值有 truefalse

    let a: boolean = false;
    let b: boolean = true;
    5、enum 枚举

    当出现以下这种情况:

    • 表示饮料杯的类型:小杯、中杯、大杯,有三种结果;
    • 表示彩虹的颜色:赤橙黄绿青蓝紫,有七种结果;
    • 表示四季:春夏秋冬,有四种结果。

    这种变量的结果可能是固定的几种数据,我们使用枚举类型表示。

    //表示四季这种情况 定义一个枚举类型的变量  定义枚举的关键字是enum
    //一般枚举类型的变量 用大写字母表示
    enum SEASON{
        SPR,//结果一般也用大写字母表示
        SUM,//结果之间用逗号隔开
        AUT,
        WIN
    }
    console.log(SEASON.SPR);//0
    
    enum CUP_TYPE{
      //在ts中会给每一个可能的结果赋值一个整数 方便在计算机中存储和使用 默认是0
      SMALL_CBIG_CUP_TYPE = 1,
      MID_CUP_TYPE,//2
      BIG_CUP_TYPE // 3
    }
    console.log( CUP_TYPE.MID_CUP_TYPE);
    6、Any

    有时候,我们会想要为那些在编程阶段还不清楚类型的变量指定一个类型。 这些值可能来自于动态的内容,比如来自用户输入或第三方代码库。 这种情况下,我们不希望类型检查器对这些值进行检查而是直接让它们通过编译阶段的检查。 那么我们可以使用 any类型来标记这些变量:

    let a: any;
    a = 23;
    a = "lanbots";//a可以再次赋值任意类型的值
    console.log(a); //输出lanbots 
    7、Void

    某种程度上来说,void类型像是与any类型相反,它表示没有任何类型。 当一个函数没有返回值时,你通常会见到其返回值类型是 void

    function warnUser(): void {
        alert("This is my warning message");
    }

    声明一个void类型的变量没有什么大用,因为你只能为它赋予undefinednull

    let unusable: void = undefined;
    8、Never

    never类型表示的是那些永不存在的值的类型。 例如, never类型是那些总是会抛出异常或根本就不会有返回值的函数表达式或箭头函数表达式的返回值类型; 变量也可能是 never类型,当它们被永不为真的类型保护所约束时。

    never类型是任何类型的子类型,也可以赋值给任何类型;然而,没有类型是never的子类型或可以赋值给never类型(除了never本身之外)。 即使 any也不可以赋值给never

    9、类型断言

    有时候你会遇到这样的情况,你会比TypeScript更了解某个值的详细信息。 通常这会发生在你清楚地知道一个实体具有比它现有类型更确切的类型。

    通过类型断言这种方式可以告诉编译器,“相信我,我知道自己在干什么”。 类型断言好比其它语言里的类型转换,但是不进行特殊的数据检查和解构。 它没有运行时的影响,只是在编译阶段起作用。 TypeScript会假设你,程序员,已经进行了必须的检查。

    类型断言有两种形式。 其一是“尖括号”语法:

    let someValue: any = "this is a string";
    
    let strLength: number = (<string>someValue).length;

    另一个为as语法:

    let someValue: any = "this is a string";
    
    let strLength: number = (someValue as string).length;

    两种形式是等价的。 至于使用哪个大多数情况下是凭个人喜好;然而,当你在TypeScript里使用JSX时,只有 as语法断言是被允许的。

    展开全文
  • 初学TypeScript之基本数据类型

    万次阅读 2019-05-02 16:38:44
    通常这会发生在你清楚的知道一个实体具有比它现有类型更确切的类型。 通过类型断言这种方式可以告诉编辑器,“相信我,我知道自己在干什么”。类型断言好比其他语言里的类型转换,但是不进行特殊的数据检查和结构。...
  • 本文将主要讲解了数据库的一些基础知识,介绍了MySql的存储引擎,最后讲了MySql常用的数据类型
  • 数据类型 数据类型的本质 从编译器和内存的角度理解数据类型:   Int a 告诉C编译器给我分配四个字节的内存。 1、数据类型的本质:可理解为创建变量的模具,是固定大小内存的别名。 2、...
  • C++ 数据类型转换之终极无惑

    千次阅读 2015-08-18 13:53:27
    数据类型在编程中经常遇到,虽然可能存在风险,但我们却乐此不疲的进行数据类型的转换。下面进行一一讲解!
  • VHDL是一种强类型的语言,它不允许不同数据类型之间的相互赋值。如果想在不同数据类型之间进行赋值则需要调用函数来完成。 在VHDL语言里,基本数据对象有三种:常量,变量以及信号。 常量 常量就是常数,它的数值...
  • 数据结构和抽象数据类型

    千次阅读 2016-01-15 16:41:31
    这两个概念,尤其是第一个都是特别抽象的概念,没什么具体可对应的实体可以给你举例,我就粘贴复制了,说说我的理解吧。数据结构呢,我们总是为了完成一个功能或者目的写程序,但不管什么程序、代码实际上都是一些...
  • uniqueidentifier数据类型讲解

    千次阅读 2013-06-18 14:43:12
    uniqueidentifier数据类型是16个字节的二进制值,应具有唯一性,必须与NEWID()函数配合使用。 uniqueidentifier数据类型与identity自增不同,不会为插入的新行自动生成新的ID,新值由NEWID()函数指定。 NEWID...
  • NoSql的四种数据类型和各自的优缺点

    千次阅读 2018-09-19 21:24:10
    关于NoSql数据类型的问题,最近面试才遇到,去 360 二面的时候面试官第一个问题就是nosql使用过吗,它都有哪些数据类型。 基本上只关注过key-value,其他的看过,没过脑子,所以今天特意找到四种不同的数据类型的优...
  • SQL数据库字段数据类型说明

    万次阅读 2015-11-14 23:54:00
    1、如果数据量非常大,又能100%确定长度且保存只是ansi字符,那么char 2、能确定长度又不一定是ansi字符或者,那么用nchar; 3、不确定长度,要查询且希望利用索引的话,用nvarchar类型吧,将它们设到400;
  • 附加类型“LMSoft.FrameWork.Identity.ApplicationUser”的实体失败,因为相同类型的其他实体具有相同的主键值。在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实
  • 统计学中数据类型

    千次阅读 2014-02-27 11:23:27
    统计学中数据类型   在统计学中,统计数据主要可分为四种类型,分别是定类数据,定序数据,定距数据,定比变量。 1.定类数据(Nominal):名义级数据,数据的最低级,表示个体在属性上的特征或类别上的...
  • 关于Gson的各数据类型转换

    千次阅读 2016-02-27 20:11:42
    下面是自己总结的各种数据类型的处理方式,包括: 1,单个实体对象转换为JSON格式 2,带泛型的实体对象集合转换为为JSON 3,单个JSONString转换为实体对象 4,集合型JSON转换为实体对象集合 5,实体对象...
  • 5-抽象数据类型(ADT)

    千次阅读 多人点赞 2018-05-25 11:40:53
    1. 以数据为核心的思维   在现实中计算机能够解决非常多的问题,如图1所示,可以用计算机去实现一个GIS地理信息系统,也可以实现一个电子病历系统,或者实现一个计算机管理资源的图形化界面等。包括现在我们使用...
  • 附加类型“...”的实体失败,因为相同类型的其他实体具有相同的主键值。在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实体具有冲突键值,则可能会发生上述行为。这...
  • 文章目录矢量空间数据结构实体数据结构/spaghetti数据结构拓扑空间数据结构索引式拓扑空间数据结构双重独立编码结构/DIME(Dual Independent Map Encoding)码链式双重独立编码 矢量空间数据结构 矢量数据结构对...
  • Matlab常用数据类型(一)

    千次阅读 2017-11-08 01:23:24
    前言总结一下matlab的常用数据类型,消除对matlab的陌生感,方便以后查询。多维数组Matlab中,向量可以视为一维数组,矩阵可以视为二维数组,维数≷2的都称为多维数组。 第三维称为”页”,第四维称为“箱”。cat...
  • 关于BSTR数据类型

    千次阅读 2005-09-29 21:03:00
    2.Unicode和ANSI数据类型3.OLECHAR,LPOLESTR,LPCOLESTRCOM的基本字符数据类型是OLECHAR,与平台无关的字符表示法。在创建该字符集时,OLECHAR的基本数据类型随操作系统的不同而不同。如今最流行的COM平台是基于Win32_...
  • Java之三 标识符、关键字、数据类型

    千次阅读 2016-05-19 19:27:32
    多态性 对象的多态性是指在一般类中定义的属性或服务被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。这使得同一个属性或服务在一般类及其各个特殊类中具有不同的语义。例如:"几何图形"的"绘图"方法...
  • 数据属性类型

    万次阅读 2018-03-17 19:32:05
    数据集由数据对象组成,一个数据对象代表一个实体数据对象又称样本、实例、数据点或对象。属性(attribute)是一个数据字段,表示数据对象的一个特征。属性向量(或特征向量)是用来描述一个给定对象的一组属性。...
  • TCHAR数据类型介绍

    千次阅读 2010-01-27 00:50:00
    并不是所有的Windows操作系统都支持UNICODE编码的API(例如早期的Windows98), 这就造成了两种结果:某些版本的Windows应该应用wchar_t来保存字符, 某些平台的Windows应该使用char类型来保存字符, 显然这两种类型的...
  • 所谓抽象数据类型,是指模块具有功能说明和接口说明,前者说明模块所执行的任务,后者定义模块的使用。但是,模块的用户并不需要知道模块实现的任何细节,而且除了那些定义好的接口之外,用户不能以任何方式访问模块...
  • 具有相同属性的实体具有由相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。 (3)实体集 同型实体的集合称为实体集, (4)实体之间的联系 通常是指不同实体型的实体...
  • 由于 SQL 数据类型和 Java 数据类型是不同的,因此需要某种机制在使用 Java 类型的应用程序和使用 SQL 类型的数据库之间来读写数据。 为此,JDBC 提供了  getXXX  和  setXXX  方法集、方法  ...
  • TypeScript数据类型-TS学习笔记(1)

    万次阅读 2016-10-14 14:59:36
    介绍ts几乎支持js所有的数据类型,并扩展了枚举方便我们使用。 布尔值(boolean) 和其它语言一样 true/falselet isDone:boolean=false;数字(number) 和js一样,所有的数字都是浮点数,这些浮点数的类型是,支持二,...
  • 自定义数据类型 一、结构体类型 1、 C++允许用户自己定义一组包含若干个类型不同(或相同)的数据项的数据类型,称为结构体。 2、 声明符号:struct 3、 一般形式:struct 结构体类型名{成员表列}; 4、 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 191,218
精华内容 76,487
热门标签
关键字:

具有实体的数据类型