??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲性猛交XXXX,久久久无码精品亚洲日韩软件,亚洲丁香色婷婷综合欲色啪http://m.tkk7.com/konhon/category/3609.html忘掉過去Q展望未來。找回自我,越自我? <br> <b>逃避不一定躲的过, 面对不一定最难过, 孤单不一定不快乐, 得到不一定能长久, 失去不一定不再拥? 可能因ؓ某个理由而伤心难q? 但我却能找个理由让自己快?</b><br><p> <!-- Search Google --> <left> <form method="get" action="http://www.google.com/custom" target="google_window"> <table> <tr><td nowrap="nowrap" valign="top" align="left" height="32"> <a > <img src="http://www.google.com/logos/Logo_25wht.gif" border="0" alt="Google" align="middle"></img></a> <input type="text" name="q" size="31" maxlength="255" value=""></input> <input type="submit" name="sa" value="搜烦"></input> <input type="hidden" name="client" value="pub-5408663347953425"></input> <input type="hidden" name="forid" value="1"></input> <input type="hidden" name="ie" value="UTF-8"></input> <input type="hidden" name="oe" value="UTF-8"></input> <input type="hidden" name="cof" value="GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1;"></input> <input type="hidden" name="hl" value="zh-CN"></input> </td></tr></table> </form> </left> <!-- Search Google --> zh-cnTue, 27 Feb 2007 11:03:37 GMTTue, 27 Feb 2007 11:03:37 GMT60Function怎么q回一个数据集Q?http://m.tkk7.com/konhon/archive/2005/11/29/21781.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:09:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21781.htmlhttp://m.tkk7.com/konhon/comments/21781.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21781.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21781.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21781.html1.CREATE OR REPLACE PACKAGE ROME AS  
  AS
  TYPE RefCursor IS REF CURSOR;
  Function GetCompany(key IN char) return RefCursor;
  END;
  /
  CREATE OR REPLACE PACKAGE BODY ROME IS
  IS
  Function GetCompany(key IN char) return RefCursor
  Is
  v_temp RefCursor;
  BEGIN
  OPEN v_temp FOR
  SELECT * FROM Company WHERE com_ID =key;
  return v_temp;
  END GetCompany;
  END;
  
  2.(适用于PLSQLcd)
  
  Type shifts_ty is RECORD(
  comp_code  varchar2(10),
  SHIFT_CODE  varchar2(10),
  sft_flg    varchar2(10),
  beg_tm    number,
  end_tm    number,
  skills    varchar2(10)) ;
  Type shifts is Table of shifts_ty index by binary_integer;
  
  FUNCTION test_proc(test varchar2)
  
  return shifts is
  shiftspkg SHIFTS;  --表变量shiftspkg
  
  cursor q1 is select
  shifts.comp_code,shifts.shift_code,shifts.WRK_BEG_TM,shifts.WRK_end_TM,
  shifts.skills from str_shifts shifts where comp_code ='TSI'; --str_shifts是与表变量shiftspkgl构完全相同的真实表
  qty q1%rowtype;
  begin
  
  open q1;
  loop
  fetch q1 into qty;
  exit when q1%notfound;
  
  for iCount in 1.. qty.skills.count
  loop
  shiftspkg(icount).comp_code:= qty.comp_code;
  shiftspkg(icount).SHIFT_CODE:= qty.shift_code;
  shiftspkg(icount).sft_flg:= 'SLOTS';
  shiftspkg(icount).beg_tm:= qty.wrk_beg_tm;
  shiftspkg(icount).end_tm:= qty.wrk_end_tm;
  shiftspkg(icount).skills:= qty.skills(icount);
  end loop;
  end loop;
  return  shiftspkg;
  end;
  end;
  
  3.使用于SQLcd
  
  create or replace type myScalarType as object
  ( comp_code varchar2(10),
  shift_code varchar2(10),
  sft_flg    varchar2(10),
  beg_tm    number,
  end_tm    number,
  skills    varchar2(10)
  )
  
  create or replace type myArrayType as table of myScalarType
  
  FUNCTION test_proc(test varchar2) return myArrayType
  is
  l_data myArrayType := myArrayType() ;
  begin
  for i in 1 .. 5
  loop
  l_data.extend;
  l_data( l_data.count ) := myScalarType( 'cc-'||i,
  'sc-'||i,
  'flg-'||i,
  i,
  i,
  test||i );
  end loop;
  
  return l_data;
  end;
  
  end;
  
  select *
  from THE ( select cast( pkg_test.test_proc('hello') as myArrayType )
  from dual ) a
  ?BR>  select *
  from table ( cast( my_function() as mytabletype  ) )
  order by seq

konhon 优华 2005-11-29 10:09 发表评论
]]>
PL/SQL~程l验结 http://m.tkk7.com/konhon/archive/2005/11/29/21780.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:06:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21780.htmlhttp://m.tkk7.com/konhon/comments/21780.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21780.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21780.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21780.html  
  1、当需要向表中装蝲大量的数据流或者需要处理大量的数据的时候,能否使用道提高处理效率Q?BR>  
  道函数对于改善q行查询的性能非常方便Q它加快往表中加蝲数据的速度。管道函数的使用ȝ如下两点Q?BR>  
  每当在查询里使用PL/SQL函数Ӟ该查询将被序列化Q即一个处理器只能q行一个查询实例,那么在这U情况下不可能用ƈ行查询(比如在数据仓库中要经怋用这Ҏ术)。因此,Z使用q行查询必M用管道函敎ͼq样也就加快了执行的速度?BR>  
  道函数的输入参数必L一个引用记录集cdQ即ref cursorQ,而返回的是嵌套表cdQ其表中每一行对应每一个引用记录)。在使用道函数之前Q必d在程序头写上PARALLEL_ENABLEQ这h能在查询语句中用管道函数来处理了?BR>  
  2Q?如何使PL/SQLE序{待一D|间执行?
  

  Ҏ是使用DBMS_LOCK包的SLEEP函数Q可以进行精定Ӟ其语法ؓQ?BR>  
  DBMS_LOCK.SLEEP (seconds IN NUMBER);
  
  3Q需要在一张表插入一条记录之后等若干U后再执行另外一个操作,如何在PL/SQLE序里进行定时操作?
  

  一般的做法是用循环作gq,利用 DBMS_UTILITY的gettime函数来检当前的旉Q程序代码如下:
  
  DECLARE
  v_delaytime CONSTANT INTEGER := 100;
  v_starttime INTEGER ;
  v_endtime INTEGER ;
  BEGIN
  V_starttime := DBMS_UTILITY.get_time;
  V_endtime := DBMS_UTILITY.get_time;
  While abs(V_endtime- V_starttime)< v_delaytime loop
  /*I@环或者简单的耗时执行语句*/
  End loop;
  END;
  /
  
  另外如果是不同会话(sessionQ之间的定时Q就必须使用DBMS_PIPE包的函数来实C话间的消息传递?BR>  
  4Q当PL/SQLq回一个数据集的时候,该用集合还是游标?
  

  一般情况下Q有以下两点作ؓ依据Q?BR>  
  1) 如果PL/SQLE序q回多多行数据给另外一个PL/SQLE序的话Q这里就使用集合Q因样可以利用集合的Ҏ集(bulk collectionQ来提高从数据库提取数据的速度?BR>  
  2) 如果需要在PL/SQLE序的环境中把数据返回到宿主语言环境中(如Sql*plus,c,delphi{)Q这时应该用游标变量来q回q些数据Q因为几乎所有的宿主语言都支持游标变量,但不是所有的宿主语言都支持集合。这样可以增强程序的可移植性?BR>  
  5Q如何更有效的在PL/SQL中用游标?
  

  游标是PL/SQL中一个非帔R要的概念Q对数据库的索主要依靠游标来操作。在PL/SQL中有两类游标Q一cL隐式游标Q如select clno into v_clno from table_detail.另外一cL昑ּ游标Q如cursor v_cur is select clno from table_detail。对于游标的使用q里l出以下几点Q?BR>  
  1) 可能的使用bulk collection。它能够较大的提高运行性能Q在Oracl9i的第二版Q甚臛_以用bulk collection来直接将数据写入到记录表
  
  2) 量使用昑ּ游标来处理,因ؓ相对于隐式游标来_昑ּ游标的速度更快一些?BR>  
  3) 如果查询的表很小或者是静态的Q可以把该表~存C个包U的集合里。这P你的查询函数q接从集合里(卌E全局区,PGA cacheQ,而不是从pȝ全局区(SGAQ来取数据,q样的处理速度会提升很多?img src ="http://m.tkk7.com/konhon/aggbug/21780.html" width = "1" height = "1" />

konhon 优华 2005-11-29 10:06 发表评论
]]>
ORACLE里取随机数的Ҏ http://m.tkk7.com/konhon/archive/2005/11/29/21779.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:05:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21779.htmlhttp://m.tkk7.com/konhon/comments/21779.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21779.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21779.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21779.html  
  如果是的话,可以用oracle里生成随机数的PL/SQL, 目录文g名在Q?ORACLE_HOME/rdbms/admin/dbmsrand.sql?BR>  
  用之前先要在sys用户下编?
  
  SQL>@/ORACLE_HOME/rdbms/admin/dbmsrand.sql
  
  它实际是在sys用户下生成一个dbms_randomE序包,同时生成公有同义词,q授权给所有数据库用户有执行的权限?BR>  
  使用dbms_randomE序? 取出随机数据的方法:
  
  1. 先创Z个唯一增长的序列号tmp_id
  
  create sequence tmp_id increment by 1 start with 1 maxvalue 9999999 nocycle nocache;
  
  2. 然后创徏一个时表tmp_1Q把W合本次zd条g的记录全部取出来?/B>
  
  create table tmp_1 as select tmp_id.nextval as id,email,mobileno from 表名 where 条g;
  
  扑ֈ最大的idP
  
  select max(id) from tmp_1;
  
  假设?000
  
  3. 讑֮一个生成随机数的种?/B>
  
  execute dbms_random.seed(12345678);
  
  或?BR>  
  execute dbms_random.seed(TO_CHAR(SYSDATE,'MM-DD-YYYY HH24:MI:SS'));
  
  4. 调用随机数生成函数dbms_random.value生成临时表tmp_2
  
  假设随机?00?BR>  
  create table tmp_2 as select trunc(dbms_random.value(1,5000)) as id from tmp_1 where rownum<201;
  
  [ 说明Qdbms_random.value(1,5000)是取1?000间的随机敎ͼ会有数,
  trunc函数寚w机数字取_才能和时表的整数ID字段相对应?BR>  
  注意Q如果tmp_1记录比较?10万条以上)Q也可以找一个约大于两百行的?假如是tmp_3)来生成tmp_2
  
  create table tmp_2 as select trunc(dbms_random.value(1,5000)) as id from tmp_3 where rownum<201; ]
  
  5. tmp_1和tmp_2相关联取得符合条件的200用户
  
  select t1.mobileno,t1.email from tmp_1 t1,tmp_2 t2 where t1.id=t2.id;
  
  [ 注意Q如果tmp_1记录比较?10万条以上)Q需要在id字段上徏索引。]
  
  也可以输出到文本文gQ?BR>  
  set pagesize 300;
  spool /tmp/200.txt;
  select t1.mobileno,t1.email from tmp_1 t1,tmp_2 t2 where t1.id=t2.id order by t1.mobileno;
  spool off;
  
  6. 用完后,删除临时表tmp_1、tmp_2和序列号tmp_id?/B>

