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

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

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

    隨筆-9  評論-168  文章-266  trackbacks-0

    注:登入SQLPLUS時報錯,如下:
    請輸入用戶名:  system
    輸入口令:
    ERROR:
    ORA-12560: TNS: 協議適配器錯誤
    原因:
    是ORCAL實例沒啟動(net [start/stop] 服務名).與Linux相反,不在SQLPLUS中啟動實例.

    平臺: windows server 2003 Enterprise Editon , oracle 10g(10.02.00.01)

     

    1. 運行"開始->程序\Oracle - OraDb10g_home1\配置和移植工具"中的"Database Configuration Assistant",創建一個數據庫。
    2. 創建成功后,運行"開始->程序\Oracle - OraDb10g_home1\應用程序開發"中的"SQL Plus".用戶名:sys 密碼:123456 as sysdba(密碼后面要加空格as空格sysdba) 主機字符串:如果是本機可不填。
    3. 從命令提示符下使用sql*plus
      sqlplus/nolog
      conn 用戶名/密碼 as sysdba 出現”已連接“后就是成功了。

        
      接下來,我們在SQL*Plus中實戰一下,為我們下面將要做的打好基礎。
      用system登陸到SQL*Plus后,我們做如下操作(這次沒有截圖,有詳細的說明)
    -----------如登陸成功此1-3步不必做,直接做第4步----------------
    1. SQL>create user maxuan identified by max; #創建口令為max的用戶maxuan
    2. SQL>grant connect,resource to maxuan; #為用戶maxuan授權
    3. SQL>conn maxuan/max; #以用戶maxuan進行連接
    4. SQL>create table test(a number); #建立一個名為test的表,只有字段名為A的一列,數據類型為數字
    5. SQL>insert into test values(1); #插入一條記錄
    6. SQL>select * from test; #查詢記錄,此時A列的第一行為1
    7. SQL>update test set a=2; #更改記錄,此時A列的第一行已改為2
    8. SQL>commit; #提交.在完成數據庫的插入,刪除和修改操作時,只有當事務提交到數據庫才算完成。
    9. SQL>delete from test; #刪除test表中所有的記錄,此時test表中沒有記錄
    10. SQL>roll; #回滾到提交前,此時再查詢test表,A列第一行值又回復到2
      
      oracle的數據類型
      在數據庫中創建數據表的時候,我們需要定義表中所有字段的類型,數據類型大致分為:character,numberic,date,lob和raw等,這些是最基本的數據類型。當然在oracle中也允許自定義數據類型!
      
      在oracle中提供的character數據類型:
      char():固定長度字符串,最大長度為2000字節,如果不指定長充,缺省為1個字節長。
      varchar2():可變長度的字符串,最大長度為4000字節,具體定義時指明最大長度,這咱類型可以放數字、字母以及ASCII碼字符集(或者EBCDIC等數據庫系統接受的字符集標準)中的所有符號。如果數據長度沒有達到最大值,oracle會根據數據大小自動調節字段長度。是
      
      最長用的數據類型。
      nchar():根據字符集而定的固定長度字符串,最大長度2000字節。
      nvarchar2():根據字符集而定的可變長度字符串,最大長度4000字節。
      long:可變長字符列,最大長度限制為2GB,用于不需要作字符串搜索的長串數據。此類型是一個遺留下來的而且將來不會被支持的數據類型,逐漸被BLOB,CLOB,NCLOB等大的數據類型所取代。
      
      numberic數據類型用來存儲負的和正的整數,分數和浮點型數據,在oracle中提供的numberic數據類型:
      number(,):可變長的數值列,允許0、正值及負值,m是所有的有效數字的位數,n是小數點以后的位數。
      
      在oracle中提供的date數據類型:
      date:缺省格式是dd-mon-yy(日-月-年)
      
      在oracle中提供的lob數據類型:
      blob、clob、nclob:三種大型對象(lob),用來保存較大的圖形文件或帶格式的文本文件,如word文檔,以及音頻、視頻等非文本文件,最大長充是4GB。暈些數據存儲在數據庫內部保存。
      bfile:在數據庫外部保存的大型二進制對象文件,最大長度是4GB,這種外部的LOB類型,通過數據庫記錄變化情況,但是數據的具體保存是在數據庫外部進行的。
      
      在oracle中提供的raw數據類型:
      raw():可變長二進制數據,具體定義字段時必須指明最大長度,這種格式用來保存較小的圖形文件或帶格式的文本文件,它也是一種較老的數據類型,將被lob數據類型所取代。
      long raw:可變長二進制數據,最大長度是2GB,可以用來保存較大的圖形或帶格式的文本文件,以及音頻、視頻等非文本文件,這也是一種較老的數據類型,將被lob數據類型所取代。
      
      其它的數據類型:
      rowid:這是oracle數據表中的一個偽例,它是數據表中每行數據內在的唯一標識
      integer:整數類型
      
    補充知識:
    SQL(Structure Query Language)語言是結構化查詢語言,是數據庫的核心語言,是面向集合的描述性非過程化語言。SQL語言共分為四大類:數據查詢語言DQL,數據操縱語言DML,數據定義語言DDL,數據庫控制語言DCL。
      
      1.數據查詢語言DQL的基本結構是由select子句,from子句,where子句組成的查詢塊:
      select <字段名表> from <表或視圖名> where <查詢條件>
      
      2.數據操縱語言DML完成在數據庫中確定、修改、添加、刪除某一數據值的任務(以下是部分常用DML語句):
      insert  增加數據行到表
      delete  從表中刪除數據行
      Update  更改表中數據
      
      3.數據定義語言DDL完成定義數據庫的結構,包括數據庫本身、數據表、目錄、視圖等數據庫元素(以下是部分常用DDL語句)
      create table  創建表
      create index  創建索引
      create view  創建視圖
      alter table  增加表列,重定義表列,更改存儲分配
      drop table  刪除表
      drop index  刪除索引
      
      4.數據庫控制語言DCL用來授予或回收訪問數據庫的某種特權,并控制數據庫操縱事務發生的時間及效果,對數據庫實行監視等。如:
      grant    將權限或角色授予用戶或其它角色
      revoke    回收用戶權限
      roll    回滾,是當某個對話更改了數據庫中的數據后,由于某種原因用戶不想提交此更改時,oracle所采取的保護操作。這是一個把信息恢復到用戶使update、insert、delete前最后提交的狀態。
      commit    提交。在完成數據庫的插入,刪除和修改操作時,只有當事務提交到數據庫才算完成,有提交前只有操作數據庫的本人才能看到,別人只有在最后提交完成才可以看到。

      一個購物網站后臺數據庫實例:
      現在我們回到用J2EE體系開發購物網站的主題,開始實戰建購物網站的后臺數據庫。
      為了實現購物網站的基本的功能,我們需要建立四個表:商品列表(products)、商品類型表(item)、訂單列表(orders)和管理員列表(admin)。表結構如下所示:
      
      item表結構(商品類型表)
      字段名稱  數據類型    允許空  主鍵/外鍵  備注  
      type_id  INTEGER(自動編號) 否  主鍵   商品類別ID標記
      type   varchar2(30)   否    商品類別名稱
      
      product表結構(商品列表)
      字段名稱   數據類型   允許空  主鍵/外鍵  備注
      product_id INTEGER(自動編號) 否   主鍵  商品ID標記
      title   varchar2(30)   否     商品名稱
      type_id   INTEGER    否   外鍵  商品類別標記
      info   varchar2(80)   是     商品簡介
      price   number(16,2)   否     商品價格
      
      orders表結構(訂單列表)
      字段名稱  數據類型    允許空  主鍵/外鍵  備注
      order_id  INTEGER(自動編號) 否   主鍵  訂單ID標記
      name   varchar2(20)   否     顧客姓名
      address   varchar2(100)   是     發貨地址
      tel   number(16)  是     聯系電話
      email   varchar2(30)  否     聯系email
      btime   date    是     訂購日期
      product_id  INTEGER   否   外鍵  商品標記
      uword   varchar2(100) 是     顧客留言
      
      admin表結構(管理員列表)
      字段名稱  數據類型    允許空  主鍵/外鍵  備注
      admin_id  INTEGER(自動編號) 否   主鍵   管理員ID標記
      adminname  varchar2(20)   否     管理員名稱
      password  varchar2(20)   否     管理員密碼
      
      設計完表結構后,我們就要開始創建了。
      創建表我想已經不是什么難事了,那么我們要注意的是product、item、orders這三個表之間的關聯,還有自動編號。
      
      下面是完整的SQL語句,在后面我會給出詳細的說明,你可以在SQL*Plus里對照著輸入,也可以將它存為SQL腳本文件,在SQL*Plus或SQLPlus Worksheet里執行。當然也可以把代碼直接拷貝到SQL*Plus里執行!
      
      代碼:
      rem ///BY MAXUAN 開始///
      create table item(
      type_id integer not null,
      type varchar2(30),
      constraint item_pk primary key(type_id)
      );
      
      create table product(
      product_id integer not null,
      title varchar2(30) not null,
      type_id integer not null,
      info varchar2(80),
      price number(16,2) not null,
      constraint product_pk primary key (product_id),
      constraint product_fk foreign key(type_id) references item(type_id)
      );
      
      create table orders(
      order_id integer not null,
      name varchar2(20) not null,
      address varchar2(100),
      tel number(16),
      email varchar2(30) not null,
      btime date,
      product_id integer not null,
      uword varchar2(100),
      constraint orders_pk primary key(order_id),
      constraint orders_fk foreign key(product_id) references product(product_id)
      );
      
      create table admin(
      admin_id integer not null,
      adminname varchar2(20) not null,
      password varchar2(20) not null,
      constraint admin_pk primary key(admin_id)
      );
    posted on 2011-08-10 11:29 紫蝶∏飛揚↗ 閱讀(1242) 評論(0)  編輯  收藏 所屬分類: 數據庫
    主站蜘蛛池模板: 好男人www免费高清视频在线| 亚洲人AV在线无码影院观看| 国产免费观看网站| 日韩a级毛片免费视频| 88xx成人永久免费观看| 青青操视频在线免费观看| 美女的胸又黄又www网站免费| 亚洲午夜电影一区二区三区| 亚洲av永久无码精品漫画| 亚洲情a成黄在线观看| 国产aa免费视频| 国产亚洲精品成人AA片新蒲金| 四虎成人精品一区二区免费网站| 可以免费观看的国产视频| 一个人看www免费高清字幕| 国产亚洲综合视频| 中文字幕免费在线播放| 国产精品无码免费专区午夜| 国产亚洲综合久久| 国产在线精品一区免费香蕉| 国产免费一级高清淫曰本片| 添bbb免费观看高清视频| MM1313亚洲精品无码久久| 亚洲国产成人久久综合| 亚洲欧美成人综合久久久| 在线精品亚洲一区二区 | 亚洲v高清理论电影| 亚洲国产精品一区| 亚洲欧美成人一区二区三区| 亚洲中文字幕无码一去台湾| 亚洲中文无码线在线观看| 亚洲成aⅴ人片在线观| 亚洲国产人成在线观看| 亚洲午夜电影一区二区三区| 久久精品国产亚洲AV忘忧草18| 亚洲一级片在线播放| 亚洲一区二区三区国产精华液| 亚洲kkk4444在线观看| 亚洲成AV人片在WWW| 老司机午夜性生免费福利| 成年网在线观看免费观看网址|