<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 9, comments - 4, trackbacks - 0, articles - 2
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    oracle 基礎

    Posted on 2009-04-13 08:52 我是菜鳥 閱讀(311) 評論(0)  編輯  收藏
    .登陸系統用戶
    sqlplus 然后輸入系統用戶名和密碼
    登陸別的用戶
    conn 用戶名/密碼;
    2.創建表空間
    create tablespace 空間名
    datafile 'c:\空間名' size 15M??--表空間的存放路徑,初始值為15M
    autoExtend on next 10M??--空間的自動增長的值是10M
    permanent online;??--永久使用
    3.創建用戶
    create user shi???--創建用戶名為shi
    identified by scj??--創建密碼為scj
    default tablespace 表空間名?--默認表空間名
    temporary tablespace temp?--臨時表空間為temp
    profile default???--受profile文件的限制
    quota unlimited on 表空間名;?--在表空間下面建表不受限制
    4.創建角色
    create role 角色名 identified by 密碼;
    5.給角色授權
    grant create session to 角色名;--給角色授予創建會話的權限
    grant 角色名 to 用戶名;?--把角色授予用戶
    6.給用戶授予權限
    grant create session,resource to shi;--給shi用戶授予所有權限
    grant create table to shi;?--給shi用戶授予創建表的權限
    7.select table_name from user_tables;?? 察看當前用戶下的所有表
    8.select tablespace_name from user_tablespaces; 察看當前用戶下的 表空間
    9.select username from dba_users;察看所有用戶名稱命令 必須用sys as sysdba登陸
    Oracle 查看用戶權限數據字典視圖分為3大類, 用前綴區別,分別為:USER,ALL 和 DBA,許多數據字典視圖包含相似的信息。

    USER_*:有關用戶所擁有的對象信息,即用戶自己創建的對象信息

    ALL_*:有關用戶可以訪問的對象的信息,即用戶自己創建的對象的信息加上其他用戶創建的對象但該用戶有權訪問的信息

    DBA_*:有關整個數據庫中對象的信息

    (這里的*可以為TABLES, INDEXES, OBJECTS, USERS等。

    1.查看所有用戶:
    select * from dba_users;
    select * from all_users;
    select * from user_users;
    2.查看用戶系統權限:
    select * from dba_sys_privs;
    select * from all_sys_privs;
    select * from user_sys_privs;
    3.查看用戶對象權限:
    select * from dba_tab_privs;
    select * from all_tab_privs;
    select * from user_tab_privs;
    4.查看所有角色:
    select * from dba_roles;
    5.查看用戶所擁有的角色:
    select * from dba_role_privs;
    select * from user_role_privs;

    6.查看當前用戶的缺省表空間
    select username,default_tablespace from user_users;

    7.查看某個角色的具體權限,如grant connect,resource,create session,create view to TEST;查看RESOURCE具有那些權限,用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';
    ?

    10.創建表
    create table 表名
    (
    id int not null,
    name varchar2(20) not null
    )tablespace 表空間名??--所屬的表空間
    storage
    (
    ?? initial 64K???--表的初始值
    ?? minextents 1???--最小擴展值
    ?? maxextents unlimited??--最大擴展值
    );
    11.--為usrs表添加主鍵和索引
    alter table users
    add constraint pk primary key (ID);
    12.為已經創建users表添加外鍵
    alter table users
    ? add constraint fk_roleid foreign key (roleid)
    ? references role(role_id) on delete cascad;?--下邊寫主表的列
    ???on delete cascad是創建級聯
    13.把兩個列連接起來
    select concat(name,id) from 表名;??--把name和id連接起來
    14.截取字符串
    select column(name,'李') from 表名;??--把name中的‘李’去掉
    15.運行事務之前必須寫
    set serveroutput on;??--打開輸入輸出(不寫的話,打印不出信息)
    16.while的應用
    declare???--聲明部分
    ccc number:=1;??--復職
    a number:=0;
    begin???--事務的開始
    while ccc<=100 loop?--循環
    if((ccc mod 3)=0) then?--條件
    ?dbms_output.put_line(ccc||',');??? --打印顯示
    ?a:=a+ccc;
    end if;???--結束if
    ccc:=ccc+1;
    end loop;??--結束循環
    dbms_output.put_line(a);?
    end;???--結束事務
    /???
    17.select into ?的用法?--只能處理一行結果集
    declare
    ? name varchar(30);
    begin
    ?select username into name
    ?from users
    ?where id=2;
    dbms_output.put_line('姓名為:'||name);
    end;
    /
    18.利用%rowtype屬性可以在運行時方便的聲明記錄變量和其他結構
    Set serveroutput on;
    Declare
    ?? utype hr.employees%rowtype;
    Begin
    Select * into utype from hr.employees where employee_id=194;
    Dbms_output.put_line('姓名'|| utype.first_name);
    Dbms_output.put_line('生日'|| utype.last_name);
    end;
    /???--%rowtype想當于復制一個表
    19.游標的定義和使用
    Declare
    Cursor ucur is select * from users; --聲明游標
    Us users%rowtype;--定義與游標想匹配的變量
    Begin
    Open ucur;--打開游標
    Fetch ucur into us;
    While ucur %found loop --使用循環遍歷游標的查詢結果
    Dbms_output.put_line('姓名:'||us.username||'生日'||us.brithday);
    Fetch ucur into us;
    End loop;
    Close ucur; --關閉游標
    End;
    =======================================
    %found在前一條的fetch語句至少對應數據庫的一行時,%found屬性值為true,否則為false;
    % notfound 在前一條fetch語句沒有對應的數據庫行時,%notfound屬性值為true,否則為false;
    %isopen 在游標打開時%isopen屬性值為true;否則為false;
    %rowcount顯示迄今為止從顯示游標中取出的行數

    20.
    刪除
    drop tablespace 空間名 including contents;?--刪除表空間和里面的內容
    drop table 表名???--刪除表
    drop user 用戶名??--刪除用戶

    insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'lisi',21,to_date('1989-09-08','yyyy-mm-dd'));
    insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'wangwu',21,to_date('1989-09-08','yyyy-mm-dd'));
    insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'zhaoliu',20,to_date('1990-09-08','yyyy-mm-dd'));
    insert into exam(stuid,subid,grade)values(1,2,70);
    insert into exam(stuid,subid,grade)values(2,1,45);
    insert into exam(stuid,subid,grade)values(2,2,70);


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产性生交xxxxx免费| 全免费一级毛片在线播放| 亚洲日韩中文在线精品第一| 亚洲av无码有乱码在线观看| 麻豆成人精品国产免费| 亚洲色大成网站www| 午夜一级毛片免费视频| 国产成人不卡亚洲精品91| 深夜国产福利99亚洲视频| 深夜福利在线视频免费| 一本色道久久综合亚洲精品| 中文字幕av免费专区| 亚洲国产AV无码专区亚洲AV| 久久精品成人免费观看| 亚洲网站在线观看| 美女视频黄是免费的网址| 亚洲heyzo专区无码综合| 免费在线观看黄网| 丝袜捆绑调教视频免费区| 亚洲国产精品久久久久婷婷软件| 18禁止看的免费污网站| 亚洲另类自拍丝袜第五页| 精品国产香蕉伊思人在线在线亚洲一区二区 | 亚洲不卡中文字幕| 午夜dj在线观看免费视频| 免费看内射乌克兰女| 亚洲Av无码精品色午夜| 台湾一级毛片永久免费| 国产成人综合久久精品亚洲| 亚洲成av人片一区二区三区| 久9久9精品免费观看| 美女视频黄免费亚洲| 亚洲精品无码成人片在线观看 | 成人免费视频88| 一边摸一边桶一边脱免费视频| 亚洲AV无码乱码在线观看裸奔| 性生交片免费无码看人| a级毛片免费在线观看| 亚洲中文字幕久久精品无码VA| 亚洲国产中文v高清在线观看| 99在线观看视频免费|