konhon 优华 2005-11-29 10:05 发表评论
]]>
PL/SQL的一些语?http://m.tkk7.com/konhon/archive/2005/11/29/21778.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:03:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21778.htmlhttp://m.tkk7.com/konhon/comments/21778.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21778.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21778.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21778.html

  写一些关于PL/SQL的语法,免得{到用到的时候还要去q?BR>  Q。控制流E?if,while)
  Q。@?for)
  Q。游?cursor)
  Q。异常处?exceptionQ?BR>  
  1。控制流E(Q?/B>
  
  A.条g语句
  IF <statement> THEN
  PL/SQL
  END IF;
  
  IF <statement> THEN
  PL/SQL
  ELSE
  PL/SQL
  END IF;
  
  IF <statement> THEN
  PL/SQL
  ELSIF <statement> THEN
  PL/SQL
  END IF;
  
  2。@?/B>
  
  A.simple loop
  LOOP
  SQL
  EXIT WHEN <statement>;
  END LOOP;
  
  LOOP
  SQL
  IF <statement> THEN
  EXIT;
  END IF;
  END LOOP;
  
  B.While loop
  WHILE <statement> LOOP
  SQL
  END LOOP;
  
  C.For loop
  FOR $counter in $low .. $high LOOP
  SQL
  END LOOP
  
  3。游?/B>
  
  在PL/SQLE序中定义的游标叫做昑ּ游标?BR>  
  A.昑ּ游标的处理由四个部分l成Q?BR>  cursor $cursorname is $Query;   --定义游标
  open $cursorname;         --打开游标
  fetch $cursorname into $othervariable  --把游标中的东西取?BR>  close $cursorname  --关闭游标
  
  B.游标属?BR>  %found     布尔型属性,当最q一ơ读U录成功Ӟ为true.
  %nofound                p|Ӟ为false.
  %isopen
  %rowcount   q回已从游标中读取的记录数?BR>  
  C.参数化游?BR>  
  所有的SQL语句在上下文区内部都是可执行的,因此都有一个游标指向上下文区,此游标就是所谓的SQL游标?BR>  
  与显式游标不同,SQL游标不被E序打开和关闭?BR>  
  4.异常处理概念
  
  异常处理是用来处理正常执行过E中未预料的事g。如果PL/SQLE序块一旦生异常而又没有指出如何处理ӞE序会自动终止?BR>  
  异常处理部分攑֜PL/SQL的后半部分,l构为:
  
  EXCEPTION
  WHEN first_exception THEN <code to handle first exception>
  WHEN second_exception THEN <code to handle second exception>
  WHEN OTHERS THEN <code to handle second exception> --OTHERS必须攑֜最?BR>  
  异常分ؓ预定义和用户定义两种?BR>  
  用户定义的异常是通过昑ּ使用RAISE语句来引发。如
  
  DECLARE
  e_TooManyStudents EXCEPTION; -- cd为ExceptionQ用于指C错误条?BR>  v_CurrentStudents NUMBER(3); -- HIS-101学生注册当前?BR>  v_MaxStudents NUMBER(3);   -- HIS-101学生注册允许的最大号
  
  BEGIN
  /* 扑և注册学生当前号和允许的最大号 */
  
  SELECT current_students, max_students
  
  INTO v_CurrentStudents, v_MaxStudents
  
  FROM classes
  
  WHERE department = 'HIS' AND course = 101;
  
  /* 查学生的?*/
  
  IF v_CurrentStudents > v_MaxStudents THEN
  
  /* 太多的学生注册,则触发例外处?*/
  
  RAISE e_TooManyStudents;
  
  END IF;
  
  EXCEPTION
  
  WHEN e_TooManyStudents THEN
  
  /* 当太多的学生注册Q就插入信息解释发生q错?*/
  
  INSERT INTO log_table (info) VALUES ('History 101 has ' || v_CurrentStudents ||
  
  'students: max allowed is ' || v_MaxStudents);
  
  END;
  
  END;
  
  用户定义的的异常处理
  
  可以使用RAISE_APPLICATION_ERROR来创q错误处理Q?BR>  
  RAISE_APPLICATION_ERROR(error_number,error_message,[keep_errors]);
  
  其中error_number是从-20000?20999之间的参敎ͼerror_message是相应的提示信息Q小?12字节。如Q?BR>  
  CREATE OR REPLACE PROCEDURE Register (
  p_StudentID IN students.id%TYPE,
  p_Department IN classes.department%TYPE,
  p_Course IN classes.course%TYPE) AS
  v_CurrentStudents NUMBER; -- 班上学生的当前号
  v_MaxStudents NUMBER;   -- 班上学生的最大号
  
  BEGIN
  /* 扑և学生的当前号和最大号 */
  SELECT current_students, max_students
  INTO v_CurrentStudents, v_MaxStudents
  FROM classes
  WHERE course = p_Course
  AND department = p_Department;
  
  /* 认另外的学生是否有_的教?/
  IF v_CurrentStudents + 1 > v_MaxStudents THEN
  RAISE_APPLICATION_ERROR(-20000, 'Can''t add more students to ' ||
  p_Department || ' ' || p_Course);
  END IF;
  
  /* 加一个学生在本班 */
  ClassPackage.AddStudent(p_StudentID, p_Department, p_Course);
  
  EXCEPTION
  WHEN NO_DATA_FOUND THEN
  RAISE_APPLICATION_ERROR(-20001, p_Department || ' ' || p_Course ||
  ' doesn''t exist!');
  END Register;
 



konhon 优华 2005-11-29 10:03 发表评论
]]>
Useful SQL reference http://m.tkk7.com/konhon/archive/2005/11/29/21777.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:01:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21777.htmlhttp://m.tkk7.com/konhon/comments/21777.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21777.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21777.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21777.html  
  列在q里做参考,因ؓ太难C?BR>  
  时时更新?BR>  
  1。监控当前数据库谁在q行什么SQL 语句
  

  SELECT osuser, username, sql_text from v$session a, v$sqltext b
  where a.sql_address =b.address order by address, piece;
  
  2。查看碎片程度高的表
  

  SELECT segment_name table_name , COUNT(*) extents
  FROM dba_segments WHERE owner NOT IN ('SYS', 'SYSTEM') GROUP BY segment_name
  HAVING COUNT(*) = (SELECT MAX( COUNT(*) ) FROM dba_segments GROUP BY segment_name);
  
  3。表I间使用状?BR>  
  select a.file_id "FileNo",a.tablespace_name "Tablespace_name",
  round(a.bytes/1024/1024,4) "Total MB",
  round((a.bytes-sum(nvl(b.bytes,0)))/1024/1024,4) "Used MB",
  round(sum(nvl(b.bytes,0))/1024/1024,4) "Free MB",
  round(sum(nvl(b.bytes,0))/a.bytes*100,4) "%Free"
  from dba_data_files a, dba_free_space b
  where a.file_id=b.file_id(+)
  group by a.tablespace_name,
  a.file_id,a.bytes order by a.tablespace_name
  
  4。查看USER
  

  SELECT OSUSER,SERIAL#
  FROM V$SESSION, V$SQL
  WHERE
  V$SESSION.SQL_ADDRESS=V$SQL.ADDRESS AND
  V$SESSION.STATUS = 'ACTIVE';
  
  5。监?SGA 的命中率
  

  select a.value + b.value "logical_reads", c.value "phys_reads",
  round(100 * ((a.value+b.value)-c.value) / (a.value+b.value)) "BUFFER HIT RATIO"
  from v$sysstat a, v$sysstat b, v$sysstat c
  where a.statistic# = 38 and b.statistic# = 39
  and c.statistic# = 40;
  
  6。监?SGA 中字典缓冲区的命中率
  

  select parameter, gets,Getmisses , getmisses/(gets+getmisses)*100 "miss ratio",
  (1-(sum(getmisses)/ (sum(gets)+sum(getmisses))))*100 "Hit ratio"
  from v$rowcache
  where gets+getmisses <>0
  group by parameter, gets, getmisses;
  
  7。监?SGA 中共享缓存区的命中率Q应该小?%
  

  select sum(pinhits-reloads)/sum(pins) "hit radio",sum(reloads)/sum(pins) "reload percent"
  from v$librarycache;
  
  8。监控内存和盘的排序比率,最好它小?.10Q增?sort_area_size
  

  SELECT name, value FROM v$sysstat WHERE name IN ('sorts (memory)', 'sorts (disk)');
  
  9。哪{數據正在被人updateQ而且是被誰正在update
  

  select a.os_user_name, a.oracle_username,a.object_id,c.object_name,c.object_type
  from v$locked_object a, dba_objects c
  where a.object_id=c.object_id

konhon 优华 2005-11-29 10:01 发表评论
]]>
SQL PLUS~辑器的一些常用设|?http://m.tkk7.com/konhon/archive/2005/11/29/21776.htmlkonhon 优华konhon 优华Tue, 29 Nov 2005 02:00:00 GMThttp://m.tkk7.com/konhon/archive/2005/11/29/21776.htmlhttp://m.tkk7.com/konhon/comments/21776.htmlhttp://m.tkk7.com/konhon/archive/2005/11/29/21776.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/21776.htmlhttp://m.tkk7.com/konhon/services/trackbacks/21776.html  
 

  set linedize 150  //每行昄的字W?BR>  set time on    //在提C符前显C系l时?BR>  SQL> set time on
  12:25:08 SQL>
  
  set serveroutput on/off  //输出昄
  set long 200   //每字D|C的字符长度Q如某列的值显CZ完,调次?BR>  col column_name format a10 //昄列的宽度
  
  set linedize 150  //每行昄的字W?BR>  set time on    //在提C符前显C系l时?BR>  SQL> set time on
  12:25:08 SQL>
  
  set serveroutput on/off  //输出昄
  set long 200   //每字D|C的字符长度Q如某列的值显CZ完,调次?BR>  col column_name format a10 //昄列的宽度
  col ename heading 雇员  //别名昄
  
  spool d:\temp\sqlout.txt //输出为文?BR>  spool off
  
  SQL> alter session set NLS_LANGUAGE='AMERICAN'; 改变session的语a昄
  SQL> alter session set NLS_LANGUAGE='SIMPLIFIED CHINESE';
  
  SQL> set timi on //昄提示SQL语句执行所q旉


