数据类型及关键字

一、表:
   表是DB用来存储数据的结构模型,
   表是一个二维结构。
   有行:也叫记录(record)
   有列:也叫字段(Field)
二、SQL:结构化查询语言,用途就是通过DBMS来操作DB的。
  里面含有
      (1)DDL语言:数据定义语言
             create:用来创建表等。
             alter: 用来修改表结构的。
             drop: 用来删除表结构的
             truncate:用来清空表数据,保留表结构,(数据不能还原)
             DDL语言,每一个sql中前两个都是关键字
      (2)DML语言:用来操纵数据,也就是增,删,改操作。
             insert:用来向表中增加记录的。
             delete:用来删除表中记录的。
             update:用来修改表中记录的。
      (3)DQL: 用来查询数据。
             select  * from tname
      (4)TCL:事务控制语言。
            在使用DML语言时,都会触发一个事务。
             commit:提交数据。
             rollback:回滚数据
             savepoint:保存点。
      (5)DCL:数据控制语言
             grant:授权
             revoke:撤销权限
             create user:创建用户
三、oracle数据中常用的数据类型
      (1)number(p[,s]):表示数字类型。
             p:表示数字的有效长度
             s:表示小数点后的位数。
             整数位最大位数:p-s
             reg:
                     number(5,2):最大值999.99
                     number(2):最大值为99。
     (2)char表示定长字符串类型
          不规定默认为1个字节。
          规定:char(n)
              最大字节数:2000个
          定长:在存储时,不满规定个数时,也会占用内存
           规定的字节数。
           reg:char(10),当存了'a'时,也占用内存10个字节。
       (3)varchar2表示可变字符串类型
              写法:varchar2(n):
              可变:会按照实际存储的字节数占用内存。不可以超出规定长度。
              最大字节数:4000个
       (4)long类型:
               最多存2G的字节数。
       (5)clob类型
               最多存4g的字节数。
       (6)date类型:日期类型
              默认格式:dd-mon-rr
              占用7个字节。
       (7)timestamp:时间戳类型  
              可以精确到时分秒。
      
四、 null关键字   not null  非空约束。
       1:建表期间,可以对某一字段进行非空约束。
             在insert时,此字段必须要是数据。
             reg:   create table temp(
                   id number(4),
                   name varchar2(20) not null
             );
            在insert时,name字段必须要有数据。
       2:没有进行非空约束的字段,都可以插入数据 null   
五、 default关键字
           1:建表期间,可以对某一字段进行设置默认值。
                 在insert期间,如果不对此字段进行传值,那么此记录的这个字段值是默认值。
                 如果设置,默认值失效。
                 reg:
                     create table temp(
                     id number(4),
                     name varchar2(30) not null,
                     gender char(1) default 'm'
                     );
                     insert into temp(id,name) values(1001,'zs')。
                     此记录的gender的值为'm';
--:两个减号表示单行注释
/*  多行注释  */
/* sql脚本:是数据库的sql语句文件,扩展名为.sql*/

  DDL语言的学习

        -- (1)create关键字,用来创建表结构
                /*格式如下:
                   create table tname(
                   colName dataType,
                   colName dataType,
                   ………………
                   colName dataType
                   );
             */
         (2):alter,用来修改表结构
            -- 1)增加表的字段
                    -- 格式: alter table tname add (colName dataType);
                    -- 练习:为表temp_1增加个字段 tage  类型为number,长度为2
                            alter table temp_1 add (tage number(2));
           -- 2)删除表的字段
                    -- 格式: alter table tname drop column colName
                    -- 练习:删除temp_1表中的tage
                            alter table temp_1 drop  column tage;
          -- 3)修改字段的名称
                -- 格式: alter table tname rename column oldName to newName
                -- 练习:将表temp_1的tname修改成name
                            alter table temp_1 rename column tname to name;
        -- 4)修改字段的数据类型
                -- 格式:alter table tname modify colName dataType
                -- 练习:修改temp_1表中的name 为varchar2(30);
                            alter table temp_1 modify name varchar2(30);
        -- 5)修改表名
                -- 格式:rename oldTname to newTname
                -- 练习:修改temp_1为temp_2;
                            rename temp_1 to temp_2;
        -- 6)删除表结构
                -- 格式:drop table tname;
                -- 练习:将temp_2删除
                            drop table temp_2;
        -- 7)查看表结构 
                -- 格式: desc tname;
                -- 练习:创建temp_1,查看表结构
                            desc temp_1;
 















猜你喜欢

转载自blog.csdn.net/xiaozelulu/article/details/80238033