下节课将要学习SQL语言的分类,老师叫我们事先自己写一份预习报告。到时叫学生请讲台上讲课,并会评比哦。下面的是我的预习报告,请大家帮我看看还有什么要补充的。   SQL语言的分类:SQL语言大体可分为DDL、DCL和DML三类。其中,DDL又包含CREATE,ALTER和DROP;DCL包含GRANT和REVOKE,而DML中最常见的有SELECT,INSERT,UPDATE,和DELETE。1、  DDL(数据定义语言) 
◎ CREATE语句SQL> CREATE TABLE example_1  2  (col_1 number NOT NULL,col_2 varchar2(20));Table created.◎ ALTER 语句 
SQL> ALTER TABLE example_1 ADD col_3 char(10); Table altered. ◎ DROP 语句SQL> ALTER TABLE example_1 DROP COLUMN col_3; Table altered. 2、  DCL(数据控制语言)
◎     GRANT(授予权限) SQL> GRANT SELECT ON student TO scott;--使scott用户有查询当前用户模式下的student表的权限。Grant succeeded.--测试授权是否成功SQL> conn scott;Enter password:Connected.--查询system用户下student表SQL> SELECT * FROM system.student;      STUNO STUNAME              ST ROLLTIME---------- -------------------- -- --------------       112 duyubo               m  08-8月 -09       110 CJ                   M  12-8月 -09◎     REVOKE(收回权限) SQL> conn system/system;Connected.--收回权限SQL> REVOKE SELECT ON student FROM scott; Revoke succeeded. 测试权限是否成功收回SQL> conn scott/scottConnected.SQL> SELECT * FROM system.student;SELECT * FROM system.student                    *--错误:表不存在(因为没有权限)ERROR at line 1:ORA-00942: table or view does not exist 3、  DML(数据操纵语言)◎     SELECT语句(使用最为广泛的语句) SQL> SELECT * FROM student;      STUNO STUNAME              ST ROLLTIME---------- -------------------- -- --------------       112 duyubo               m  08-8月 -09       110 CJ                   M  12-8月 -09◎ INSERT(插入数据)--如果要对表中的每一列数据都进行插入操作,则表后的列项可以省略,如SQL> INSERT INTO student VALUES(100,'JC','M',SYSDATE); 1 row created.--但当仅对表中部分列进行插入操作时,必须指明字段名称,而且字段名称应该与values后--的值一一对应。SQL> INSERT INTO student(stuno,stuname,stusex)  2  VALUES(211,'WNT','M'); 1 row created. ◎     UPDAET(更新)SQL> UPDATE student SET stuname='yinxiong'  2  WHERE stuno=100; 1 row updated. ◎     DELETE (删除内容)--注意,delete是删除内容的,删除过后表结构不变。二drop是删除表或字段,删除表,则对应的表也就不存在了;同理,删除字段,则对应的字段也就不存在了。 SQL> DELETE FROM student WHERE stuname='yinxiong';--仅仅删除stuname=‘yinxiong’对应列的内容。1 row deleted. 

解决方案 »

  1.   

    dml:
    MERGE 
      表合并
      MERGE INTO tab1 USING tab2 ON condition WHEN MATCH THEN ... WHEN NOT MATCH then..
    ddl:
      TRUNCATE  
       TRUNCATE TABLE tab1
       删除表tab1中的数据(只删除数据,不删除表结构)。
      RENAME 
       RENAME xxx TO yyy
       ALTER TABLE xxx RENAME TO yyy
       更改名称
      
      COMMENT
       COMMENT   ON   TABLE   tab1   IS   '***';   
       COMMENT   ON   COLUMN   tab1.col1   IS   '**';
       给表或表中字段加注释 其实除了dml,ddl,dcl还有tcl--Transaction Control .
    常用的有
    COMMIT 提交
    SAVEPOINT 设置回滚段
    ROLLBACK 回滚
      

  2.   

    oracle已经装上过了,非常感谢二楼的补充。