konhon 优华 2005-11-29 10:00 发表评论
]]>
SQLPLUS命o的用大?/title><link>http://m.tkk7.com/konhon/archive/2005/11/10/19077.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Thu, 10 Nov 2005 00:14:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/11/10/19077.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/19077.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/11/10/19077.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/19077.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/19077.html</trackback:ping><description><![CDATA[<SPAN id=ArticleContent1_ArticleContent1_lblContent>  <P><STRONG>摘录,非本人原?/STRONG></P> <P> <BR>1. 执行一个SQL脚本文g <BR>SQL>start file_name <BR>SQL>@ file_name <BR>我们可以多条sql语句保存在一个文本文件中Q这样当要执行这个文件中的所有的sql语句Ӟ用上面的M命o卛_Q这cM于dos中的批处理?<BR>  <BR>2. 对当前的输入q行~辑 <BR>SQL>edit <BR>  <BR>3. 重新q行上一ơ运行的sql语句 <BR>SQL>/ <BR>  <BR>4. 显C的内容输出到指定文?<BR>SQL> SPOOL file_name <BR>   在屏q上的所有内定w包含在该文g中,包括你输入的sql语句?<BR>  <BR>5. 关闭spool输出 <BR>SQL> SPOOL OFF <BR>   只有关闭spool输出Q才会在输出文g中看到输出的内容?<BR>  </P> <P><BR>6Q显CZ个表的结?<BR>SQL> desc table_name <BR>  <BR>7. COL命oQ?<BR>主要格式化列的显CŞ式?<BR>该命令有许多选项Q具体如下: <BR>COL[UMN] [{ column|expr} [ option ...]] <BR>Option选项可以是如下的子句: <BR>ALI[AS] alias <BR>CLE[AR] <BR>FOLD_A[FTER] <BR>FOLD_B[EFORE] <BR>FOR[MAT] format <BR>HEA[DING] text <BR>JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} <BR>LIKE { expr|alias} <BR>NEWL[INE] <BR>NEW_V[ALUE] variable <BR>NOPRI[NT]|PRI[NT] <BR>NUL[L] text <BR>OLD_V[ALUE] variable <BR>ON|OFF <BR>WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] <BR>  <BR>1). 改变~省的列标题 <BR>COLUMN column_name HEADING column_heading <BR>For example: <BR>Sql>select * from dept; <BR>     DEPTNO DNAME                        LOC <BR>---------- ---------------------------- --------- <BR>         10 ACCOUNTING                   NEW YORK <BR>sql>col  LOC heading location <BR>sql>select * from dept; <BR>    DEPTNO DNAME                        location <BR>--------- ---------------------------- ----------- <BR>        10 ACCOUNTING                   NEW YORK <BR>  <BR>2). 列名ENAME改ؓ新列名EMPLOYEE NAMEq将新列名放在两行上Q?<BR>Sql>select * from emp <BR>Department  name           Salary <BR>---------- ---------- ---------- <BR>         10 aaa                11         <BR>SQL> COLUMN ENAME HEADING ’Employee|Name?<BR>Sql>select * from emp <BR>            Employee <BR>Department  name           Salary <BR>---------- ---------- ----------  <BR>         10 aaa                11 <BR>note: the col heading turn into two lines from one line. <BR>  <BR>3). 改变列的昄长度Q?<BR>FOR[MAT] format <BR>Sql>select empno,ename,job from emp; <BR>      EMPNO ENAME      JOB        <BR>---------- ----------     --------- <BR>       7369 SMITH      CLERK      <BR>       7499 ALLEN      SALESMAN   <BR>7521 WARD       SALESMAN   <BR>Sql> col ename format a40 <BR>      EMPNO ENAME                                    JOB <BR>----------   ----------------------------------------         --------- <BR>       7369 SMITH                                    CLERK <BR>       7499 ALLEN                                    SALESMAN <BR>       7521 WARD                                    SALESMAN <BR>  <BR>4). 讄列标题的寚w方式 <BR>JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} <BR>SQL> col ename justify center <BR>SQL> / <BR>      EMPNO           ENAME                   JOB <BR>----------   ----------------------------------------       --------- <BR>       7369 SMITH                                    CLERK <BR>       7499 ALLEN                                    SALESMAN <BR>7521 WARD                                     SALESMAN <BR>对于NUMBER型的列,列标题缺省在双Q其它类型的列标题缺省在左边 <BR>  <BR>5). 不让一个列昄在屏q上 <BR>NOPRI[NT]|PRI[NT] <BR>SQL> col job noprint <BR>SQL> / <BR>      EMPNO           ENAME <BR>----------     ---------------------------------------- <BR>       7369 SMITH <BR>       7499 ALLEN <BR>7521 WARD <BR>  <BR>6). 格式化NUMBERcd列的昄Q?<BR>SQL> COLUMN SAL FORMAT $99,990 <BR>SQL> / <BR>Employee <BR>Department Name        Salary    Commission <BR>---------- ---------- --------- ---------- <BR>30          ALLEN        $1,600    300 <BR>  <BR>7). 昄列值时Q如果列gؓNULL|用textg替NULL?<BR>COMM NUL[L] text <BR>SQL>COL COMM NUL[L] text <BR>  <BR>8). 讄一个列的回l方?<BR>WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] <BR>        COL1 <BR>-------------------- <BR>HOW ARE YOU? <BR>  <BR>SQL>COL COL1 FORMAT A5 <BR>SQL>COL COL1 WRAPPED <BR>COL1 <BR>----- <BR>HOW A <BR>RE YO <BR>U? <BR>  <BR>SQL> COL COL1 WORD_WRAPPED <BR>COL1 <BR>----- <BR>HOW <BR>ARE <BR>YOU? <BR>  <BR>SQL> COL COL1 WORD_WRAPPED <BR>COL1 <BR>----- <BR>HOW A <BR>  <BR>9). 昄列的当前的显C属性?<BR>SQL> COLUMN column_name <BR>  <BR>10). 所有列的显C属性设为缺省?<BR>SQL> CLEAR COLUMNS <BR>  <BR>8. 屏蔽掉一个列中显C的相同的?<BR>BREAK ON break_column <BR>SQL> BREAK ON DEPTNO <BR>SQL> SELECT DEPTNO, ENAME, SAL <BR>FROM EMP <BR>  WHERE SAL < 2500 <BR>  ORDER BY DEPTNO; <BR>DEPTNO      ENAME         SAL <BR>---------- ----------- --------- <BR>10           CLARK        2450 <BR>MILLER      1300 <BR>20            SMITH       800 <BR>ADAMS       1100 <BR>  <BR>9. 在上面屏蔽掉一个列中显C的相同的值的昄中,每当列值变化时在值变化之前插入n个空行?<BR>BREAK ON break_column SKIP n <BR>  <BR>SQL> BREAK ON DEPTNO SKIP 1 <BR>SQL> / <BR>DEPTNO ENAME SAL <BR>---------- ----------- --------- <BR>10 CLARK 2450 <BR>MILLER 1300 <BR>  <BR>20 SMITH 800 <BR>ADAMS 1100 <BR>  <BR>10. 昄对BREAK的设|?<BR>SQL> BREAK <BR>  <BR>11. 删除6?的设|?<BR>SQL> CLEAR BREAKS <BR>  <BR>12. Set 命oQ?<BR>该命令包含许多子命oQ?<BR>SET system_variable value <BR>system_variable value 可以是如下的子句之一Q?<BR>APPI[NFO]{ON|OFF|text} <BR>ARRAY[SIZE] {15|n} <BR>AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n} <BR>AUTOP[RINT] {ON|OFF} <BR>AUTORECOVERY [ON|OFF] <BR>AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] <BR>BLO[CKTERMINATOR] {.|c} <BR>CMDS[EP] {;|c|ON|OFF} <BR>COLSEP {_|text} <BR>COM[PATIBILITY]{V7|V8|NATIVE} <BR>CON[CAT] {.|c|ON|OFF} <BR>COPYC[OMMIT] {0|n} <BR>COPYTYPECHECK {ON|OFF} <BR>DEF[INE] {&|c|ON|OFF} <BR>DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] <BR>ECHO {ON|OFF} <BR>EDITF[ILE] file_name[.ext] <BR>EMB[EDDED] {ON|OFF} <BR>ESC[APE] {|c|ON|OFF} <BR>FEED[BACK] {6|n|ON|OFF} <BR>FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL} <BR>FLU[SH] {ON|OFF} <BR>HEA[DING] {ON|OFF} <BR>HEADS[EP] {||c|ON|OFF} <BR>INSTANCE [instance_path|LOCAL] <BR>LIN[ESIZE] {80|n} <BR>LOBOF[FSET] {n|1} <BR>LOGSOURCE [pathname] <BR>LONG {80|n} <BR>LONGC[HUNKSIZE] {80|n} <BR>MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL <BR>{ON|OFF}] [PRE[FORMAT] {ON|OFF}] <BR>NEWP[AGE] {1|n|NONE} <BR>NULL text <BR>NUMF[ORMAT] format <BR>NUM[WIDTH] {10|n} <BR>PAGES[IZE] {24|n} <BR>PAU[SE] {ON|OFF|text} <BR>RECSEP {WR[APPED]|EA[CH]|OFF} <BR>RECSEPCHAR {_|c} <BR>SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ <BR>WRAPPED]|TRU[NCATED]}] <BR>SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]} <BR>SHOW[MODE] {ON|OFF} <BR>SQLBL[ANKLINES] {ON|OFF} <BR>SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]} <BR>SQLCO[NTINUE] {> |text} <BR>SQLN[UMBER] {ON|OFF} <BR>SQLPRE[FIX] {#|c} <BR>SQLP[ROMPT] {SQL>|text} <BR>SQLT[ERMINATOR] {;|c|ON|OFF} <BR>SUF[FIX] {SQL|text} <BR>TAB {ON|OFF} <BR>TERM[OUT] {ON|OFF} <BR>TI[ME] {ON|OFF} <BR>TIMI[NG] {ON|OFF} <BR>TRIM[OUT] {ON|OFF} <BR>TRIMS[POOL] {ON|OFF} <BR>UND[ERLINE] {-|c|ON|OFF} <BR>VER[IFY] {ON|OFF} <BR>WRA[P] {ON|OFF} <BR>  <BR>1). 讄当前session是否对修改的数据q行自动提交 <BR>SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} <BR>  <BR>2)Q在用start命o执行一个sql脚本Ӟ是否昄脚本中正在执行的SQL语句 <BR>SQL> SET ECHO {ON|OFF} <BR>  <BR>3).是否昄当前sql语句查询或修改的行数 <BR>SQL> SET FEED[BACK] {6|n|ON|OFF} <BR>   默认只有l果大于6行时才显C结果的行数。如果set feedback 1 Q则不管查询到多行都返回。当为off Ӟ一律不昄查询的行?<BR>  <BR>4).是否昄列标?<BR>SQL> SET HEA[DING] {ON|OFF} <BR>当set heading off Ӟ在每늚上面不显C列标题Q而是以空白行代替 <BR>  <BR>5).讄一行可以容U的字符?<BR>SQL> SET LIN[ESIZE] {80|n} <BR>   如果一行的输出内容大于讄的一行可容纳的字W数Q则折行昄?<BR>  <BR>6).讄与之间的分隔 <BR>SQL> SET NEWP[AGE] {1|n|NONE} <BR>当set newpage 0 Ӟ会在每页的开头有一个小的黑Ҏ?<BR>当set newpage n Ӟ会在和之间隔着n个空行?<BR>当set newpage none Ӟ会在和之间没有Q何间隔?<BR>  <BR>7).昄Ӟ用textg替NULL?<BR>SQL> SET NULL text <BR>  <BR>8).讄一|多少行数 <BR>SQL> SET PAGES[IZE] {24|n} <BR>如果设ؓ0Q则所有的输出内容Zƈ且不昄列标?<BR>  <BR>9).是否昄用DBMS_OUTPUT.PUT_LINE包进行输出的信息?<BR>SQL> SET SERVEROUT[PUT] {ON|OFF}  <BR>在编写存储过E时Q我们有时会用dbms_output.put_line必要的信息输出Q以便对存储q程q行调试Q只有将serveroutput变量设ؓon后,信息才能昄在屏q上?<BR>  <BR>10).当SQL语句的长度大于LINESIZEӞ是否在显C时截取SQL语句?<BR>SQL> SET WRA[P] {ON|OFF} <BR>   当输出的行的长度大于讄的行的长度时Q用set linesize n命o讄Q,当set wrap onӞ输出行的多于的字W会另v一行显C,否则Q会输的多于字W切除,不予昄?<BR>  <BR>11).是否在屏q上昄输出的内容,主要用与SPOOLl合使用?<BR>SQL> SET TERM[OUT] {ON|OFF} <BR>   在用spool命o一个大表中的内容输出到一个文件中Ӟ内容输出在屏幕上会耗费大量的时_讄set termspool off后,则输出的内容只会保存在输出文件中Q不会显C在屏幕上,极大的提高了spool的速度?<BR>  <BR>12).SPOOL输出中每行后面多余的I格L <BR>SQL> SET TRIMS[OUT] {ON|OFF}  <BR>    <BR>13)昄每个sql语句p的执行时?<BR>set TIMING  {ON|OFF} <BR>  <BR>14Q修改sql buffer中的当前行中Q第一个出现的字符?<BR>C[HANGE] /old_value/new_value <BR>SQL> l <BR>   1* select * from dept <BR>SQL> c/dept/emp <BR>   1* select * from emp <BR>  <BR>15Q编辑sql buffer中的sql语句 <BR>EDI[T] <BR>  <BR>16Q显Csql buffer中的sql语句Qlist n昄sql buffer中的Wn行,qɽWn行成为当前行 <BR>L[IST] [n] <BR>  <BR>17Q在sql buffer的当前行下面加一行或多行 <BR>I[NPUT] <BR>  <BR>18Q将指定的文本加到sql buffer的当前行后面 <BR>A[PPEND] <BR>SQL> select deptno, <BR>   2  dname <BR>   3  from dept; <BR>     DEPTNO DNAME <BR>---------- -------------- <BR>         10 ACCOUNTING <BR>         20 RESEARCH <BR>         30 SALES <BR>         40 OPERATIONS <BR>  <BR>SQL> L 2 <BR>   2* dname <BR>SQL> a ,loc <BR>   2* dname,loc <BR>SQL> L <BR>   1  select deptno, <BR>   2  dname,loc <BR>   3* from dept <BR>SQL> / <BR>  <BR>     DEPTNO DNAME          LOC <BR>---------- -------------- ------------- <BR>         10 ACCOUNTING     NEW YORK <BR>         20 RESEARCH       DALLAS <BR>         30 SALES          CHICAGO <BR>         40 OPERATIONS     BOSTON <BR>  <BR>19Q将sql buffer中的sql语句保存C个文件中 <BR>SAVE file_name <BR>  <BR>20Q将一个文件中的sql语句导入到sql buffer?<BR>GET file_name <BR>  <BR>21Q再ơ执行刚才已l执行的sql语句 <BR>RUN <BR>or <BR>/ <BR>  <BR>22Q执行一个存储过E?<BR>EXECUTE procedure_name <BR>  <BR>23Q在sql*plus中连接到指定的数据库 <BR>CONNECT <A href="mailto:user_name/passwd@db_alias">user_name/passwd@db_alias</A> <BR>  <BR>24Q设|每个报表的剙标题 <BR>TTITLE <BR>  <BR>25Q设|每个报表的N标题 <BR>BTITLE <BR>  <BR>26Q写一个注?<BR>REMARK [text] <BR>  <BR>27Q将指定的信息或一个空行输出到屏幕?<BR>PROMPT [text] <BR>  <BR>28Q将执行的过E暂停,{待用户响应后l执?<BR>PAUSE [text] <BR>  <BR>Sql>PAUSE Adjust paper and press RETURN to continue. <BR>  <BR>29Q将一个数据库中的一些数据拷贝到另外一个数据库Q如一个表的数据拷贝到另一个数据库Q?<BR>COPY {FROM database | TO database | FROM database TO database} <BR>{APPEND|CREATE|INSERT|REPLACE} destination_table <BR>[(column, column, column, ...)] USING query <BR>  <BR>sql>COPY FROM <A href="mailto:SCOTT/TIGER@HQ">SCOTT/TIGER@HQ</A> TO <A href="mailto:JOHN/CHROME@WEST">JOHN/CHROME@WEST</A>  <BR>create emp_temp <BR>USING SELECT * FROM EMP <BR>  <BR>30Q不退出sql*plusQ在sql*plus中执行一个操作系l命令: <BR>HOST <BR>  <BR>Sql> host hostname <BR>该命令在windows下可能被支持?<BR>  <BR>31Q在sql*plus中,切换到操作系l命令提C符下,q行操作pȝ命o后,可以再次切换回sql*plusQ?<BR>! <BR>  <BR>sql>! <BR>$hostname <BR>$exit <BR>sql> <BR>  <BR>该命令在windows下不被支持?<BR>  <BR>32Q显Csql*plus命o的帮?<BR>HELP <BR>如何安装帮助文gQ?<BR>Sql>@ ?sqlplusadminhelphlpbld.sql ?sqlplusadminhelphelpus.sql <BR>Sql>help index <BR>  <BR>33Q显Csql*pluspȝ变量的值或sql*plus环境变量的?<BR>Syntax <BR>SHO[W] option <BR>where option represents one of the following terms or clauses: <BR>system_variable <BR>ALL <BR>BTI[TLE] <BR>ERR[ORS] [{FUNCTION|PROCEDURE|PACKAGE|PACKAGE BODY| <BR>TRIGGER|VIEW|TYPE|TYPE BODY} [schema.]name] <BR>LNO <BR>PARAMETERS [parameter_name] <BR>PNO <BR>REL[EASE] <BR>REPF[OOTER] <BR>REPH[EADER] <BR>SGA <BR>SPOO[L] <BR>SQLCODE <BR>TTI[TLE] <BR>USER <BR>  <BR>1) . 昄当前环境变量的| <BR>Show all <BR>  <BR>2) . 昄当前在创建函数、存储过E、触发器、包{对象的错误信息 <BR>Show error <BR>当创Z个函数、存储过E等出错Ӟ变可以用该命令查看在那个地方出错及相应的出错信息Q进行修改后再次q行~译?<BR>  <BR>3) . 昄初始化参数的| <BR>show PARAMETERS [parameter_name] <BR>  <BR>4) . 昄数据库的版本Q?<BR>show REL[EASE] <BR>  <BR>5) . 昄SGA的大?<BR>show SGA <BR>  <BR>6). 昄当前的用户名 <BR>show user </P> <P><BR></P></SPAN><img src ="http://m.tkk7.com/konhon/aggbug/19077.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-11-10 08:14 <a href="http://m.tkk7.com/konhon/archive/2005/11/10/19077.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ZERP理论对Y件中物料“单位”应用分?/title><link>http://m.tkk7.com/konhon/archive/2005/10/24/16544.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Mon, 24 Oct 2005 03:10:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/10/24/16544.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/16544.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/10/24/16544.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/16544.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/16544.html</trackback:ping><description><![CDATA[目前不管是国内的ERP软gQ还是国外的ERP软gQ发展得都比较成熟。它们对于企业业务流E的大致程都能满Q要想自n的ERP软g在市Zh独特的市Z额,q软g是否能解军_L个性化的需求。但对于ERP软g部分重要的基功能设计会影响到客h作能否方ѝ灵zR易懂。本文章对ERP软g中物料(或料品)单位Q从pȝ适用性和集成{方面做一全面的叙q?BR><BR>    <STRONG>一、在ERP软g中单位的U类<BR></STRONG><BR>    在ERP软g中,单位涉及的比较多Q如Q库存单位、销售单位、采购单位、重量单位、基本单位、辅助量单位{。目前许多Y件中都有销售单位、库存单位以及采购单位,q也是Y件本w最基本的需求,对于后面的几U单位强调的不是太多Q但它却能满_L一些特D的需求?BR><BR>   <STRONG> 二、在ERP软g中单位之间的关系<BR><BR></STRONG>    在企业的实际q用中,一个物料在不同的阶D它的单位往往是不同的Q如Q螺母在生使用q程中的单位是“个”,在采购时是“盒”,在库存中的单位是“KG”,他们之间的关pd软g中又是如何体现的呢?目前在国内许多Y件中Q物料的单位信息在不同的H口中进行维护,他们之间的关pM是在相应的模块中得到体现。可能出C下几U不理想的情况:<BR>    单位的字D通过手工输入的方法实玎ͼq样对于一个同L单位如“KG”,在实际维护中不同的部门可能会产生多种情况Q如“kg”、“千克”等Q?BR>    在物料清单(BOMQ设计中Q以“库存单位”作为参照,可如果客L规模比较大情况下中,设计U(负责BOM的设计)往往无法知道“库存单位”,q样在操作方面,无疑有许多困难;<BR>    如果在物料基本信息中“库存单位”、“销售单位”、“采购单位”之间的换算关系l护成固定的比例关系Q这也会引v许多问题。如Q采购单位从“盒”变成了“箱”,则要系l中所有物料的换算关系都要q行改变Q如果不通过后台数据库的扚w修改Q在实际操作中,不推荐客户从后台修改Q可能造成误操作。)Q则无疑增大了工作量Q而且可能出项遗漏的现象;<BR>    至于辅助量单位,在许多Y件中都虚拟的存在Q可在实际运用中存在许多问题。如Q以“米”作Z单位Q以“KG”作助量单位Q在_略l计Ӟ往往仅考虑一下以辅助量做单位的数量即可。如Q线cM品,不同长度的线Q往往可以用不同的“物料号”加以表达,可在_略考虑它的库存数量Ӟ仅用辅助量来考虑p了。可如何实现一个物料用多种辅助量来控制呢?在许多Y件中Q在物料基本信息中,有“是否辅助量”控制的字段Q如果需要,必输入“辅助量单位”,在以后的模块中,无法Ҏq行修改?BR><BR>   <STRONG> 三、解军_位引L问题{略分析<BR></STRONG><BR>    Ҏ我参与设计ERP软gQ以及客L使用效果和经验,针对于上q的问题可以通过以下Ҏ解决Q?BR>    l物料设计一个各部门p的单位——“基本单位”,所有的单位都以此ؓ参照Qƈ通过“单位代码”和“单位名U”来实现单位长度的限Ӟ在国内许多Y件中Q往往无法实现复合单位的维护,如,KG/cI<BR>    设计“单位字典”,所有的单位l一理Qƈl一口径输入Q在其他相应使用地方Q通过“下拉框”Ş式实现单位的l护Q?BR>    设计“单位组”字典,实现单位之间的换关p,在维护物料基本信息时Q选择“单位组”和“单位”;在单位组中设计一个默认的基本单位Q其他单位同它设|固定的换算关系Q这样可以方便维护,在其他单位的l护中,仅显C此物料“单位组”下的各U单位?BR>    通过专门的窗口维护单位之间的换算关系Q解决了如果换单位而引L换算关系全部需要更新的情况Q仅在单位组字段中,Ҏ比例更新即可?BR>    MQ物料单位是ERP软g的一个基本的重要信息Q如果设计不要,会l操作灵zL和pȝ集成斚w带来许多问题。我Ҏ提出一些看法,希望大家提出宝贵意见?BR><!-- #EndEditable --><img src ="http://m.tkk7.com/konhon/aggbug/16544.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-10-24 11:10 <a href="http://m.tkk7.com/konhon/archive/2005/10/24/16544.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORACLE数据库开发经?/title><link>http://m.tkk7.com/konhon/archive/2005/10/17/15740.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Mon, 17 Oct 2005 10:58:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/10/17/15740.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/15740.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/10/17/15740.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/15740.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/15740.html</trackback:ping><description><![CDATA[<FONT face=Verdana>---- ORACLE数据库作为大型数据库理pȝQ近q来一直占有世界上高端数据库的最大䆾额,其强大而完善的数据库管理功能,以及ORACLE公司推陈出新的不断努力,一直成为IT业界瞩目的焦炏V岭x늫的数据库q_采用了ORACLE7.3作ؓ后端q_Q前端选择了ORACLE公司的DEVELOPER 2000 及DESIGNER 2000作ؓ开发工P采用了目前流行的CLIENT/SERVER模式。本人在ORACLEpȝ的开发中Q就ORACLE的整套开发工hZ些自q体会Q供同行参考?<BR><BR>---- 一. ORACLE SQL PLUS 使用技? <BR><BR>---- ①查N复记? <BR><BR>SELECT DRAWING,DSNO FROM EM5_PIPE_PREFAB<BR>WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5<BR>_PIPE_PREFAB D<BR>WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND <BR>EM5_PIPE_PREFAB.DSNO=D.DSNO);<BR>---- 执行上述SQL语句后就可以昄所有DRAWING和DSNO相同且重复的记录?<BR>---- 删除重复记录: <BR><BR>DELETE FROM EM5_PIPE_PREFAB <BR>WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5<BR>_PIPE_PREFAB D<BR>WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND <BR>EM5_PIPE_PREFAB.DSNO=D.DSNO);<BR>---- 执行上述SQL语句后就可以刪除所有DRAWING和DSNO相同且重复的记录?<BR>---- ?快速编译所有视?<BR><BR>---- 当在把数据库倒入到新的服务器上后(数据库重?Q需要将视图重新~译一遍,因ؓ该表I间视图到其它表I间的表的连接会出现问题Q可以利用PL/SQL的语aҎ,快速编译?<BR><BR>SQL >SPOOL ON.SQL<BR>SQL >SELECT ‘ALTER VIEW ‘||TNAME||?BR>COMPILE;?FROM TAB;<BR>SQL >SPOOL OFF<BR>然后执行ON.SQL卛_?BR>SQL >@ON.SQL<BR>当然Q授权和创徏同义词也可以快速进行,如:<BR>SQL >SELECT ‘GRANT SELECT ON ?BR>||TNAME||?TO USERNAME;?FROM TAB;<BR>SQL >SELECT ‘CREATE SYNONYM <BR>‘||TNAME||?FOR USERNAME.’||TNAME||??FROM TAB;<BR><BR>?用外联接提高表连接的查询速度<BR>在作表连?常用于视?Ӟ怋用以下方法来查询数据:<BR>SELECT PAY_NO, PROJECT_NAME<BR>FROM A<BR>WHERE A.PAY_NO NOT IN (SELECT PAY_<BR>NO FROM B WHERE VALUE >=120000);<BR>---- 但是若表A?0000条记录,表B?0000条记录,则要用掉30分钟才能查完Q主要因为NOT IN要进行一条一条的比较Q共需?0000*10000ơ比较后Q才能得到结果。该用外联接后,可以~短?分左右的旉: <BR>SELECT PAY_NO,PROJECT_NAME <BR>FROM A,B<BR>WHERE A.PAY_NO=B.PAY_NO(+)<BR>AND B.PAY_NO IS NULL <BR>AND B.VALUE >=12000;<BR>---- ?怎样d文本型操作系l文?<BR>---- 在PL/SQL 3.3以上的版本中QUTL_FILE包允许用户通过PL/SQLd操作pȝ文g。如下: <BR><BR>DECALRE<BR>FILE_HANDLE UTL_FILE.FILE_TYPE;<BR>BEGIN<BR>FILE_HANDLE:=UTL_FILE.FOPEN(<BR>‘C:\?’TEST.TXT?’A?;<BR>UTL_FILE.PUT_LINE(FILE_HANDLE,?BR>HELLO,IT’S A TEST TXT FILE?;<BR>UTL_FILE.FCLOSE(FILE_HANDLE);<BR>END;<BR>---- 相关UTL_FILE数据库包详细信息可以参见相关资料?/FONT><FONT size=2><FONT face=Verdana> <P><FONT face="verdana, arial, helvetica" size=2><span id="lnrblrl" class=javascript id=text21205 style="FONT-SIZE: 12px">---- ?怎样在数据库触发器中使用列的新g旧?<BR><BR>---- 在数据库触发器中几乎L要用触发器的列|如果某条语句需要某列修改前的|使用:OLD可以了Q用某列修改后的新|?NEW可以了。如:OLD.DEPT_NO,:NEW.DEPT_NO?<BR><BR>---- ?ORACLE DEVELOPER 2000使用技巧: <BR><BR>---- ?改变FORM(FMX模块)q行时的Runform4.5的题? <BR><BR>---- DEVELOPER2000中FMX默认题头为:Developer/2000 Forms Runtime for Windows 95 / NT 你可以改己定义的标题, <BR><BR>---- 1. 在FormU触发器中添加触发WHEN-NEW-FORM-INSTANCE <BR><BR>---- 2. 在此触发器中写如下代码: <BR><BR>set_window_property(FORMS_MDI_WINDOW,TITLE,'POINT<BR>SYSTEM Ƣ迎使用');<BR>---- ?如何隐藏菜单中的window选项: <BR>---- 在创q菜单Ӟ最后选项Lwindow,下面介绍如何L? <BR><BR>---- 1. 创徏一个Menu <BR><BR>---- 2. 在Menu中徏立一个Item,命名为WINDOW?<BR><BR>---- 3. 讄该Item属性如? <BR><BR>----<BR><BR>Menu Item Type:Magic <BR>Command Type:Null <BR>Magic Item:Window <BR>Lable:为空<BR><BR>---- ?怎样创徏动态下拉列表List <BR>---- Developer 2000 中的列表是通过讄相关属性而完成数据项的列表设|的Q但那只是静态的Q有时你惌某项成ؓ动态的列表Q随输入数据的改变而改变,需要动手去~个程序。下面详l介l怎样d: <BR><BR>---- 有块EBOP_CABLE_ACCOUNTQ下有SPECIFICATION数据,当一q入该模块时Q就SPECIFICATION在数据库中存储的值动态显C出来,先在Form4.5中徏立一个PRCEDUREQ命名ؓDYN_LIST: <BR><BR>PROCEDURE DYN_LIST IS<BR>CURSOR C1 IS <BR>SELECT DISTINCT(SPECIFICATION) <BR>FROM EBOP_CABLE_ACCOUNT;<BR>CNT NUMBER;<BR>i NUMBER; <BR>TNAME EBOP_CABLE_<BR>ACCOUNT.SPECIFICATION%TYPE;<BR>BEGIN<BR>CLEAR_LIST('EBOP_CABLE_<BR>ACCOUNT.SPECIFICATION');<BR>SELECT COUNT(DISTINCT<BR>(SPECIFICATION)) INTO CNT FROM EBOP<BR>_CABLE_ACCOUNT;<BR>open C1;<BR>FOR i IN 1..CNT LOOP<BR>FETCH C1 INTO TNAME;<BR>EXIT WHEN C1%NOTFOUND <BR>OR C1%NOTFOUND IS NULL;<BR>ADD_LIST_ELEMENT<BR>('EBOP_CABLE_ACCOUNT<BR>.SPECIFICATION',i,TNAME,TNAME);<BR>END LOOP;<BR>DELETE_LIST_ELEMENT<BR>('EBOP_CABLE_ACCOUNT.SPECIFICATION',CNT+1);<BR>CLOSE C1;<BR>END;<BR>然后在FORM的WHEN-NEW<BR>-FORM-INSTANCE触发子中加入一行:<BR>DYN_LIST;<BR>---- q样一q入该FMXQ就会动态刷新该列表。除此之外,SPECIFICATION数据Ҏ为列表项?<BR>---- ?当显C多条记录且数据特别多Ӟ如何l织录入及显C界? <BR><BR>---- 如上图所C,PRN代码及设备代码在d1(CONTENT?上,其它数据在d2(STACK?上,所有数据项Z个表的列或一个块的数据项。在拉动水^滚动条时或用TAB或敲回R键时Q将看到全部数据V这U排布方法适用于数据项特别多又xC多条记录时用。主要制作顺序ؓQ先建立两个dQ画?(CONTENT?Q画?(STACK?Q然后徏立块Q选画布时用画?Q这h有项都显C在d1上,然后选中除PRN代码及设备代码之外的所有数据项Q选TOOLS菜单下的PROPERTIES选项Q将q些数据的CANVAS属性选ؓd2(STACK?Q然后调整整体位|就可以了?<BR><BR>---- ?如何在FORM的受限触发子中提交保存数?<BR><BR>---- 在FORM中很多触发子是不能用COMMIT WORK语句的,当你在该触发子中使用了UPDATEQDELETE{操作ƈ想立卛_盘时Q就需要COMMIT WORK语句了。首先在服务器端建立DB_SQL_COMMITq个q程(采用ORACLE7.3数据?Q?<BR><BR>PROCEDURE DB_SQL_COMMIT IS<BR>source_cursor integer;<BR>ignore integer;<BR>V7 NUMBER :=2;<BR>BEGIN<BR>source_cursor:=dbms_sql.open_cursor;<BR>dbms_sql.parse(source_cursor,'COMMIT WORK',V7);<BR>ignore:=dbms_sql.execute(source_cursor);<BR>DBMS_SQL.CLOSE_CURSOR(source_cursor);<BR>END;<BR>---- 然后在FORM中该触发子中调用q程DB_SQL_COMMIT;可以了Q当然你可以Ҏ自己需要将该过E加入参敎ͼq样通过参数可以得到执行DML语句的权限?BR><BR></P> <P><FONT face="verdana, arial, helvetica" size=2><span id="txnbxff" class=javascript id=text21206 style="FONT-SIZE: 12px">- ?如何在FORM中实现某数据自动按记录序号加一操作 <BR><BR>---- 讑֝名ؓVO,要操作的数据ؓVO_ID,在该块中建立块触发子WHEN-CREATE- RECORDQ加入如下代码: <BR><BR>:VO_ID:=:System.Trigger_Record;<BR>---- q样每当生成新记录时VO_ID׃自动加一了?<BR>---- ?如何在一个FORM中调用另一个FORMQ或在一个块中调用另一个块时显C特定的记录有时用户会要求在调用另一个FORMӞ只显C相关的记录QD例如下,在一个FORM的块中有一个按钮,在按钮触发子中加入如下代码: <BR><BR>DECLARE<BR>PM <BR>PARAMLIST;<BR>BEGIN<BR>PM:=GET_PARAMETER_LIST('PM');<BR>IF NOT ID_NULL(PM) THEN<BR>DESTROY_PARAMETER_LIST('PM');<BR>END IF;<BR>PM:=CREATE_PARAMETER_LIST('PM');<BR>......................<BR>ADD_PARAMETER(PM,'THE_WHERE',<BR>TEXT_PARAMETER,'EM_NAME=''EM4'' <BR>AND EM_PROJECT_NAME=''支架预制''');<BR>OPEN_FORM('PAYMENT',ACTIVATE,SESSION,PM);<BR>ENDQ?BR>---- 其中EM_NAMEQEM_PROJECT_NAME为本FORM某块的数据项QPAYMENT调用的FORM模块。这样通过传递参数列表就可以得到惌的结果。在FORM PAYMENT.FMB中,建立一参数THE_WHEREQCHAR型,?000Q然后在PAYMENT.FMB中徏立FORMU触发子WHEN-NEW-FORM-INSTANCEQ在该触发子中加入以下语句: <BR>IF :PARAMETER.THE_WHERE IS NOT NULL THEN<BR>SET_BLOCK_PROPERTY('PAYMENT',<BR>DEFAULT_WHERE,:PARAMETER.THE_WHERE);<BR>END IF;<BR>---- 其中PAYMENT昄的块Q这样通过参数传递就得到惌的某些特定条件的数据了?<BR>---- ?在FORM中当有主从块Ӟq箋输入记录如何避免被不断的提示保存Q?<BR><BR>---- 每输入一条主记录和若q条该主记录的从记录后,此时再导航到d输下一条记录,FORM׃提示你是否要保存记录Q而你q不希望FORM提示Q让它自动保存,此时你可以到Program Units中找到过EPROCEDURE Clear_All_Master_DetailsQ然后在q个q程中找到语?<BR><BR>Clear_Block(ASK_COMMIT); <BR>---- 其改ؓClear_Block(DO_COMMIT);可以了?<BR>---- ?在Report开始时选择排序? <BR><BR>---- 在报表开始的Parameter Form中选择报表按哪个数据项排序Q?<BR><BR>---- 1. 先在USER PARAMETER 中创建SORT参数Qؓ字符型,?0?<BR><BR>---- 2. 初始值选’责L?然后这四个D入到DATA SELECTION中,形成列表?<BR><BR>---- 3. 然后处理QUERY中的SQL语句: <BR><BR>select CHARGER,FCO_NO,EM_NAME,FCO<BR>_NO,DESCRIPTION, FCR_POINT <BR>from FCR_MAIN <BR>ORDER BY DECODE(:SORT,'责Q?,CHARGER,'FCO?,<BR>FCO_NO,'FCR?,FCR_NO,'FCR?,EM_NAME)<BR><BR><span id="frlhjjr" class=javascript id=text21207 style="FONT-SIZE: 12px">---- ?在Developer 2000中如何读写操作系l文?<BR>---- 在用Developer 2000的开发工具开发应用程序时Q经常碰到需要读写外部文件的问题Q可以用ORACLE 带的包TEXT_IO来完成这w求。例? <BR><BR>DECLARE<BR>IN_FILE TEXT_IO.FILE_TYPE;<BR>OUT_FILE TEXT_IO.FILE_TYPE;<BR>LINE_BUFER VARCHAR2(80); <BR>/*若不用IN_FILE,可以各字段联接在一赯值给此变?/<BR>BEGIN<BR>IN_FILE:=TEXT_IO.FOPEN<BR>(‘C:\TEMP\TEST1.TXT?’r?;<BR>OUT_FILE:=TEXT_IO.FOPEN<BR>(‘C:\TEMP\TEST2.TXT?’w+?;<BR>LOOP<BR>TEXT_IO.GET_LINE(IN_FILE,LINE_BUFER);<BR>TEXT_IO.PUT(LINE_BUFER);<BR>TEXT_IO.NEW_LINE;<BR>TEXT_IO.PUT_LINE(OUT_FILE,LINE_BUFER);<BR>END LOOP;<BR>EXCEPTION<BR>WHEN no_data_found THEN<BR>TEXT_IO.PUT_LINE(‘CLOSING THE FILE ,PLEASE WAITING....?;<BR>TEXT_IO.FCLOSE(IN_FILE);<BR>TEXT_IO.FCLOSE(OUT_FILE);<BR>END;<BR>---- ?数据库管?<BR><BR>---- ?在删除一个表中的全部数据ӞM用TRUNCATE TABLE 表名;因ؓ用DROP TABLEQDELETE * FROM 表名ӞTABLESPACE表空间该表的占用I间q未释放Q反复几ơDROPQDELETE操作后,该TABLESPACE上百兆的I间p耗光了?<BR><BR>---- ?数据库文件的UdҎ <BR><BR>---- 当想数据库文gUd到另外一个目录下Ӟ可以用ALTER DATABASE命o来移?比ALTER TABLESPACE适用性强)Q?<BR><BR>---- 1. 使用SERVER MANAGER关闭实例. <BR><BR>SVRMGR > connect internal;<BR>SVRMGR > shutdown;<BR>SVRMGR >exit;<BR>---- 2. 使用操作pȝ命o来移动数据库文g位置(假设q里操作pȝ为SOLARIS 2.6). 在UNIX中用 mv命o可以把文件移动到新的位置Q?<BR><BR>#mv /ora13/orarun/document.dbf /ora12/orarun<BR>---- 3. 装蝲数据库ƈ用alter database命o来改变数据库中的文g? <BR>SVRMGR > connect internal;<BR>SVRMGR > startup mount RUN73;<BR>SVRMGR > alter database rename file<BR>> ? ora13/orarun/document.dbf?BR>> ? ora12/orarun/document.dbf?<BR>---- 4. 启动实例. <BR><BR>SVRMGR > alter database open;<BR></SPAN></SPAN></FONT></P></SPAN></FONT></FONT></FONT><img src ="http://m.tkk7.com/konhon/aggbug/15740.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-10-17 18:58 <a href="http://m.tkk7.com/konhon/archive/2005/10/17/15740.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORACLE数据库开发经?/title><link>http://m.tkk7.com/konhon/archive/2005/10/17/15741.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Mon, 17 Oct 2005 10:58:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/10/17/15741.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/15741.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/10/17/15741.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/15741.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/15741.html</trackback:ping><description><![CDATA[<FONT face=Verdana>---- ORACLE数据库作为大型数据库理pȝQ近q来一直占有世界上高端数据库的最大䆾额,其强大而完善的数据库管理功能,以及ORACLE公司推陈出新的不断努力,一直成为IT业界瞩目的焦炏V岭x늫的数据库q_采用了ORACLE7.3作ؓ后端q_Q前端选择了ORACLE公司的DEVELOPER 2000 及DESIGNER 2000作ؓ开发工P采用了目前流行的CLIENT/SERVER模式。本人在ORACLEpȝ的开发中Q就ORACLE的整套开发工hZ些自q体会Q供同行参考?<BR><BR>---- 一. ORACLE SQL PLUS 使用技? <BR><BR>---- ①查N复记? <BR><BR>SELECT DRAWING,DSNO FROM EM5_PIPE_PREFAB<BR>WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5<BR>_PIPE_PREFAB D<BR>WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND <BR>EM5_PIPE_PREFAB.DSNO=D.DSNO);<BR>---- 执行上述SQL语句后就可以昄所有DRAWING和DSNO相同且重复的记录?<BR>---- 删除重复记录: <BR><BR>DELETE FROM EM5_PIPE_PREFAB <BR>WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5<BR>_PIPE_PREFAB D<BR>WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND <BR>EM5_PIPE_PREFAB.DSNO=D.DSNO);<BR>---- 执行上述SQL语句后就可以刪除所有DRAWING和DSNO相同且重复的记录?<BR>---- ?快速编译所有视?<BR><BR>---- 当在把数据库倒入到新的服务器上后(数据库重?Q需要将视图重新~译一遍,因ؓ该表I间视图到其它表I间的表的连接会出现问题Q可以利用PL/SQL的语aҎ,快速编译?<BR><BR>SQL >SPOOL ON.SQL<BR>SQL >SELECT ‘ALTER VIEW ‘||TNAME||?BR>COMPILE;?FROM TAB;<BR>SQL >SPOOL OFF<BR>然后执行ON.SQL卛_?BR>SQL >@ON.SQL<BR>当然Q授权和创徏同义词也可以快速进行,如:<BR>SQL >SELECT ‘GRANT SELECT ON ?BR>||TNAME||?TO USERNAME;?FROM TAB;<BR>SQL >SELECT ‘CREATE SYNONYM <BR>‘||TNAME||?FOR USERNAME.’||TNAME||??FROM TAB;<BR><BR>?用外联接提高表连接的查询速度<BR>在作表连?常用于视?Ӟ怋用以下方法来查询数据:<BR>SELECT PAY_NO, PROJECT_NAME<BR>FROM A<BR>WHERE A.PAY_NO NOT IN (SELECT PAY_<BR>NO FROM B WHERE VALUE >=120000);<BR>---- 但是若表A?0000条记录,表B?0000条记录,则要用掉30分钟才能查完Q主要因为NOT IN要进行一条一条的比较Q共需?0000*10000ơ比较后Q才能得到结果。该用外联接后,可以~短?分左右的旉: <BR>SELECT PAY_NO,PROJECT_NAME <BR>FROM A,B<BR>WHERE A.PAY_NO=B.PAY_NO(+)<BR>AND B.PAY_NO IS NULL <BR>AND B.VALUE >=12000;<BR>---- ?怎样d文本型操作系l文?<BR>---- 在PL/SQL 3.3以上的版本中QUTL_FILE包允许用户通过PL/SQLd操作pȝ文g。如下: <BR><BR>DECALRE<BR>FILE_HANDLE UTL_FILE.FILE_TYPE;<BR>BEGIN<BR>FILE_HANDLE:=UTL_FILE.FOPEN(<BR>‘C:\?’TEST.TXT?’A?;<BR>UTL_FILE.PUT_LINE(FILE_HANDLE,?BR>HELLO,IT’S A TEST TXT FILE?;<BR>UTL_FILE.FCLOSE(FILE_HANDLE);<BR>END;<BR>---- 相关UTL_FILE数据库包详细信息可以参见相关资料?/FONT><FONT size=2><FONT face=Verdana> <P><FONT face="verdana, arial, helvetica" size=2><span id="ztnhbvz" class=javascript id=text21205 style="FONT-SIZE: 12px">---- ?怎样在数据库触发器中使用列的新g旧?<BR><BR>---- 在数据库触发器中几乎L要用触发器的列|如果某条语句需要某列修改前的|使用:OLD可以了Q用某列修改后的新|?NEW可以了。如:OLD.DEPT_NO,:NEW.DEPT_NO?<BR><BR>---- ?ORACLE DEVELOPER 2000使用技巧: <BR><BR>---- ?改变FORM(FMX模块)q行时的Runform4.5的题? <BR><BR>---- DEVELOPER2000中FMX默认题头为:Developer/2000 Forms Runtime for Windows 95 / NT 你可以改己定义的标题, <BR><BR>---- 1. 在FormU触发器中添加触发WHEN-NEW-FORM-INSTANCE <BR><BR>---- 2. 在此触发器中写如下代码: <BR><BR>set_window_property(FORMS_MDI_WINDOW,TITLE,'POINT<BR>SYSTEM Ƣ迎使用');<BR>---- ?如何隐藏菜单中的window选项: <BR>---- 在创q菜单Ӟ最后选项Lwindow,下面介绍如何L? <BR><BR>---- 1. 创徏一个Menu <BR><BR>---- 2. 在Menu中徏立一个Item,命名为WINDOW?<BR><BR>---- 3. 讄该Item属性如? <BR><BR>----<BR><BR>Menu Item Type:Magic <BR>Command Type:Null <BR>Magic Item:Window <BR>Lable:为空<BR><BR>---- ?怎样创徏动态下拉列表List <BR>---- Developer 2000 中的列表是通过讄相关属性而完成数据项的列表设|的Q但那只是静态的Q有时你惌某项成ؓ动态的列表Q随输入数据的改变而改变,需要动手去~个程序。下面详l介l怎样d: <BR><BR>---- 有块EBOP_CABLE_ACCOUNTQ下有SPECIFICATION数据,当一q入该模块时Q就SPECIFICATION在数据库中存储的值动态显C出来,先在Form4.5中徏立一个PRCEDUREQ命名ؓDYN_LIST: <BR><BR>PROCEDURE DYN_LIST IS<BR>CURSOR C1 IS <BR>SELECT DISTINCT(SPECIFICATION) <BR>FROM EBOP_CABLE_ACCOUNT;<BR>CNT NUMBER;<BR>i NUMBER; <BR>TNAME EBOP_CABLE_<BR>ACCOUNT.SPECIFICATION%TYPE;<BR>BEGIN<BR>CLEAR_LIST('EBOP_CABLE_<BR>ACCOUNT.SPECIFICATION');<BR>SELECT COUNT(DISTINCT<BR>(SPECIFICATION)) INTO CNT FROM EBOP<BR>_CABLE_ACCOUNT;<BR>open C1;<BR>FOR i IN 1..CNT LOOP<BR>FETCH C1 INTO TNAME;<BR>EXIT WHEN C1%NOTFOUND <BR>OR C1%NOTFOUND IS NULL;<BR>ADD_LIST_ELEMENT<BR>('EBOP_CABLE_ACCOUNT<BR>.SPECIFICATION',i,TNAME,TNAME);<BR>END LOOP;<BR>DELETE_LIST_ELEMENT<BR>('EBOP_CABLE_ACCOUNT.SPECIFICATION',CNT+1);<BR>CLOSE C1;<BR>END;<BR>然后在FORM的WHEN-NEW<BR>-FORM-INSTANCE触发子中加入一行:<BR>DYN_LIST;<BR>---- q样一q入该FMXQ就会动态刷新该列表。除此之外,SPECIFICATION数据Ҏ为列表项?<BR>---- ?当显C多条记录且数据特别多Ӟ如何l织录入及显C界? <BR><BR>---- 如上图所C,PRN代码及设备代码在d1(CONTENT?上,其它数据在d2(STACK?上,所有数据项Z个表的列或一个块的数据项。在拉动水^滚动条时或用TAB或敲回R键时Q将看到全部数据V这U排布方法适用于数据项特别多又xC多条记录时用。主要制作顺序ؓQ先建立两个dQ画?(CONTENT?Q画?(STACK?Q然后徏立块Q选画布时用画?Q这h有项都显C在d1上,然后选中除PRN代码及设备代码之外的所有数据项Q选TOOLS菜单下的PROPERTIES选项Q将q些数据的CANVAS属性选ؓd2(STACK?Q然后调整整体位|就可以了?<BR><BR>---- ?如何在FORM的受限触发子中提交保存数?<BR><BR>---- 在FORM中很多触发子是不能用COMMIT WORK语句的,当你在该触发子中使用了UPDATEQDELETE{操作ƈ想立卛_盘时Q就需要COMMIT WORK语句了。首先在服务器端建立DB_SQL_COMMITq个q程(采用ORACLE7.3数据?Q?<BR><BR>PROCEDURE DB_SQL_COMMIT IS<BR>source_cursor integer;<BR>ignore integer;<BR>V7 NUMBER :=2;<BR>BEGIN<BR>source_cursor:=dbms_sql.open_cursor;<BR>dbms_sql.parse(source_cursor,'COMMIT WORK',V7);<BR>ignore:=dbms_sql.execute(source_cursor);<BR>DBMS_SQL.CLOSE_CURSOR(source_cursor);<BR>END;<BR>---- 然后在FORM中该触发子中调用q程DB_SQL_COMMIT;可以了Q当然你可以Ҏ自己需要将该过E加入参敎ͼq样通过参数可以得到执行DML语句的权限?BR><BR></P> <P><FONT face="verdana, arial, helvetica" size=2><span id="dlxbdbz" class=javascript id=text21206 style="FONT-SIZE: 12px">- ?如何在FORM中实现某数据自动按记录序号加一操作 <BR><BR>---- 讑֝名ؓVO,要操作的数据ؓVO_ID,在该块中建立块触发子WHEN-CREATE- RECORDQ加入如下代码: <BR><BR>:VO_ID:=:System.Trigger_Record;<BR>---- q样每当生成新记录时VO_ID׃自动加一了?<BR>---- ?如何在一个FORM中调用另一个FORMQ或在一个块中调用另一个块时显C特定的记录有时用户会要求在调用另一个FORMӞ只显C相关的记录QD例如下,在一个FORM的块中有一个按钮,在按钮触发子中加入如下代码: <BR><BR>DECLARE<BR>PM <BR>PARAMLIST;<BR>BEGIN<BR>PM:=GET_PARAMETER_LIST('PM');<BR>IF NOT ID_NULL(PM) THEN<BR>DESTROY_PARAMETER_LIST('PM');<BR>END IF;<BR>PM:=CREATE_PARAMETER_LIST('PM');<BR>......................<BR>ADD_PARAMETER(PM,'THE_WHERE',<BR>TEXT_PARAMETER,'EM_NAME=''EM4'' <BR>AND EM_PROJECT_NAME=''支架预制''');<BR>OPEN_FORM('PAYMENT',ACTIVATE,SESSION,PM);<BR>ENDQ?BR>---- 其中EM_NAMEQEM_PROJECT_NAME为本FORM某块的数据项QPAYMENT调用的FORM模块。这样通过传递参数列表就可以得到惌的结果。在FORM PAYMENT.FMB中,建立一参数THE_WHEREQCHAR型,?000Q然后在PAYMENT.FMB中徏立FORMU触发子WHEN-NEW-FORM-INSTANCEQ在该触发子中加入以下语句: <BR>IF :PARAMETER.THE_WHERE IS NOT NULL THEN<BR>SET_BLOCK_PROPERTY('PAYMENT',<BR>DEFAULT_WHERE,:PARAMETER.THE_WHERE);<BR>END IF;<BR>---- 其中PAYMENT昄的块Q这样通过参数传递就得到惌的某些特定条件的数据了?<BR>---- ?在FORM中当有主从块Ӟq箋输入记录如何避免被不断的提示保存Q?<BR><BR>---- 每输入一条主记录和若q条该主记录的从记录后,此时再导航到d输下一条记录,FORM׃提示你是否要保存记录Q而你q不希望FORM提示Q让它自动保存,此时你可以到Program Units中找到过EPROCEDURE Clear_All_Master_DetailsQ然后在q个q程中找到语?<BR><BR>Clear_Block(ASK_COMMIT); <BR>---- 其改ؓClear_Block(DO_COMMIT);可以了?<BR>---- ?在Report开始时选择排序? <BR><BR>---- 在报表开始的Parameter Form中选择报表按哪个数据项排序Q?<BR><BR>---- 1. 先在USER PARAMETER 中创建SORT参数Qؓ字符型,?0?<BR><BR>---- 2. 初始值选’责L?然后这四个D入到DATA SELECTION中,形成列表?<BR><BR>---- 3. 然后处理QUERY中的SQL语句: <BR><BR>select CHARGER,FCO_NO,EM_NAME,FCO<BR>_NO,DESCRIPTION, FCR_POINT <BR>from FCR_MAIN <BR>ORDER BY DECODE(:SORT,'责Q?,CHARGER,'FCO?,<BR>FCO_NO,'FCR?,FCR_NO,'FCR?,EM_NAME)<BR><BR><span id="fhrlxdb" class=javascript id=text21207 style="FONT-SIZE: 12px">---- ?在Developer 2000中如何读写操作系l文?<BR>---- 在用Developer 2000的开发工具开发应用程序时Q经常碰到需要读写外部文件的问题Q可以用ORACLE 带的包TEXT_IO来完成这w求。例? <BR><BR>DECLARE<BR>IN_FILE TEXT_IO.FILE_TYPE;<BR>OUT_FILE TEXT_IO.FILE_TYPE;<BR>LINE_BUFER VARCHAR2(80); <BR>/*若不用IN_FILE,可以各字段联接在一赯值给此变?/<BR>BEGIN<BR>IN_FILE:=TEXT_IO.FOPEN<BR>(‘C:\TEMP\TEST1.TXT?’r?;<BR>OUT_FILE:=TEXT_IO.FOPEN<BR>(‘C:\TEMP\TEST2.TXT?’w+?;<BR>LOOP<BR>TEXT_IO.GET_LINE(IN_FILE,LINE_BUFER);<BR>TEXT_IO.PUT(LINE_BUFER);<BR>TEXT_IO.NEW_LINE;<BR>TEXT_IO.PUT_LINE(OUT_FILE,LINE_BUFER);<BR>END LOOP;<BR>EXCEPTION<BR>WHEN no_data_found THEN<BR>TEXT_IO.PUT_LINE(‘CLOSING THE FILE ,PLEASE WAITING....?;<BR>TEXT_IO.FCLOSE(IN_FILE);<BR>TEXT_IO.FCLOSE(OUT_FILE);<BR>END;<BR>---- ?数据库管?<BR><BR>---- ?在删除一个表中的全部数据ӞM用TRUNCATE TABLE 表名;因ؓ用DROP TABLEQDELETE * FROM 表名ӞTABLESPACE表空间该表的占用I间q未释放Q反复几ơDROPQDELETE操作后,该TABLESPACE上百兆的I间p耗光了?<BR><BR>---- ?数据库文件的UdҎ <BR><BR>---- 当想数据库文gUd到另外一个目录下Ӟ可以用ALTER DATABASE命o来移?比ALTER TABLESPACE适用性强)Q?<BR><BR>---- 1. 使用SERVER MANAGER关闭实例. <BR><BR>SVRMGR > connect internal;<BR>SVRMGR > shutdown;<BR>SVRMGR >exit;<BR>---- 2. 使用操作pȝ命o来移动数据库文g位置(假设q里操作pȝ为SOLARIS 2.6). 在UNIX中用 mv命o可以把文件移动到新的位置Q?<BR><BR>#mv /ora13/orarun/document.dbf /ora12/orarun<BR>---- 3. 装蝲数据库ƈ用alter database命o来改变数据库中的文g? <BR>SVRMGR > connect internal;<BR>SVRMGR > startup mount RUN73;<BR>SVRMGR > alter database rename file<BR>> ? ora13/orarun/document.dbf?BR>> ? ora12/orarun/document.dbf?<BR>---- 4. 启动实例. <BR><BR>SVRMGR > alter database open;<BR></SPAN></SPAN></FONT></P></SPAN></FONT></FONT></FONT><img src ="http://m.tkk7.com/konhon/aggbug/15741.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-10-17 18:58 <a href="http://m.tkk7.com/konhon/archive/2005/10/17/15741.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>也许你还不知?- sqlplus的小U密(4) http://m.tkk7.com/konhon/archive/2005/10/17/15738.htmlkonhon 优华konhon 优华Mon, 17 Oct 2005 10:53:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/17/15738.htmlhttp://m.tkk7.com/konhon/comments/15738.htmlhttp://m.tkk7.com/konhon/archive/2005/10/17/15738.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/15738.htmlhttp://m.tkk7.com/konhon/services/trackbacks/15738.html也许你还不知?- sqlplus的小U密(4)

