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

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

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

    神秘的 J2ee 殿堂

    ·古之學者必有師·做學者亦要做師者·FIGHTING·

    oracl學習筆記

    新建用戶,分配權限,到用戶建表
    ---------------------------------------
    先通過【c:\>SQLPLUS /NOLOG】進入到【SQL>】
    然后通過【SQL>conn sys/oracle@liuyong_127.0.0.1 as sysdba】連接到數據庫其中sys是建立數據庫時

    系統帳戶,而oracle是自己設的密碼,liuyong_127.0.0.1是在net manager中配置的一個服務命名,好像

    是例程命名;當系統提示已連接上時,即可進行配置新用戶操作【create user liuyong identified by

    "liuyong";】以及之后的授權操作像【grant create session to liuyong;】【grant create table to

    liuyong;】【grant create tablespace to liuyong;】【grant create view to liuyong;】,然后還要

    授予用戶使用表空間的權限【alter user l
    iuyong quota unlimited on SYSTEM;】其中SYSTEM是表空間

    的名字,也可新建表空間,然后再分配。到現在為止就可以通過liuyong用戶去建表了。


    必要的時候,我們需要重啟ORACLE服務器.

    1.關閉服務器

    SQL > shutdown immediate

    2.啟動服務器

    SQL > startup

    3.啟動監聽器

    SQL > lsnrctl start

    授予用戶操作表的權限
    grant connect,resource,dba to user_id;

    授予一個user_id sysdba權限
    grant   sysdba   to   user_id;


    ---------------------

    orcle中創建隊列用于表主鍵

    create sequence SQE_SEARCHID
    maxvalue 
    999999999
    minvalue 
    1
    start with 
    1
    increment by 
    1
    cycle
    ;

    使用的時候只學要:
    select SQE_SEARCHID.nextval from dual
    或者:
    insert into tbl_cxqqxxb(searchid,name) values(lpad(SQE_SEARCHID.nextval,'9','0'),'tocas');
    其中lpad是固定searchid長度為9,不夠左邊補0,還有個rpad

    關于sequence的一篇文章:
    在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按
    序列號排序的地方。

    1、 create sequence
    你首先要有create sequence或者create 
    any sequence權限,
    create sequence emp_sequence
    INCREMENT 
    BY 1 -- 每次加幾個
    START WITH 1 -- 從1開始計數
    NOMAXVALUE -- 不設置最大值
    NOCYCLE -- 一直累加,不循環
    CACHE 10;

    一旦定義了emp_sequence,你就可以用CURRVAL,NEXTVAL
    CURRVAL
    =返回sequence的當前值
    NEXTVAL
    =增加sequence的值,然后返回sequence值
    比如:
    emp_sequence.CURRVAL
    emp_sequence.NEXTVAL

    可以使用sequence的地方:
    - 不包含子查詢、snapshot、VIEW的 SELECT 語句
    - INSERT語句的子查詢中
    - NSERT語句的VALUES中
    - UPDATE 的 SET中

    可以看如下例子:
    INSERT INTO emp VALUES
    (empseq.nextval, 
    'LEWIS''CLERK',7902, SYSDATE, 1200NULL20);

    SELECT empseq.currval FROM DUAL;

    但是要注意的是:
    - 第一次NEXTVAL返回的是初始值;隨后的NEXTVAL會自動增加你定義的INCREMENT BY值,
    然后返回增加后的值。CURRVAL 總是返回當前sequence的值,但是在第一次NEXTVAL
    初始化之后才能使用CURRVAL,否則會出錯。一次NEXTVAL會增加一次sequence的值,
    所以如果你在同一個語句里面使用多個NEXTVAL,其值就是不一樣的。明白?
    - 如果指定CACHE值,oracle就可以預先在內存里面放置一些sequence,這樣存取的快
    些。
    cache里面的取完后,oracle自動再取一組到cache。 使用cache或許會跳號, 比如
    數據庫突然不正常down掉(
    shutdown abort),cache中的sequence就會丟失. 所以可
    以在create sequence的時候用nocache防止這種情況。

    2、 Alter sequence
    你或者是該sequence的owner,或者有ALTER 
    ANY sequence權限才能改動sequence。 可
    以alter除start值之外的所有sequence參數。如果想要改變start值,必須drop sequence
    再re
    -create。例子:
    ALTER sequence emp_sequence
    INCREMENT 
    BY 10
    MAXVALUE 
    10000
    CYCLE 
    -- 到10000后從頭開始
    NOCACHE;

    影響sequence的初始化參數:
    sequence_CACHE_ENTRIES 
    =
    設置能同時被cache的sequence數目。

    可以很簡單的Drop sequence
    DROP sequence order_seq;

    結束


    本篇文章來源于 站長中國 轉載請以鏈接形式注明出處 網址:http:
    //www.zzchn.com/edu/Database/Oracle/20070803/25375.html


    posted on 2008-03-29 15:58 月芽兒 閱讀(435) 評論(0)  編輯  收藏 所屬分類: J2EE學習心得

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    相冊

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 大地影院MV在线观看视频免费| CAOPORM国产精品视频免费| 四虎影视在线影院在线观看免费视频| 亚洲国产a级视频| 亚洲人成人一区二区三区| 亚洲酒色1314狠狠做| 国产精品99久久免费观看| 免费视频中文字幕| 中文字幕亚洲激情| 精品亚洲AV无码一区二区| 国产精品福利片免费看| 久久精品国产亚洲精品| 国产精品免费久久久久影院| 亚洲中文字幕无码一区二区三区| 爽爽爽爽爽爽爽成人免费观看| 免费a级毛片高清视频不卡| 免费一级毛片在线观看| 黄色毛片免费观看| 最新欧洲大片免费在线 | 国产又黄又爽又猛免费app| 亚洲va中文字幕无码| 久久久久久久久久久免费精品| 日本一区二区三区免费高清| 亚洲一卡2卡3卡4卡5卡6卡| 免费看搞黄视频网站| 亚洲色欲www综合网| 最近最好的中文字幕2019免费| 亚洲成av人片在www鸭子| 99久久婷婷免费国产综合精品| 亚洲短视频男人的影院| 一级黄色毛片免费看| 亚洲av无码潮喷在线观看| 特a级免费高清黄色片| 国产∨亚洲V天堂无码久久久| 亚洲精品视频免费看| 亚洲国产精品va在线播放| 99久久99久久精品免费看蜜桃| 日本系列1页亚洲系列| 99久久人妻精品免费二区| 国产综合亚洲专区在线| 免费国产污网站在线观看15 |