Oracle数据库之SQL语句练习篇--准备

     前言

              对于Oracle 的SQL语句的学习也有一段时间了,笔者一直认定的一个事实就是:真正的学习是

      能够用于实践中去的,不然的话只能说明只是简简单单的知道一些东西,但是并未真正的掌握。前面

      的学习中对于oracle的函数,sql语法什么的都有一定的学习,但是实践出真知!因此小生在接下来的

      一段时间中,会找一些练习,通过练习掌握sql的语法特性。在练习中进行查漏补缺。

            不过在此之前要做一些相关的准备,因为这套题集是从网上找来的,会建立一些新的表,为了不

      破坏Oracle数据库原有的结构,小生打算新建一个用户kiritor进行测试。

     创建用户

              首先是创建用户,之后需要对用户进行解锁

           SQL> conn sys/kiritor as sysdba;--以管理员的权限登录
           SQL> create user kiritor identified by kiritor;--创建用户并且指定密码
                User created--创建用户成功
               接下来就需要对用户进行解锁了    
           SQL> alter user kiritor account unlock;
 
                User altered--解锁成功

      赋予用户权限

              创建用户之后需要对用户赋予相关权限,该用户才有可能进行相关的操作,例如必须赋予用户建立会话

          create session的权限用户才会被用于登录oracle数据库。对于Oracle中用户的权限是十分复杂的,这里

          小生就直接赋予其管理员权限。至于oralce中用户权限的问题,待有时间之后做一个详细的总结。

          SQL> grant dba to kiritor;
 
               Grant succeeded--权限赋予成功
              如果读者对确实对oracle用户的权限感兴趣可以通过以下语句简单的查询一下:
          select distinct privilege from dba_sys_privs;
                        

           用户登录,建表,信息录入       

            --建立学生信息表
            drop table student;
            create table student
             (
                sno varchar2(10)  primary key,
                sname varchar2(20),
                sage number(2),
                ssex varchar2(5)
              );           
           --建立教师表
            create table teacher
             (
               tno varchar2(20) primary key,
               tname varchar2(20)
             ); 
           --建立课程表
           create table course
             (
               cno varchar2(10),
               cname varchar2(20),
               tno varchar2(10),
               constraint pk_course primary key(cno,tno) 
               --constraint表示是一个约束,primary key表示其为主键约束
               --且主键列是(cno,tno)组合列
            );   
           --创建分数表
          create table score
            (
               sno varchar2(10),
               cno varchar2(10),
               score number(4,2),
               constraint pk_sc primary key(sno,cno)
               --联合主键就是使用的这种方法定义的
            );
         --查询是否建立
         select * from cat;   
         -------------初始化学生表的数据-------------------- 
         insert into student values('S001','张三',23,'男'); 
         insert into student values('S002','李四',23,'男');
         insert into student values('S003','吴鹏',25,'男');
         insert into student values('S004','吴琴',20,'女');
         insert into student values('S005','王丽',20,'女');
         insert into student values('S006','李波',21,'男');
         insert into student values('S007','刘玉',21,'男');
         insert into student values('S008','肖蓉',21,'女');
         insert into student values('S009','黄洁',23,'女');
         insert into student values('S010','陈梅',22,'女');
         commit;
         --------------初始化教师表---------------------------
         insert into teacher values('T001','刘阳');
         insert into teacher values('T002','王燕'); 
         insert into teacher values('T003','胡笑萌'); 
         commit;      
         --------------初始化课程表----------------------------
         insert into course values ('C001','J2SE','T002');
         insert into course values ('C002','Java Web','T002');
         insert into course values ('C003','SSH','T001');
         insert into course values ('C004','Oracle','T001');
         insert into course values ('C005','SQL SERVER 2005','T003');
         insert into course values ('C006','C#','T003');
         insert into course values ('C007','JavaScript','T002');
         insert into course values ('C008','DIV+CSS','T001');
         insert into course values ('C009','PHP','T003');
         insert into course values ('C010','EJB3.0','T002');
         commit;           
         ----------------初始化成绩表-------------------------
         insert into score values ('S001','C001',78.9);
         insert into score values ('S002','C001',80.9);
         insert into score values ('S003','C001',81.9);
         insert into score values ('S004','C001',60.9);
         insert into score values ('S001','C002',82.9);
         insert into score values ('S002','C002',72.9);
         insert into score values ('S003','C002',81.9);
         insert into score values ('S001','C003','59');
         commit;   
         -----------------------------------------------
         --初始化工作完成
                  前期的准备工作终于完了,后面可以进行相关的练习了!先到这儿

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值