q个也许不算什么秘? 很多人大概都知道, 不过用过的h也许不多.

?.1.7版本(也许?16? 不太定)以后, sql*plus中有一个set markup html的命? 可以sql*plus的输Zhtml格式展现.


scott@O9I.US.ORACLE.COM> set markup html on spool on
">scott@O9I.US.ORACLE.COM&gt; select empno, ename from emp where rownum<3;
<br>
<p>
<table border='1' width='90%' align='center' summary='Script output'>
<tr>
<th scope="col">
EMPNO
</th>
<th scope="col">
ENAME
</th>
</tr>
<tr>
<td align="right">
7369
</td>
<td>
SMITH
</td>
</tr>
<tr>
<td align="right">
7499
</td>
<td>
ALLEN
</td>
</tr>
</table>
<p>

注意其中的spool on, 当在屏幕上输出的时? 我们看不Z不加spool on有什么区? 但是当我们用spool filename 输出到文件的时? 会看到spool文g中出C<html><body>{tag.

">scott@O9I.US.ORACLE.COM&gt; spool c:emp.htm
<br>
">scott@O9I.US.ORACLE.COM&gt; /
<br>
<p>
<table border='1' width='90%' align='center' summary='Script output'>
......此处省略

">scott@O9I.US.ORACLE.COM&gt; spool off
<br>

查看生成的emp.htm文g的内?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=WINDOWS-936">
<meta name="generator" content="SQL*Plus 9.2.0">
<style type='text/css'> body {font:10pt Arial,Helvetica,sans-serif; color:black; background:White;} p {font:10pt Arial,Helvetica,sans-serif; color:black; background:White;} table,tr,td {font:10pt Arial,Helvetica,sans-serif; color:Black; background:#f7f7e7; padding:0px 0px 0px 0px; margin:0px 0px 0px 0px;} th {font:bold 10pt Arial,Helvetica,sans-serif; color:#336699; background:#cccc99; padding:0px 0px 0px 0px;} h1 {font:16pt Arial,Helvetica,Geneva,sans-serif; color:#336699; background-color:White; border-bottom:1px solid #cccc99; margin-top:0pt; margin-bottom:0pt; padding:0px 0px 0px 0px;} h2 {font:bold 10pt Arial,Helvetica,Geneva,sans-serif; color:#336699; background-color:White; margin-top:4pt; margin-bottom:0pt;} a {font:9pt Arial,Helvetica,sans-serif; color:#663300; background:#ffffff; margin-top:0pt; margin-bottom:0pt; vertical-align:top;}</style><title>SQL*Plus Report</title>
</head>
<body>
">scott@O9I.US.ORACLE.COM&gt; /
<br>
<p>
<table border='1' width='90%' align='center' summary='Script output'>
<tr>
<th scope="col">
EMPNO
</th>
<th scope="col">
ENAME
</th>
</tr>
<tr>
<td align="right">
7369
</td>
<td>
SMITH
</td>
</tr>
<tr>
<td align="right">
7499
</td>
<td>
ALLEN
</td>
</tr>
</table>
<p>

">scott@O9I.US.ORACLE.COM&gt; spool off
<br>
</body>
</html>

用ie打开emp.htm文g后的样式如下:

现在看看spool off的情况下:

">scott@O9I.US.ORACLE.COM&gt; set markup html on spool off
<br>
">scott@O9I.US.ORACLE.COM&gt; spool c:emp2.htm
<br>
">scott@O9I.US.ORACLE.COM&gt; /
<br>
<p>
<table border='1' width='90%' align='center' summary='Script outpu
......此处省略
">scott@O9I.US.ORACLE.COM&gt; spool off
<br>
">scott@O9I.US.ORACLE.COM&gt;

查看生成的emp2.htm文g的内?

">scott@O9I.US.ORACLE.COM&gt; /
<br>
<p>
<table border='1' width='90%' align='center' summary='Script output'>
<tr>
<th scope="col">
EMPNO
</th>
<th scope="col">
ENAME
</th>
</tr>
<tr>
<td align="right">
7369
</td>
<td>
SMITH
</td>
</tr>
<tr>
<td align="right">
7499
</td>
<td>
ALLEN
</td>
</tr>
</table>
<p>

">scott@O9I.US.ORACLE.COM&gt; spool off

׃q段代码中没有html文g? 所以我们可以直接作为内Ҏ入到|页? 现在我们可以把q段代码攑ֈ下面作ؓCZ:

EMPNO ENAME
7369 SMITH
7499 ALLEN

ȝ: 如果要生成一个完整的html文g, ׃用spool on选项, 如果只是要内定w?用来dC个现有的|页?, 那么׃用spool off选项.

另外, set markup htmlq有很多选项可以用来定制生成的html的各个部? 例如head, body, table{? q里不再逐一说明, 详细信息可以参考SQL*Plus User's Guide and Reference.

适用场景: 当需要定时更C个从数据库中获取内容的静态页面时, q种Ҏl对是快Lq且Ҏ实现?



konhon 优华 2005-10-17 18:53 发表评论
]]>
也许你还不知?- sqlplus的小U密(3) http://m.tkk7.com/konhon/archive/2005/10/17/15737.htmlkonhon 优华konhon 优华Mon, 17 Oct 2005 10:52:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/17/15737.htmlhttp://m.tkk7.com/konhon/comments/15737.htmlhttp://m.tkk7.com/konhon/archive/2005/10/17/15737.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/15737.htmlhttp://m.tkk7.com/konhon/services/trackbacks/15737.html有没有过q样的经? 在sql*plus中敲了很长的命o? H然发现想不h个列的名字了, 如果取消当前的命?待查询后再重? 那太痛苦? 当然你可以另开一个sql*plusH口q行查询, 但这里提供的Ҏ更简?

比如? 你想查工资大?000的员工的信息, 输入了下面的语句:

scott@O9I.US.ORACLE.COM> select deptno,
  2  empno,
  3  ename
  4  from emp
  5  where

q时, 你发C想不h工资的列名是什么了.

q种情况? 只要在下一行以#开? 可以执行一条sql*plus命o, 执行完后, 刚才的语句可以l输?

scott@O9I.US.ORACLE.COM> select deptno,
  2  empno,
  3  ename
  4  from emp
  5  where
  6  #desc emp
Name Null? Type ----------------------------------------- -------- -------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2) 6 sal > 4000; DEPTNO EMPNO ENAME ---------- ---------- ---------- 10 7839 KING


