OMG,到底在尋找什么..................
          (構造一個完美的J2EE系統所需要的完整知識體系)
          posts - 198,  comments - 37,  trackbacks - 0
          一、ORACLE的啟動和關閉
          1、在單機環境下
          要想啟動或關閉ORACLE系統必須首先切換到ORACLE用戶,如下
          su?-?oracle

          a、啟動ORACLE系統
          oracle>svrmgrl
          SVRMGR>connect?internal
          SVRMGR>startup
          SVRMGR>quit

          b、關閉ORACLE系統
          oracle>svrmgrl
          SVRMGR>connect?internal
          SVRMGR>shutdown
          SVRMGR>quit

          啟動oracle9i數據庫命令:
          $?sqlplus?/nolog

          SQL*Plus:?Release?9.2.0.1.0?-?Production?on?Fri?Oct?31?13:53:53?2003

          Copyright?(c)?1982,?2002,?Oracle?Corporation.??All?rights?reserved.

          SQL>?connect?/?as?sysdba??
          Connected?to?an?idle?instance.
          SQL>?startup^C

          SQL>?startup
          ORACLE?instance?started.


          2、在雙機環境下
          要想啟動或關閉ORACLE系統必須首先切換到root用戶,如下
          su?-?root

          a、啟動ORACLE系統
          hareg?-y?oracle

          b、關閉ORACLE系統
          hareg?-n?oracle

          Oracle數據庫有哪幾種啟動方式


          說明:

          有以下幾種啟動方式:
          1、startup?nomount
          非安裝啟動,這種方式啟動下可執行:重建控制文件、重建數據庫

          讀取init.ora文件,啟動instance,即啟動SGA和后臺進程,這種啟動只需要init.ora文件。


          2、startup?mount?dbname
          安裝啟動,這種方式啟動下可執行:
          數據庫日志歸檔、
          數據庫介質恢復、
          使數據文件聯機或脫機,
          重新定位數據文件、重做日志文件。

          執行“nomount”,然后打開控制文件,確認數據文件和聯機日志文件的位置,
          但此時不對數據文件和日志文件進行校驗檢查。


          3、startup?open?dbname
          先執行“nomount”,然后執行“mount”,再打開包括Redo?log文件在內的所有數據庫文件,
          這種方式下可訪問數據庫中的數據。


          4、startup,等于以下三個命令
          startup?nomount
          alter?database?mount
          alter?database?open


          5、startup?restrict
          約束方式啟動
          這種方式能夠啟動數據庫,但只允許具有一定特權的用戶訪問
          非特權用戶訪問時,會出現以下提示:
          ERROR:
          ORA-01035:?ORACLE?只允許具有?RESTRICTED?SESSION?權限的用戶使用


          6、startup?force
          強制啟動方式
          當不能關閉數據庫時,可以用startup?force來完成數據庫的關閉
          先關閉數據庫,再執行正常啟動數據庫命令


          7、startup?pfile=參數文件名
          帶初始化參數文件的啟動方式
          先讀取參數文件,再按參數文件中的設置啟動數據庫
          例:startup?pfile=E:Oracleadminoradbpfileinit.ora


          8、startup?EXCLUSIVE
          二、用戶如何有效地利用數據字典
          ?? ORACLE的數據字典是數據庫的重要組成部分之一,它隨著數據庫的產生而產生,?隨著數據庫的變化而變化,
          體現為sys用戶下的一些表和視圖。數據字典名稱是大寫的英文字符。

          ????數據字典里存有用戶信息、用戶的權限信息、所有數據對象信息、表的約束條件、統計分析數據庫的視圖等。
          我們不能手工修改數據字典里的信息。

            很多時候,一般的ORACLE用戶不知道如何有效地利用它。

            dictionary   全部數據字典表的名稱和解釋,它有一個同義詞dict
          ????dict_column  ?全部數據字典表里字段名稱和解釋

          ????如果我們想查詢跟索引有關的數據字典時,可以用下面這條SQL語句:

          ????SQL>select?*?from?dictionary?where?instr(comments,'index')>0;

          ????如果我們想知道user_indexes表各字段名稱的詳細含義,可以用下面這條SQL語句:

          ????SQL>select?column_name,comments?from?dict_columns?where?table_name='USER_INDEXES';

          ????依此類推,就可以輕松知道數據字典的詳細名稱和解釋,不用查看ORACLE的其它文檔資料了。

          ????下面按類別列出一些ORACLE用戶常用數據字典的查詢使用方法。

          ????1、用戶

          ????????????查看當前用戶的缺省表空間
          ????????????SQL>select?username,default_tablespace?from?user_users;

          ????????查看當前用戶的角色
          ????????SQL>select?*?from?user_role_privs;

          ????????查看當前用戶的系統權限和表級權限
          ????????SQL>select?*?from?user_sys_privs;
          ????????SQL>select?*?from?user_tab_privs;

          ????2、表

          ????????????查看用戶下所有的表
          ????????????SQL>select?*?from?user_tables;

          ????????????查看名稱包含log字符的表
          ????????????SQL>select?object_name,object_id?from?user_objects
          ????????????????where?instr(object_name,'LOG')>0;

          ????????????查看某表的創建時間
          ????????????SQL>select?object_name,created?from?user_objects?where?object_name=upper('&table_name');

          ????????????查看某表的大小
          ????????????SQL>select?sum(bytes)/(1024*1024)?as?"size(M)"?from?user_segments
          ????????????????where?segment_name=upper('&table_name');

          ????????????查看放在ORACLE的內存區里的表
          ????????????SQL>select?table_name,cache?from?user_tables?where?instr(cache,'Y')>0;

          ????3、索引

          ????????????查看索引個數和類別
          ????????????SQL>select?index_name,index_type,table_name?from?user_indexes?order?by?table_name;

          ????????????查看索引被索引的字段
          ????????????SQL>select?*?from?user_ind_columns?where?index_name=upper('&index_name');

          ????????????查看索引的大小
          ????????????SQL>select?sum(bytes)/(1024*1024)?as?"size(M)"?from?user_segments
          ????????????????where?segment_name=upper('&index_name');

          ????4、序列號

          ????????????查看序列號,last_number是當前值
          ????????????SQL>select?*?from?user_sequences;

          ????5、視圖

          ????????????查看視圖的名稱
          ????????????SQL>select?view_name?from?user_views;

          ????????????查看創建視圖的select語句
          ????????????SQL>set?view_name,text_length?from?user_views;
          ????????????SQL>set?long?2000;????????????????說明:可以根據視圖的text_length值設定set?long?的大小
          ????????????SQL>select?text?from?user_views?where?view_name=upper('&view_name');

          ????6、同義詞

          ????????????查看同義詞的名稱
          ????????????SQL>select?*?from?user_synonyms;

          ????7、約束條件

          ????????????查看某表的約束條件
          ????????????SQL>select?constraint_name,?constraint_type,search_condition,?r_constraint_name
          ????????????????from?user_constraints?where?table_name?=?upper('&table_name');

          ????????SQL>select?c.constraint_name,c.constraint_type,cc.column_name
          ????????????from?user_constraints?c,user_cons_columns?cc
          ????????????where?c.owner?=?upper('&table_owner')?and?c.table_name?=?upper('&table_name')
          ????????????and?c.owner?=?cc.owner?and?c.constraint_name?=?cc.constraint_name
          ????????????order?by?cc.position;

          ????8、存儲函數和過程

          ????????????查看函數和過程的狀態
          ????????????SQL>select?object_name,status?from?user_objects?where?object_type='FUNCTION';
          ????????????SQL>select?object_name,status?from?user_objects?where?object_type='PROCEDURE';

          ????????????查看函數和過程的源代碼
          ????????????SQL>select?text?from?all_source?where?owner=user?and?name=upper('&plsql_name');


          三、查看數據庫的SQL
          1、查看表空間的名稱及大小

          ????select?t.tablespace_name,?round(sum(bytes/(1024*1024)),0)?ts_size
          ????from?dba_tablespaces?t,?dba_data_files?d
          ????where?t.tablespace_name?=?d.tablespace_name
          ????group?by?t.tablespace_name;

          2、查看表空間物理文件的名稱及大小

          ????select?tablespace_name,?file_id,?file_name,
          ????round(bytes/(1024*1024),0)?total_space
          ????from?dba_data_files
          ????order?by?tablespace_name;

          3、查看回滾段名稱及大小

          ????select?segment_name,?tablespace_name,?r.status,
          ????(initial_extent/1024)?InitialExtent,(next_extent/1024)?NextExtent,
          ????max_extents,?v.curext?CurExtent
          ????From?dba_rollback_segs?r,?v$rollstat?v
          ????Where?r.segment_id?=?v.usn(+)
          ????order?by?segment_name?;

          4、查看控制文件

          ????select?name?from?v$controlfile;

          5、查看日志文件

          ????select?member?from?v$logfile;

          6、查看表空間的使用情況

          ????select?sum(bytes)/(1024*1024)?as?free_space,tablespace_name
          ????from?dba_free_space
          ????group?by?tablespace_name;

          ????SELECT?A.TABLESPACE_NAME,A.BYTES?TOTAL,B.BYTES?USED,?C.BYTES?FREE,
          ????(B.BYTES*100)/A.BYTES?"%?USED",(C.BYTES*100)/A.BYTES?"%?FREE"
          ????FROM?SYS.SM$TS_AVAIL?A,SYS.SM$TS_USED?B,SYS.SM$TS_FREE?C
          ????WHERE?A.TABLESPACE_NAME=B.TABLESPACE_NAME?AND?A.TABLESPACE_NAME=C.TABLESPACE_NAME;

          7、查看數據庫庫對象

          ????select?owner,?object_type,?status,?count(*)?count#?from?all_objects?group?by?owner,?object_type,?status;

          8、查看數據庫的版本

          ????Select?version?FROM?Product_component_version
          ????Where?SUBSTR(PRODUCT,1,6)='Oracle';

          9、查看數據庫的創建日期和歸檔方式

          ????Select?Created,?Log_Mode,?Log_Mode?From?V$Database;
          四、ORACLE用戶連接的管理

          用系統管理員,查看當前數據庫有幾個用戶連接:

          SQL>?select?username,sid,serial#?from?v$session;

          如果要停某個連接用

          SQL>?alter?system?kill?session?'sid,serial#';

          如果這命令不行,找它UNIX的進程數

          SQL>?select?pro.spid?from?v$session?ses,v$process?pro?where?ses.sid=21?and?ses.paddr=pro.addr;

          說明:21是某個連接的sid數

          然后用?kill?命令殺此進程號。


          五、SQL*PLUS使用
          a、近入SQL*Plus
          $sqlplus?用戶名/密碼

          ???退出SQL*Plus
          SQL>exit

          b、在sqlplus下得到幫助信息
          列出全部SQL命令和SQL*Plus命令
          SQL>help
          列出某個特定的命令的信息
          SQL>help?命令名

          c、顯示表結構命令DESCRIBE
          SQL>DESC?表名

          d、SQL*Plus中的編輯命令
          顯示SQL緩沖區命令
          SQL>L

          修改SQL命令
          首先要將待改正行變為當前行
          SQL>n
          用CHANGE命令修改內容
          SQL>c/舊/新
          重新確認是否已正確
          SQL>L

          使用INPUT命令可以在SQL緩沖區中增加一行或多行
          SQL>i
          SQL>輸入內容

          e、調用外部系統編輯器
          SQL>edit?文件名
          可以使用DEFINE命令設置系統變量EDITOR來改變文本編輯器的類型,在login.sql文件中定義如下一行
          DEFINE_EDITOR=vi

          f、運行命令文件
          SQL>START?test
          SQL>@test

          常用SQL*Plus語句
          a、表的創建、修改、刪除
          創建表的命令格式如下:
          create?table?表名?(列說明列表);

          為基表增加新列命令如下:
          ALTER?TABLE?表名?ADD?(列說明列表)
          例:為test表增加一列Age,用來存放年齡
          ????sql>alter?table?test
          ????????add?(Age?number(3));

          修改基表列定義命令如下:
          ALTER?TABLE?表名
          MODIFY?(列名?數據類型)
          例:將test表中的Count列寬度加長為10個字符
          ????sql>alter?atble?test
          ????????modify?(County?char(10));

          b、將一張表刪除語句的格式如下:
          DORP?TABLE?表名;
          例:表刪除將同時刪除表的數據和表的定義
          sql>drop?table?test

          c、表空間的創建、刪除


          六、ORACLE邏輯備份的SH文件

          完全備份的SH文件:exp_comp.sh

          rq=`?date?+"%m%d"?`

          su?-?oracle?-c?"exp?system/manager?full=y?inctype=complete?file=/oracle/export/db_comp$rq.dmp"

          累計備份的SH文件:exp_cumu.sh

          rq=`?date?+"%m%d"?`

          su?-?oracle?-c?"exp?system/manager?full=y?inctype=cumulative?file=/oracle/export/db_cumu$rq.dmp"

          增量備份的SH文件:?exp_incr.sh

          rq=`?date?+"%m%d"?`

          su?-?oracle?-c?"exp?system/manager?full=y?inctype=incremental?file=/oracle/export/db_incr$rq.dmp"

          root用戶crontab文件
          /var/spool/cron/crontabs/root增加以下內容

          0?2?1?*?*?/oracle/exp_comp.sh

          30?2?*?*?0-5?/oracle/exp_incr.sh

          45?2?*?*?6?/oracle/exp_cumu.sh

          當然這個時間表可以根據不同的需求來改變的,這只是一個例子。


          七、ORACLE?常用的SQL語法和數據對象

          一.數據控制語句?(DML)?部分

          1.INSERT??(往數據表里插入記錄的語句)

          INSERT?INTO?表名(字段名1,?字段名2,?……)?VALUES?(?值1,?值2,?……);
          INSERT?INTO?表名(字段名1,?字段名2,?……)??SELECT?(字段名1,?字段名2,?……)?FROM?另外的表名;

          字符串類型的字段值必須用單引號括起來,?例如:?’GOOD?DAY’
          如果字段值里包含單引號’?需要進行字符串轉換,?我們把它替換成兩個單引號''.
          字符串類型的字段值超過定義的長度會出錯,?最好在插入前進行長度校驗.

          日期字段的字段值可以用當前數據庫的系統時間SYSDATE,?精確到秒
          或者用字符串轉換成日期型函數TO_DATE(‘2001-08-01’,’YYYY-MM-DD’)
          TO_DATE()還有很多種日期格式,?可以參看ORACLE?DOC.
          年-月-日?小時:分鐘:秒?的格式YYYY-MM-DD?HH24:MI:SS

          INSERT時最大可操作的字符串長度小于等于4000個單字節,?如果要插入更長的字符串,?請考慮字段用CLOB類型,
          方法借用ORACLE里自帶的DBMS_LOB程序包.

          INSERT時如果要用到從1開始自動增長的序列號,?應該先建立一個序列號
          CREATE?SEQUENCE?序列號的名稱?(最好是表名+序列號標記)?INCREMENT?BY?1??START??WITH??1
          MAXVALUE??99999??CYCLE??NOCACHE;
          其中最大的值按字段的長度來定,?如果定義的自動增長的序列號?NUMBER(6)?,?最大值為999999
          INSERT?語句插入這個字段值為:?序列號的名稱.NEXTVAL

          2.DELETE??(刪除數據表里記錄的語句)

          DELETE?FROM表名?WHERE?條件;

          注意:刪除記錄并不能釋放ORACLE里被占用的數據塊表空間.?它只把那些被刪除的數據塊標成unused.

          如果確實要刪除一個大表里的全部記錄,?可以用?TRUNCATE?命令,?它可以釋放占用的數據塊表空間
          TRUNCATE?TABLE?表名;
          此操作不可回退.

          3.UPDATE??(修改數據表里記錄的語句)

          UPDATE表名?SET?字段名1=值1,?字段名2=值2,?……?WHERE?條件;

          如果修改的值N沒有賦值或定義時,?將把原來的記錄內容清為NULL,?最好在修改前進行非空校驗;
          值N超過定義的長度會出錯,?最好在插入前進行長度校驗..

          注意事項:
          A.????????以上SQL語句對表都加上了行級鎖,
          ????????確認完成后,?必須加上事物處理結束的命令?COMMIT?才能正式生效,
          ????????否則改變不一定寫入數據庫里.
          ????????如果想撤回這些操作,?可以用命令?ROLLBACK?復原.

          B.????????在運行INSERT,?DELETE?和?UPDATE?語句前最好估算一下可能操作的記錄范圍,
          ????????應該把它限定在較小?(一萬條記錄)?范圍內,.?否則ORACLE處理這個事物用到很大的回退段.
          ????????程序響應慢甚至失去響應.?如果記錄數上十萬以上這些操作,?可以把這些SQL語句分段分次完成,
          ????????其間加上COMMIT?確認事物處理.
          二.數據定義?(DDL)?部分

          1.CREATE?(創建表,?索引,?視圖,?同義詞,?過程,?函數,?數據庫鏈接等)

          ORACLE常用的字段類型有
          CHAR????????????????????????固定長度的字符串
          VARCHAR2????????????????可變長度的字符串
          NUMBER(M,N)????????????????數字型M是位數總長度,?N是小數的長度
          DATE????????????????????????日期類型

          創建表時要把較小的不為空的字段放在前面,?可能為空的字段放在后面

          創建表時可以用中文的字段名,?但最好還是用英文的字段名

          創建表時可以給字段加上默認值,?例如?DEFAULT?SYSDATE
          這樣每次插入和修改時,?不用程序操作這個字段都能得到動作的時間

          創建表時可以給字段加上約束條件
          例如?不允許重復?UNIQUE,?關鍵字?PRIMARY?KEY

          2.ALTER????????(改變表,?索引,?視圖等)

          改變表的名稱
          ALTER?TABLE?表名1??TO?表名2;

          在表的后面增加一個字段
          ALTER?TABLE表名?ADD?字段名?字段名描述;

          修改表里字段的定義描述
          ALTER?TABLE表名?MODIFY字段名?字段名描述;

          給表里的字段加上約束條件
          ALTER?TABLE?表名?ADD?CONSTRAINT?約束名?PRIMARY?KEY?(字段名);
          ALTER?TABLE?表名?ADD?CONSTRAINT?約束名?UNIQUE?(字段名);

          把表放在或取出數據庫的內存區
          ALTER?TABLE?表名?CACHE;
          ALTER?TABLE?表名?NOCACHE;

          3.DROP????????(刪除表,?索引,?視圖,?同義詞,?過程,?函數,?數據庫鏈接等)

          刪除表和它所有的約束條件
          DROP?TABLE?表名?CASCADE?CONSTRAINTS;

          4.TRUNCATE?(清空表里的所有記錄,?保留表的結構)

          TRUNCATE?表名;

          三.查詢語句?(SELECT)?部分

          SELECT字段名1,?字段名2,?……?FROM?表名1,?[表名2,?……]?WHERE?條件;

          字段名可以帶入函數
          ??例如:??COUNT(*),?MIN(字段名),??MAX(字段名),??AVG(字段名),?DISTINCT(字段名),
          ???????????TO_CHAR(DATE字段名,'YYYY-MM-DD?HH24:MI:SS')

          NVL(EXPR1,?EXPR2)函數
          解釋:
          IF?EXPR1=NULL
          ????????????????RETURN?EXPR2
          ELSE
          ???????????????????????RETURN?EXPR1

          DECODE(AA﹐V1﹐R1﹐V2﹐R2....)函數
          解釋:
          IF?AA=V1?THEN?RETURN?R1
          IF?AA=V2?THEN?RETURN?R2
          ..…
          ELSE
          RETURN?NULL

          LPAD(char1,n,char2)函數
          解釋:
          字符char1按制定的位數n顯示,不足的位數用char2字符串替換左邊的空位

          字段名之間可以進行算術運算
          例如:??(字段名1*字段名1)/3

          查詢語句可以嵌套
          例如:?SELECT?……?FROM
          (SELECT?……?FROM表名1,?[表名2,?……]?WHERE?條件)?WHERE?條件2;

          兩個查詢語句的結果可以做集合操作
          例如:?并集UNION(去掉重復記錄),?并集UNION?ALL(不去掉重復記錄),?差集MINUS,??交集INTERSECT

          分組查詢
          SELECT字段名1,?字段名2,?……?FROM?表名1,?[表名2,?……]?GROUP?BY字段名1
          [HAVING?條件]?;

          兩個以上表之間的連接查詢

          SELECT字段名1,?字段名2,?……?FROM?表名1,?[表名2,?……]?WHERE
          ????????????????表名1.字段名?=?表名2.?字段名?[?AND?……]?;

          SELECT字段名1,?字段名2,?……?FROM?表名1,?[表名2,?……]?WHERE
          ????????????????表名1.字段名?=?表名2.?字段名(+)?[?AND?……]?;

          有(+)號的字段位置自動補空值

          查詢結果集的排序操作,?默認的排序是升序ASC,?降序是DESC

          SELECT字段名1,?字段名2,?……?FROM?表名1,?[表名2,?……]
          ORDER?BY字段名1,?字段名2?DESC;

          字符串模糊比較的方法

          INSTR(字段名,?‘字符串’)>0
          字段名?LIKE??‘字符串%’??[‘%字符串%’]

          每個表都有一個隱含的字段ROWID,?它標記著記錄的唯一性.

          四.ORACLE里常用的數據對象?(SCHEMA)

          1.索引?(INDEX)

          CREATE?INDEX?索引名ON?表名?(?字段1,?[字段2,?……]?);
          ALTER?INDEX?索引名?REBUILD;

          一個表的索引最好不要超過三個?(特殊的大表除外),?最好用單字段索引,?結合SQL語句的分析執行情況,
          也可以建立多字段的組合索引和基于函數的索引

          ORACLE8.1.7字符串可以索引的最大長度為1578?單字節
          ORACLE8.0.6字符串可以索引的最大長度為758?單字節

          2.視圖?(VIEW)

          CREATE?VIEW?視圖名AS?SELECT?….?FROM?…..;
          ALTER?VIEW視圖名?COMPILE;

          視圖僅是一個SQL查詢語句,?它可以把表之間復雜的關系簡潔化.

          3.同義詞?(SYNONMY)
          CREATE?SYNONYM同義詞名FOR?表名;
          CREATE?SYNONYM同義詞名FOR?表名@數據庫鏈接名;

          4.數據庫鏈接?(DATABASE?LINK)
          CREATE?DATABASE?LINK數據庫鏈接名CONNECT?TO?用戶名?IDENTIFIED?BY?密碼?USING?‘數據庫連接字符串’;

          數據庫連接字符串可以用NET8?EASY?CONFIG或者直接修改TNSNAMES.ORA里定義.

          數據庫參數global_name=true時要求數據庫鏈接名稱跟遠端數據庫名稱一樣

          數據庫全局名稱可以用以下命令查出
          SELECT?*?FROM?GLOBAL_NAME;

          查詢遠端數據庫里的表
          SELECT?……?FROM?表名@數據庫鏈接名;

          五.權限管理?(DCL)?語句

          1.GRANT????????賦于權限
          常用的系統權限集合有以下三個:
          CONNECT(基本的連接),?RESOURCE(程序開發),?DBA(數據庫管理)
          常用的數據對象權限有以下五個:
          ALL?????????ON?數據對象名,?????????SELECT?ON?數據對象名,?????????UPDATE?ON?數據對象名,
          DELETE?????????ON?數據對象名,??INSERT?ON?數據對象名,???ALTER??ON?數據對象名

          GRANT?CONNECT,?RESOURCE?TO?用戶名;
          GRANT?SELECT?ON?表名?TO?用戶名;
          GRANT?SELECT,?INSERT,?DELETE?ON表名?TO?用戶名1,?用戶名2;

          2.REVOKE?回收權限

          REVOKE?CONNECT,?RESOURCE?FROM?用戶名;
          REVOKE?SELECT?ON?表名?FROM?用戶名;
          REVOKE?SELECT,?INSERT,?DELETE?ON表名?FROM?用戶名1,?用戶名2;


          查詢數據庫中第63號錯誤:
          select?orgaddr,destaddr?from?sm_histable0116?where?error_code='63';

          查詢數據庫中開戶用戶最大提交和最大下發數:?select?MSISDN,TCOS,OCOS?from?ms_usertable;


          查詢數據庫中各種錯誤代碼的總和:
          select?error_code,count(*)?from?sm_histable0513?group?by?error_code?order
          by?error_code;

          查詢報表數據庫中話單統計種類查詢。
          select?sum(Successcount)?from?tbl_MiddleMt0411?where?ServiceType2=111
          select?sum(successcount),servicetype?from?tbl_middlemt0411?group?by?servicetype
          posted on 2006-07-12 11:49 OMG 閱讀(710) 評論(0)  編輯  收藏 所屬分類: <項目>數據庫設計

          <2006年7月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          IT風云人物

          文檔

          朋友

          相冊

          經典網站

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 苗栗县| 德安县| 凤凰县| 玉林市| 靖江市| 长垣县| 文登市| 海南省| 乐平市| 丰台区| 城市| 富源县| 台东市| 城口县| 通河县| 恭城| 利川市| 桦南县| 贡嘎县| 张家口市| 峡江县| 北川| 广东省| 黄平县| 双鸭山市| 万盛区| 华宁县| 固阳县| 天气| 聊城市| 浦江县| 崇仁县| 宿迁市| 阳曲县| 东辽县| 和硕县| 应城市| 滁州市| 旅游| 哈尔滨市| 庆城县|