konhon 优华 2005-10-17 18:52 发表评论
]]>
也许你还不知?- sqlplus的小U密(2) http://m.tkk7.com/konhon/archive/2005/10/17/15736.htmlkonhon 优华konhon 优华Mon, 17 Oct 2005 10:48:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/17/15736.htmlhttp://m.tkk7.com/konhon/comments/15736.htmlhttp://m.tkk7.com/konhon/archive/2005/10/17/15736.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/15736.htmlhttp://m.tkk7.com/konhon/services/trackbacks/15736.htmlSql*plus? 不允许sql语句中间有空? q在从其它地Ҏ贝脚本到sql*plus中执行时很麻? 比如下面的脚?

select deptno, empno, ename
from emp

where empno = '7788';

如果拯到sql*plus中执? ׃出现错误:


scott@O9I.US.ORACLE.COM> select deptno, empno, ename
  2  from emp
  3
where empno = '7788';
SP2-0734: unknown command beginning "where empn..." - rest of line ignored.

原因是sqlplus遇到Ip为是语句l束?
其实要改变这U现? 只要使用SQLBLANKLINES参数可以了.

scott@O9I.US.ORACLE.COM> SET SQLBLANKLINES ON
scott@O9I.US.ORACLE.COM>
scott@O9I.US.ORACLE.COM> select deptno, empno, ename
  2  from emp
  3
  4  where empno = '7788';

    DEPTNO      EMPNO ENAME
---------- ---------- ----------
        20       7788 SCOTT



konhon 优华 2005-10-17 18:48 发表评论
]]>
也许你还不知?- sqlplus的小U密(1) http://m.tkk7.com/konhon/archive/2005/10/17/15735.htmlkonhon 优华konhon 优华Mon, 17 Oct 2005 10:47:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/17/15735.htmlhttp://m.tkk7.com/konhon/comments/15735.htmlhttp://m.tkk7.com/konhon/archive/2005/10/17/15735.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/15735.htmlhttp://m.tkk7.com/konhon/services/trackbacks/15735.html有没有ؓ了dbms_output.put_line?吃掉"最前面的空D苦?

scott@O9I.US.ORACLE.COM> set serveroutput on
scott@O9I.US.ORACLE.COM> exec dbms_output.put_line('   abc');
abc

PL/SQL procedure successfully completed.


(Z前曾l很苦恼Z保留I格, 试了加".", 加不可见字符{办? 不过l究觉得不自?
实际? 只要在set serveroutput on后加上format wrapped参数, 可以避免这个问?/P>

scott@O9I.US.ORACLE.COM> set serveroutput on format wrapped
scott@O9I.US.ORACLE.COM> exec dbms_output.put_line('   abc');
   abc

PL/SQL procedure successfully completed.


konhon 优华 2005-10-17 18:47 发表评论
]]>
Oracle中大扚w删除数据的方?/title><link>http://m.tkk7.com/konhon/archive/2005/10/17/15732.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Mon, 17 Oct 2005 10:20:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/10/17/15732.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/15732.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/10/17/15732.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/15732.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/15732.html</trackback:ping><description><![CDATA[扚w删除量数据通常都是很复杂及~慢的,Ҏ也很多,但是通常的概忉|:分批删除Q逐次提交?BR>下面是我的删除过E,我的数据表可以通过主键删除Q测试过Delete和For all两种ҎQfor all在这里ƈ没有带来性能提高Q所以仍焉择了批量直接删除?BR><BR>首先创徏一下过E,使用自制事务q行处理Q?BR><BR><FONT style="BACKGROUND-COLOR: #d3d3d3" color=#000000>create or replace procedure delBigTab<BR>(<BR>p_TableName       in    varchar2,<BR>p_Condition       in    varchar2,<BR>p_Count        in    varchar2<BR>)<BR>as<BR>pragma <STRONG>autonomous_transaction</STRONG>;<BR>n_delete number:=0;<BR>begin<BR>while 1=1 loop<BR>EXECUTE IMMEDIATE<BR>'delete from '||p_TableName||' where '||p_Condition||' and rownum <= :rn'<BR>USING p_Count;<BR>if SQL%NOTFOUND then<BR>exit;<BR>else<BR>n_delete:=n_delete + SQL%ROWCOUNT;<BR>end if;<BR>commit;<BR>end loop;<BR>commit;<BR>DBMS_OUTPUT.PUT_LINE('Finished!');<BR>DBMS_OUTPUT.PUT_LINE('Totally '||to_char(n_delete)||' records deleted!');<BR>end;<BR></FONT><BR>以下是删除过E及旉:<BR>SQL> create or replace procedure delBigTab<BR>  2  (<BR>  3    p_TableName       in    varchar2,<BR>  4    p_Condition       in    varchar2,<BR>  5    p_Count        in    varchar2<BR>  6  )<BR>  7  as<BR>  8   pragma autonomous_transaction;<BR>  9   n_delete number:=0;<BR> 10  begin<BR> 11   while 1=1 loop<BR> 12     EXECUTE IMMEDIATE<BR> 13       'delete from '||p_TableName||' where '||p_Condition||' and rownum <= :rn'<BR> 14     USING p_Count;<BR> 15     if SQL%NOTFOUND then<BR> 16        exit;<BR> 17     else<BR> 18              n_delete:=n_delete + SQL%ROWCOUNT;<BR> 19     end if;<BR> 20     commit;<BR> 21   end loop;<BR> 22   commit;<BR> 23   DBMS_OUTPUT.PUT_LINE('Finished!');<BR> 24   DBMS_OUTPUT.PUT_LINE('Totally '||to_char(n_delete)||' records deleted!');<BR> 25  end;<BR> 26  /<BR><BR>Procedure created.<BR><BR>SQL> set timing on<BR>SQL> select min(NUMDLFLOGGUID) from HS_DLF_DOWNLOG_HISTORY;<BR><BR>MIN(NUMDLFLOGGUID)<BR>------------------<BR>          11000000<BR><BR>Elapsed: 00:00:00.23<BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 11100000','10000');<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: 00:00:18.54<BR>SQL> select min(NUMDLFLOGGUID) from HS_DLF_DOWNLOG_HISTORY;<BR><BR>MIN(NUMDLFLOGGUID)<BR>------------------<BR>          11100000<BR><BR>Elapsed: 00:00:00.18<BR>SQL> set serveroutput on<BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 11200000','10000');<BR>Finished!<BR>Totally <STRONG>96936</STRONG> records deleted!<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: <STRONG>00:00:18.61</STRONG><BR><STRONG>10万记录大U?9s</STRONG><BR><BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 11300000','10000');<BR>Finished!<BR>Totally 100000 records deleted!<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: 00:00:18.62<BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 11400000','10000');<BR>Finished!<BR>Totally 100000 records deleted!<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: 00:00:18.85<BR>SQL> <BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 13000000','10000');<BR>Finished!<BR>Totally 1000000 records deleted!<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: 00:03:13.87<BR><BR><STRONG>100万记录大U?分钟</STRONG><BR>SQL> exec delBigTab('HS_DLF_DOWNLOG_HISTORY','NUMDLFLOGGUID < 20000000','10000');<BR> <BR>Finished!<BR>Totally 6999977 records deleted!<BR><BR>PL/SQL procedure successfully completed.<BR><BR>Elapsed: 00:27:24.69<BR><STRONG>700万大U?7分钟</STRONG><BR><BR><img src ="http://m.tkk7.com/konhon/aggbug/15732.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-10-17 18:20 <a href="http://m.tkk7.com/konhon/archive/2005/10/17/15732.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用户自定义的数据库备?/title><link>http://m.tkk7.com/konhon/archive/2005/10/17/15719.html</link><dc:creator>konhon 优华</dc:creator><author>konhon 优华</author><pubDate>Mon, 17 Oct 2005 07:45:00 GMT</pubDate><guid>http://m.tkk7.com/konhon/archive/2005/10/17/15719.html</guid><wfw:comment>http://m.tkk7.com/konhon/comments/15719.html</wfw:comment><comments>http://m.tkk7.com/konhon/archive/2005/10/17/15719.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/konhon/comments/commentRss/15719.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/konhon/services/trackbacks/15719.html</trackback:ping><description><![CDATA[<P align=center><SPAN id=ArticleContent1_ArticleContent1_lblContent>  <B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT color=#993300 size=2>用户自定义的数据库备?/FONT></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT color=#993300 size=2>  </FONT></P> <P class=MsoNormal style="TEXT-ALIGN: center" align=center> <TABLE style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 414pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-table-lspace: 9.0pt; mso-table-rspace: 9.0pt; mso-table-anchor-vertical: margin; mso-table-anchor-horizontal: margin; mso-table-left: left; mso-table-top: 24.4pt" cellSpacing=0 cellPadding=0 width=552 align=left border=1> <TBODY> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><B><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">备䆾cd</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT></B> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><B><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">备䆾Ҏ</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT></B> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><B><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">CZ</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT></B> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据文g</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">操作pȝ命o或工?/SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>C:\COPY datafile1.ora datafile.bak <P></P></FONT></FONT></SPAN> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">归档重做日志文g</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">操作pȝ命o或工?/SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>C:\COPY log_01_23.arc log_01_23.bak <P></P></FONT></FONT></SPAN> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制文g</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>SQL</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">命o</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>SQL>ALTER DATABASE BACKUP CONTROLFILE<SPAN style="mso-spacerun: yes">  </SPAN>TO confile.bak; <P></P></FONT></FONT></SPAN> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">初始化参数文?/SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>SQL</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">命o</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>SQL>CREATE<SPAN style="mso-spacerun: yes">  </SPAN>PFILE=SIDinit.ora FROM<SPAN style="mso-spacerun: yes">  </SPAN>SPFILE; <P></P></FONT></FONT></SPAN> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">|络配置与口令文?/SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">操作pȝ命o</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>C:\COPY tnsnames.ora tnsnames.bak <P></P></FONT></FONT></SPAN> <P></P></TD></TR> <TR> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 117pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=156> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据库逻辑对象Q表、烦引、存储过E等Q?/SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 108pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=144> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>Export</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工具</SPAN><SPAN lang=EN-US> <P></P></SPAN></FONT></FONT> <P></P></TD> <TD style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 189pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" vAlign=top width=252> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>C:\EXPORT system/manager<SPAN style="mso-spacerun: yes">  </SPAN>TABLE <P></P></FONT></FONT></SPAN> <P></P> <P class=MsoNormal style="mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: no-wrap-beside; mso-element-anchor-horizontal: margin; mso-element-top: 24.4pt; mso-height-rule: exactly"><SPAN lang=EN-US><FONT size=2><FONT color=#993300>=hr.employees file=emp.dmp <P></P></FONT></FONT></SPAN> <P></P></TD></TR></TBODY></TABLE></P></SPAN><SPAN lang=EN-US> <P></P></SPAN></B> <P></P><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> <P class=MsoNormal><BR><BR><FONT color=#993300 size=2> </FONT></P> <P class=MsoNormal><FONT color=#993300 size=2></FONT> </P> <P class=MsoNormal><FONT color=#993300 size=2></FONT> </P> <P class=MsoNormal><FONT color=#993300 size=2></FONT> </P> <P class=MsoNormal><FONT color=#993300 size=2></FONT> </P> <P class=MsoNormal><FONT color=#993300 size=2><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>如果数据库运行在不归档模式下Q可以对数据库进行不一致的完全备䆾Q或者对某个表空间或数据文gq行单独的备份?/FONT></P></SPAN> <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT color=#993300 size=2>如果数据库运行在不归档模式下Q只能在关闭状态下Ҏ据库q行一致的完全备䆾</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: -21pt; tab-stops: list 21.0pt; mso-list: l4 level1 lfo1"><FONT size=2><FONT color=#993300><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一?SPAN style="FONT: 7pt 'Times New Roman'">             </SPAN></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表空间或数据文g的脱机备?/SPAN></B></FONT></FONT></P> <P class=MsoNormal><FONT size=2><FONT color=#993300><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">    </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果数据库运行在<U>归档模式</U>下,可以在打开状态下Ҏ据库中处于脱机状态的表空间或数据文gq行备䆾。在备䆾期间数据库中其它的表I间或数据文件仍然可以被用户使用?/SPAN></FONT></FONT></P> <P class=MsoNormal style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>TABLESPACE<SPAN style="mso-spacerun: yes">  </SPAN>users<SPAN style="mso-spacerun: yes">  </SPAN>OFFLINE<SPAN style="mso-spacerun: yes">  </SPAN>NORMAL;</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>C:\COPY<SPAN style="mso-spacerun: yes">  </SPAN>E:\oracle\oradata\users01.dbf<SPAN style="mso-spacerun: yes">  </SPAN>F:\backup\users01.bak</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>TABLESPACE<SPAN style="mso-spacerun: yes">  </SPAN>users<SPAN style="mso-spacerun: yes">  </SPAN>ONLINE;</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>SYSTEM<SPAN style="mso-spacerun: yes">  </SPAN>ARCHIVE<SPAN style="mso-spacerun: yes">  </SPAN>LOG<SPAN style="mso-spacerun: yes">  </SPAN>CURRENT;</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: -21pt; tab-stops: list 21.0pt; mso-list: l4 level1 lfo1"><FONT size=2><FONT color=#993300><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">二?SPAN style="FONT: 7pt 'Times New Roman'">             </SPAN></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表空间或数据文g的联机备?/SPAN></B></FONT></FONT></P> <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT color=#993300 size=2>如果数据库运行在<U>归档模式</U>下,可以在打开状态下Ҏ据库中处于联机状态的表空间或数据文gq行备䆾。在备䆾期间q些表空间或数据文g仍然可以被用户用?/FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>TABLESPACE<SPAN style="mso-spacerun: yes">  </SPAN>users<SPAN style="mso-spacerun: yes">  </SPAN>BEGIN<SPAN style="mso-spacerun: yes">  </SPAN>BACKUP;</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN lang=EN-US><FONT color=#993300 size=2>C:\COPY<SPAN style="mso-spacerun: yes">  </SPAN>E:\oracle\oradata\users01.dbf<SPAN style="mso-spacerun: yes">  </SPAN>F:\backup\users01.bak</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>TABLESPACE<SPAN style="mso-spacerun: yes">  </SPAN>users<SPAN style="mso-spacerun: yes">  </SPAN>END<SPAN style="mso-spacerun: yes">  </SPAN>BACKUP;</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>SYSTEM<SPAN style="mso-spacerun: yes">  </SPAN>ARCHIVE<SPAN style="mso-spacerun: yes">  </SPAN>LOG<SPAN style="mso-spacerun: yes">  </SPAN>CURRENT;</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: -21pt; tab-stops: list 21.0pt; mso-list: l4 level1 lfo1"><FONT size=2><FONT color=#993300><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">三?SPAN style="FONT: 7pt 'Times New Roman'">             </SPAN></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">处理备䆾故障</SPAN></B></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><FONT size=2><FONT color=#993300><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果在备份过E中发生故障Q导致备份突然中断,那么在下一ơ启动数据库时备份表I间的数据文件将会仍然处于备份模式下Q因?/SPAN><SPAN lang=EN-US>ORACLE</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">会要求进行数据库恢复?/SPAN></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 39pt; TEXT-INDENT: -18pt; tab-stops: list 39.0pt; mso-list: l4 level2 lfo1"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>1?SPAN style="FONT: 7pt 'Times New Roman'">  </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">利用</SPAN><SPAN lang=EN-US>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>END<SPAN style="mso-spacerun: yes">  </SPAN>BACKUP</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">语句退出备份模?/SPAN></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 39pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>STARTUP<SPAN style="mso-spacerun: yes">  </SPAN>MOUNT</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 39pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>SELECT * FROM V$BACKUP WHERE STATUS=’ACTIVE?/FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 31.5pt; mso-char-indent-count: 3.0; mso-char-indent-size: 10.5pt"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>(</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">查询哪些数据文g处于备䆾模式</SPAN><SPAN lang=EN-US>)</SPAN></FONT></FONT></P> <P class=MsoNormal style="TEXT-INDENT: 37.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>END BACKUP;</FONT></SPAN></P> <P class=MsoNormal style="TEXT-INDENT: 37.5pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>OPEN;</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 39pt; TEXT-INDENT: -18pt; tab-stops: list 39.0pt; mso-list: l4 level2 lfo1"><FONT size=2><FONT color=#993300><SPAN lang=EN-US>2?SPAN style="FONT: 7pt 'Times New Roman'">  </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">利用</SPAN><SPAN lang=EN-US>RECOVER</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">命o退出备份模?/SPAN></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><SPAN lang=EN-US><FONT size=2><FONT color=#993300><SPAN style="mso-spacerun: yes">   </SPAN>SQL>STARTUP<SPAN style="mso-spacerun: yes">  </SPAN>MOUNT</FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><SPAN lang=EN-US><FONT size=2><FONT color=#993300><SPAN style="mso-spacerun: yes">   </SPAN>SQL>RECOVER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE</FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><SPAN lang=EN-US><FONT size=2><FONT color=#993300><SPAN style="mso-spacerun: yes">   </SPAN>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>OPEN;</FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: -21pt; tab-stops: list 21.0pt; mso-list: l4 level1 lfo1"><FONT size=2><FONT color=#993300><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">四?SPAN style="FONT: 7pt 'Times New Roman'">             </SPAN></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制文g备䆾Zq制文g</SPAN></B></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>BACKUP<SPAN style="mso-spacerun: yes">  </SPAN>CONTROLFILE<SPAN style="mso-spacerun: yes">  </SPAN>TO</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: 21.75pt"><SPAN lang=EN-US><FONT color=#993300 size=2>‘E:\backup\cfile.bak?SPAN style="mso-spacerun: yes">  </SPAN>REUSE;</FONT></SPAN></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: -21pt; tab-stops: list 21.0pt; mso-list: l4 level1 lfo1"><FONT size=2><FONT color=#993300><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">五?SPAN style="FONT: 7pt 'Times New Roman'">             </SPAN></SPAN></B><B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制文g备䆾到跟t文件中</SPAN></B></FONT></FONT></P> <P class=MsoNormal style="MARGIN-LEFT: 21pt"><SPAN lang=EN-US><FONT color=#993300 size=2>SQL>ALTER<SPAN style="mso-spacerun: yes">  </SPAN>DATABASE<SPAN style="mso-spacerun: yes">  </SPAN>BACKUP<SPAN style="mso-spacerun: yes">  </SPAN>CONTROLFILE<SPAN style="mso-spacerun: yes">  </SPAN>TO<SPAN style="mso-spacerun: yes">  </SPAN>TRACE;</FONT></SPAN></P><FONT size=2><FONT color=#993300><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-size: 12.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Q数据库处于加蝲状态时Q利用上面语句可以将控制文g备䆾到跟t文件中Q?/SPAN> </FONT></FONT></SPAN><BR><img src ="http://m.tkk7.com/konhon/aggbug/15719.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/konhon/" target="_blank">konhon 优华</a> 2005-10-17 15:45 <a href="http://m.tkk7.com/konhon/archive/2005/10/17/15719.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQLServer和Oracle常用函数Ҏhttp://m.tkk7.com/konhon/archive/2005/10/13/15447.htmlkonhon 优华konhon 优华Thu, 13 Oct 2005 12:14:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/13/15447.htmlhttp://m.tkk7.com/konhon/comments/15447.htmlhttp://m.tkk7.com/konhon/archive/2005/10/13/15447.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/15447.htmlhttp://m.tkk7.com/konhon/services/trackbacks/15447.html数学函数 
  1.l对?nbsp;
  S:select abs(-1) value 
  O:select abs(-1) value from dual 

  2.取整(? 
  S:select ceiling(-1.001) value 
  O:select ceil(-1.001) value from dual 

  3.取整Q小Q?nbsp;
  S:select floor(-1.001) value 
  O:select floor(-1.001) value from dual 

  4.取整Q截取) 
  S:select cast(-1.002 as int) value 
  O:select trunc(-1.002) value from dual 

  5.四舍五入 
  S:select round(1.23456,4) value 1.23460 
  O:select round(1.23456,4) value from dual 1.2346 

  6.e为底的幂 
  S:select Exp(1) value 2.7182818284590451 
  O:select Exp(1) value from dual 2.71828182 

  7.取e为底的对?nbsp;
  S:select log(2.7182818284590451) value 1 
  O:select ln(2.7182818284590451) value from dual; 1 

  8.?0为底Ҏ 
  S:select log10(10) value 1 
  O:select log(10,10) value from dual; 1 

  9.取^?nbsp;
  S:select SQUARE(4) value 16 
  O:select power(4,2) value from dual 16 

  10.取^Ҏ 
  S:select SQRT(4) value 2 
  O:select SQRT(4) value from dual 2 

  11.求Q意数为底的幂 
  S:select power(3,4) value 81 
  O:select power(3,4) value from dual 81 

  12.取随机数 
  S:select rand() value 
  O:select sys.dbms_random.value(0,1) value from dual; 

  13.取符?nbsp;
  S:select sign(-8) value -1 
  O:select sign(-8) value from dual -1 

  14.圆周?nbsp;
  S:SELECT PI() value 3.1415926535897931 
  O:不知?nbsp;

  15.sin,cos,tan 参数都以弧度为单?nbsp;
  例如Qselect sin(PI()/2) value 得到1QSQLServerQ?nbsp;

  16.Asin,Acos,Atan,Atan2 q回弧度 

  17.弧度角度互换(SQLServerQOracle不知? 
  DEGREESQ弧?〉角?nbsp;
  RADIANSQ角?〉弧?nbsp;

数值间比较 

  18. 求集合最大?nbsp;
  S:select max(value) value from 
  (select 1 value 
  union 
  select -2 value 
  union 
  select 4 value 
  union 
  select 3 value)a 

  O:select greatest(1,-2,4,3) value from dual 

  19. 求集合最?nbsp;
  S:select min(value) value from 
  (select 1 value 
  union 
  select -2 value 
  union 
  select 4 value 
  union 
  select 3 value)a 

  O:select least(1,-2,4,3) value from dual 

  20.如何处理null?F2中的null?0代替) 
  S:select F1,IsNull(F2,10) value from Tbl 
  O:select F1,nvl(F2,10) value from Tbl 

  21.求字W序?nbsp;
  S:select ascii('a') value 
  O:select ascii('a') value from dual 

  22.从序h字符 
  S:select char(97) value 
  O:select chr(97) value from dual 

  23.q接 
  S:select '11'+'22'+'33' value 
  O:select CONCAT('11','22')  33 value from dual 

23.子串位置 --q回3 
  S:select CHARINDEX('s','sdsq',2) value 
  O:select INSTR('sdsq','s',2) value from dual 

  23.模糊子串的位|?nbsp;--q回2,参数L中间%则返? 
  S:select patindex('%d%q%','sdsfasdqe') value 
  O:oracle没发玎ͼ但是instr可以通过W四个参数控制出现次?nbsp;
  select INSTR('sdsfasdqe','sd',1,2) value from dual q回6 

  24.求子?nbsp;
  S:select substring('abcd',2,2) value 
  O:select substr('abcd',2,2) value from dual 

  25.子串代替 q回aijklmnef 
  S:SELECT STUFF('abcdef', 2, 3, 'ijklmn') value 
  O:SELECT Replace('abcdef', 'bcd', 'ijklmn') value from dual 

  26.子串全部替换 
  S:没发?nbsp;
  O:select Translate('fasdbfasegas','fa','? ) value from dual 

  27.长度 
  S:len,datalength 
  O:length 

  28.大小写{?nbsp;lower,upper 

  29.单词首字母大?nbsp;
  S:没发?nbsp;
  O:select INITCAP('abcd dsaf df') value from dual 

  30.左补I格QLPAD的第一个参CؓI格则同space函数Q?nbsp;
  S:select space(10)+'abcd' value 
  O:select LPAD('abcd',14) value from dual 

  31.双I格QRPAD的第一个参CؓI格则同space函数Q?nbsp;
  S:select 'abcd'+space(10) value 
  O:select RPAD('abcd',14) value from dual 

  32.删除I格 
  S:ltrim,rtrim 
  O:ltrim,rtrim,trim 

  33. 重复字符?nbsp;
  S:select REPLICATE('abcd',2) value 
  O:没发?nbsp;

  34.发音怼性比?q两个单词返回gP发音相同) 
  S:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe') 
  O:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe') from dual 
  SQLServer中用SELECT DIFFERENCE('Smithers', 'Smythers') 比较soundex的差 
  q回0-4Q?为同韻I1最?nbsp;

日期函数 
  35.pȝ旉 
  S:select getdate() value 
  O:select sysdate value from dual 

  36.前后几日 
  直接与整数相加减 

  37.求日?nbsp;
  S:select convert(char(10),getdate(),20) value 
  O:select trunc(sysdate) value from dual 
  select to_char(sysdate,'yyyy-mm-dd') value from dual 

  38.求时?nbsp;
  S:select convert(char(8),getdate(),108) value 
  O:select to_char(sysdate,'hh24:mm:ss') value from dual 

39.取日期时间的其他部分 
  S:DATEPART ?nbsp;DATENAME 函数 Q第一个参数决定) 
  O:to_char函数 W二个参数决?nbsp;

  参数---------------------------------下表需要补?nbsp;
  year yy, yyyy 
  quarter qq, q (季度) 
  month mm, m (m O无效) 
  dayofyear dy, y (O表星? 
  day dd, d (d O无效) 
  week wk, ww (wk O无效) 
  weekday dw (O不清? 
  Hour hh,hh12,hh24 (hh12,hh24 S无效) 
  minute mi, n (n O无效) 
  second ss, s (s O无效) 
  millisecond ms (O无效) 
  ---------------------------------------------- 

  40.当月最后一?nbsp;
  S:不知?nbsp;
  O:select LAST_DAY(sysdate) value from dual 

  41.本星期的某一天(比如星期日) 
  S:不知?nbsp;
  O:SELECT Next_day(sysdate,7) vaule FROM DUAL; 

  42.字符串{旉 
  S:可以直接转或者select cast('2004-09-08'as datetime) value 
  O:SELECT To_date('2004-01-05 22:09:38','yyyy-mm-dd hh24-mi-ss') vaule FROM DUAL; 

  43.求两日期某一部分的差Q比如秒Q?nbsp;
  S:select datediff(ss,getdate(),getdate()+12.3) value 
  O:直接用两个日期相减(比如d1-d2=12.3Q?nbsp;
  SELECT (d1-d2)*24*60*60 vaule FROM DUAL; 

  44.Ҏ差值求新的日期Q比如分钟) 
  S:select dateadd(mi,8,getdate()) value 
  O:SELECT sysdate+8/60/24 vaule FROM DUAL; 

  45.求不同时区时?nbsp;
  S:不知?nbsp;
  O:SELECT New_time(sysdate,'ydt','gmt' ) vaule FROM DUAL; 

  -----时区参数,北京在东8区应该是Ydt------- 
  AST ADT 大西z标准时?nbsp;
  BST BDT 白oh准时?nbsp;
  CST CDT 中部标准旉 
  EST EDT 东部标准旉 
  GMT 格林治标准旉 
  HST HDT 阿拉斯加?夏威h准时?nbsp;
  MST MDT 山区标准旉 
  NST U芬兰标准时?nbsp;
  PST PDT 太^z标准时?nbsp;
  YST YDT YUKON标准旉


konhon 优华 2005-10-13 20:14 发表评论
]]>
oracle入门知识http://m.tkk7.com/konhon/archive/2005/10/06/14884.htmlkonhon 优华konhon 优华Thu, 06 Oct 2005 08:38:00 GMThttp://m.tkk7.com/konhon/archive/2005/10/06/14884.htmlhttp://m.tkk7.com/konhon/comments/14884.htmlhttp://m.tkk7.com/konhon/archive/2005/10/06/14884.html#Feedback0http://m.tkk7.com/konhon/comments/commentRss/14884.htmlhttp://m.tkk7.com/konhon/services/trackbacks/14884.htmloracle入门知识

一个表I间只能属于一个数据库  
每个数据库最有一个控制文Ӟ3个,分别攑֜不同的磁盘上Q?nbsp; 
每个数据库最有一个表I间QSYSTEM表空_  
建立SYSTEM表空间的目的是尽量将目的相同的表存放在一P以提高用效率,只应存放数据字典  
  
每个数据库最有两个联机日志l,每组最一个联机日志文?nbsp; 
  
一个数据文件只能属于一个表I间  
一个数据文件一旦被加入C个表I间中,׃能再从这个表I间中移赎ͼ也不能再加入到其他表I间?nbsp; 
  
建立新的表空间需要徏立新的数据文?nbsp; 
  
COMMIT后,数据不一定立卛_盘(数据文gQ?nbsp; 
  
一个事务即使不被提交,也会被写入到重做日志中?nbsp; 
  
oracle server可以同时启动多个数据?nbsp; 
  
一套操作系l上可以安装多个版本的ORACLE数据库系l(UNIX可以QNT不可以)  
  
一套ORACLE数据库系l中可以有多个ORACLE数据库及其相对应的实?



konhon 优华 2005-10-06 16:38 发表评论
]]>
վ֩ģ壺 һ| 96|| ߾Ʒһ| Ʒ޾Ʒ2021 | ޾Ʒ㶮| ִˬƵ| ҹ׾糡| ĻӰѹۿַ| ŷ޵һa߹ۿ| Ʒ޾Ʒ2021| ƵѲ| ӰԺ߹ۿ| һŷһ| ƷѴƬ| ɫۺ| պ޹ۺϸ| һng| ˹mvƵ| ŷձ߹ۿ| պƬѹۿƵ| ƷþþþóѶ| ޾ƷƷ벻99| Ƶ2ѹۿ| ССӰձۿ| ëƬһëƬ| ߹ۿƵ| ҹAVר߲| ޳AVƬ߳ˮ| 㻨ѸƵ| ޳˻ɫ߹ۿ| ѹۿ| ޹Ʒþþþվ| ѸƵ| ޻վwwwwww| ĻƵ| ޲ӰԺҹ߹ۿ| þWWW˳Ƭ| av͵߹ۿ| av˾Ʒ| Ƶ| ŷ޹Ƶ|