<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://phpbird.spaces.live.com/mmm2008-07-24_12.50/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fphpbird.spaces.live.com%2fcategory%2f%e5%ad%a6%e4%b9%a0%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>phpbird's space: 学习</title><description /><link>http://phpbird.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=cat%25E5%25AD%25A6%25E4%25B9%25A0</link><language>en-US</language><pubDate>Tue, 26 Feb 2008 10:34:43 GMT</pubDate><lastBuildDate>Tue, 26 Feb 2008 10:34:43 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://phpbird.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>6624457456137543971</live:id><live:alias>phpbird</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>Oracle的sql*plus</title><link>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!363.entry</link><description>&lt;div&gt;Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中，可以运行sql*plus命令与sql*plus语句。 &lt;br&gt;我们通常所说的DML、DDL、DCL语句都是sql*plus语句，它们执行完后，都可以保存在一个被称为sql buffer的内存区域中，并且只能保存一条最近执行的sql语句，我们可以对保存在sql buffer中的sql 语句进行修改，然后再次执行，sql*plus一般都与数据库打交道。 &lt;br&gt;除了sql*plus语句，在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后，不保存在sql buffer的内存区域中，它们一般用来对输出的结果进行格式化显示，以便于制作报表。 &lt;br&gt;下面就介绍一下一些常用的sql*plus命令： &lt;/div&gt;
&lt;div&gt;1. 执行一个SQL脚本文件 &lt;br&gt;SQL&amp;gt;start file_name &lt;br&gt;SQL&amp;gt;@ file_name &lt;br&gt;我们可以将多条sql语句保存在一个文本文件中，这样当要执行这个文件中的所有的sql语句时，用上面的任一命令即可，这类似于dos中的批处理。 &lt;br&gt;@与@@的区别是什么？&lt;br&gt;@等于start命令，用来运行一个sql脚本文件。&lt;br&gt;@命令调用当前目录下的，或指定全路径，或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径，否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件。&lt;br&gt;@@用在sql脚本文件中，用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下，而不用指定要执行sql脚本文件的全路径，也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件，该命令一般用在脚本文件中。&lt;br&gt;如：在c:temp目录下有文件start.sql和nest_start.sql，start.sql脚本文件的内容为：&lt;br&gt;@@nest_start.sql - - 相当于@ c:tempnest_start.sql&lt;br&gt;则我们在sql*plus中，这样执行：&lt;br&gt;SQL&amp;gt; @ c:tempstart.sql &lt;/div&gt;
&lt;div&gt;&lt;br&gt;2. 对当前的输入进行编辑 &lt;br&gt;SQL&amp;gt;edit &lt;/div&gt;
&lt;div&gt;3. 重新运行上一次运行的sql语句 &lt;br&gt;SQL&amp;gt;/ &lt;/div&gt;
&lt;div&gt;4. 将显示的内容输出到指定文件 &lt;br&gt;SQL&amp;gt; SPOOL file_name &lt;br&gt;在屏幕上的所有内容都包含在该文件中，包括你输入的sql语句。 &lt;/div&gt;
&lt;div&gt;5. 关闭spool输出 &lt;br&gt;SQL&amp;gt; SPOOL OFF &lt;br&gt;只有关闭spool输出，才会在输出文件中看到输出的内容。 &lt;/div&gt;
&lt;div&gt;6．显示一个表的结构 &lt;br&gt;SQL&amp;gt; desc table_name &lt;/div&gt;
&lt;div&gt;7. COL命令： &lt;br&gt;主要格式化列的显示形式。 &lt;br&gt;该命令有许多选项，具体如下： &lt;br&gt;COL[UMN] [{ column|expr} [ option ...]] &lt;br&gt;Option选项可以是如下的子句: &lt;br&gt;ALI[AS] alias &lt;br&gt;CLE[AR] &lt;br&gt;FOLD_A[FTER] &lt;br&gt;FOLD_B[EFORE] &lt;br&gt;FOR[MAT] format &lt;br&gt;HEA[DING] text &lt;br&gt;JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} &lt;br&gt;LIKE { expr|alias} &lt;br&gt;NEWL[INE] &lt;br&gt;NEW_V[ALUE] variable &lt;br&gt;NOPRI[NT]|PRI[NT] &lt;br&gt;NUL[L] text &lt;br&gt;OLD_V[ALUE] variable &lt;br&gt;ON|OFF &lt;br&gt;WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] &lt;/div&gt;
&lt;div&gt;1). 改变缺省的列标题 &lt;br&gt;COLUMN column_name HEADING column_heading &lt;br&gt;For example: &lt;br&gt;Sql&amp;gt;select * from dept; &lt;br&gt;DEPTNO DNAME LOC &lt;br&gt;---------- ---------------------------- --------- &lt;br&gt;10 ACCOUNTING NEW YORK &lt;br&gt;sql&amp;gt;col LOC heading location &lt;br&gt;sql&amp;gt;select * from dept; &lt;br&gt;DEPTNO DNAME location &lt;br&gt;--------- ---------------------------- ----------- &lt;br&gt;10 ACCOUNTING NEW YORK &lt;/div&gt;
&lt;div&gt;2). 将列名ENAME改为新列名EMPLOYEE NAME并将新列名放在两行上： &lt;br&gt;Sql&amp;gt;select * from emp &lt;br&gt;Department name Salary &lt;br&gt;---------- ---------- ---------- &lt;br&gt;10 aaa 11 &lt;br&gt;SQL&amp;gt; COLUMN ENAME HEADING ’Employee|Name’ &lt;br&gt;Sql&amp;gt;select * from emp &lt;br&gt;Employee &lt;br&gt;Department name Salary &lt;br&gt;---------- ---------- ---------- &lt;br&gt;10 aaa 11 &lt;br&gt;note: the col heading turn into two lines from one line. &lt;/div&gt;
&lt;div&gt;3). 改变列的显示长度： &lt;br&gt;FOR[MAT] format &lt;br&gt;Sql&amp;gt;select empno,ename,job from emp; &lt;br&gt;EMPNO ENAME JOB &lt;br&gt;---------- ---------- --------- &lt;br&gt;7369 SMITH CLERK &lt;br&gt;7499 ALLEN SALESMAN &lt;br&gt;7521 WARD SALESMAN &lt;br&gt;Sql&amp;gt; col ename format a40 &lt;br&gt;EMPNO ENAME JOB &lt;br&gt;---------- ---------------------------------------- --------- &lt;br&gt;7369 SMITH CLERK &lt;br&gt;7499 ALLEN SALESMAN &lt;br&gt;7521 WARD SALESMAN &lt;/div&gt;
&lt;div&gt;4). 设置列标题的对齐方式 &lt;br&gt;JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} &lt;br&gt;SQL&amp;gt; col ename justify center &lt;br&gt;SQL&amp;gt; / &lt;br&gt;EMPNO ENAME JOB &lt;br&gt;---------- ---------------------------------------- --------- &lt;br&gt;7369 SMITH CLERK &lt;br&gt;7499 ALLEN SALESMAN &lt;br&gt;7521 WARD SALESMAN &lt;br&gt;对于NUMBER型的列，列标题缺省在右边，其它类型的列标题缺省在左边 &lt;/div&gt;
&lt;div&gt;5). 不让一个列显示在屏幕上 &lt;br&gt;NOPRI[NT]|PRI[NT] &lt;br&gt;SQL&amp;gt; col job noprint &lt;br&gt;SQL&amp;gt; / &lt;br&gt;EMPNO ENAME &lt;br&gt;---------- ---------------------------------------- &lt;br&gt;7369 SMITH &lt;br&gt;7499 ALLEN &lt;br&gt;7521 WARD &lt;/div&gt;
&lt;div&gt;6). 格式化NUMBER类型列的显示： &lt;br&gt;SQL&amp;gt; COLUMN SAL FORMAT $99,990 &lt;br&gt;SQL&amp;gt; / &lt;br&gt;Employee &lt;br&gt;Department Name Salary Commission &lt;br&gt;---------- ---------- --------- ---------- &lt;br&gt;30 ALLEN $1,600 300 &lt;/div&gt;
&lt;div&gt;7). 显示列值时，如果列值为NULL值，用text值代替NULL值 &lt;br&gt;COMM NUL[L] text &lt;br&gt;SQL&amp;gt;COL COMM NUL[L] text &lt;/div&gt;
&lt;div&gt;8). 设置一个列的回绕方式 &lt;br&gt;WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] &lt;br&gt;COL1 &lt;br&gt;-------------------- &lt;br&gt;HOW ARE YOU? &lt;/div&gt;
&lt;div&gt;SQL&amp;gt;COL COL1 FORMAT A5 &lt;br&gt;SQL&amp;gt;COL COL1 WRAPPED &lt;br&gt;COL1 &lt;br&gt;----- &lt;br&gt;HOW A &lt;br&gt;RE YO &lt;br&gt;U? &lt;/div&gt;
&lt;div&gt;SQL&amp;gt; COL COL1 WORD_WRAPPED &lt;br&gt;COL1 &lt;br&gt;----- &lt;br&gt;HOW &lt;br&gt;ARE &lt;br&gt;YOU? &lt;/div&gt;
&lt;div&gt;SQL&amp;gt; COL COL1 WORD_WRAPPED &lt;br&gt;COL1 &lt;br&gt;----- &lt;br&gt;HOW A &lt;/div&gt;
&lt;div&gt;9). 显示列的当前的显示属性值 &lt;br&gt;SQL&amp;gt; COLUMN column_name &lt;/div&gt;
&lt;div&gt;10). 将所有列的显示属性设为缺省值 &lt;br&gt;SQL&amp;gt; CLEAR COLUMNS &lt;/div&gt;
&lt;div&gt;8. 屏蔽掉一个列中显示的相同的值 &lt;br&gt;BREAK ON break_column &lt;br&gt;SQL&amp;gt; BREAK ON DEPTNO &lt;br&gt;SQL&amp;gt; SELECT DEPTNO, ENAME, SAL &lt;br&gt;FROM EMP &lt;br&gt;WHERE SAL &amp;lt; 2500 &lt;br&gt;ORDER BY DEPTNO; &lt;br&gt;DEPTNO ENAME SAL &lt;br&gt;---------- ----------- --------- &lt;br&gt;10 CLARK 2450 &lt;br&gt;MILLER 1300 &lt;br&gt;20 SMITH 800 &lt;br&gt;ADAMS 1100 &lt;/div&gt;
&lt;div&gt;9. 在上面屏蔽掉一个列中显示的相同的值的显示中，每当列值变化时在值变化之前插入n个空行。 &lt;br&gt;BREAK ON break_column SKIP n &lt;/div&gt;
&lt;div&gt;SQL&amp;gt; BREAK ON DEPTNO SKIP 1 &lt;br&gt;SQL&amp;gt; / &lt;br&gt;DEPTNO ENAME SAL &lt;br&gt;---------- ----------- --------- &lt;br&gt;10 CLARK 2450 &lt;br&gt;MILLER 1300 &lt;/div&gt;
&lt;div&gt;20 SMITH 800 &lt;br&gt;ADAMS 1100 &lt;/div&gt;
&lt;div&gt;10. 显示对BREAK的设置 &lt;br&gt;SQL&amp;gt; BREAK &lt;/div&gt;
&lt;div&gt;11. 删除6、7的设置 &lt;br&gt;SQL&amp;gt; CLEAR BREAKS &lt;/div&gt;
&lt;div&gt;12. Set 命令： &lt;br&gt;该命令包含许多子命令： &lt;br&gt;SET system_variable value &lt;br&gt;system_variable value 可以是如下的子句之一： &lt;br&gt;APPI[NFO]{ON|OFF|text} &lt;br&gt;ARRAY[SIZE] {15|n} &lt;br&gt;AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n} &lt;br&gt;AUTOP[RINT] {ON|OFF} &lt;br&gt;AUTORECOVERY [ON|OFF] &lt;br&gt;AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] &lt;br&gt;BLO[CKTERMINATOR] {.|c} &lt;br&gt;CMDS[EP] {;|c|ON|OFF} &lt;br&gt;COLSEP {_|text} &lt;br&gt;COM[PATIBILITY]{V7|V8|NATIVE} &lt;br&gt;CON[CAT] {.|c|ON|OFF} &lt;br&gt;COPYC[OMMIT] {0|n} &lt;br&gt;COPYTYPECHECK {ON|OFF} &lt;br&gt;DEF[INE] {&amp;amp;|c|ON|OFF} &lt;br&gt;DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] &lt;br&gt;ECHO {ON|OFF} &lt;br&gt;EDITF[ILE] file_name[.ext] &lt;br&gt;EMB[EDDED] {ON|OFF} &lt;br&gt;ESC[APE] {|c|ON|OFF} &lt;br&gt;FEED[BACK] {6|n|ON|OFF} &lt;br&gt;FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL} &lt;br&gt;FLU[SH] {ON|OFF} &lt;br&gt;HEA[DING] {ON|OFF} &lt;br&gt;HEADS[EP] {||c|ON|OFF} &lt;br&gt;INSTANCE [instance_path|LOCAL] &lt;br&gt;LIN[ESIZE] {80|n} &lt;br&gt;LOBOF[FSET] {n|1} &lt;br&gt;LOGSOURCE [pathname] &lt;br&gt;LONG {80|n} &lt;br&gt;LONGC[HUNKSIZE] {80|n} &lt;br&gt;MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL &lt;br&gt;{ON|OFF}] [PRE[FORMAT] {ON|OFF}] &lt;br&gt;NEWP[AGE] {1|n|NONE} &lt;br&gt;NULL text &lt;br&gt;NUMF[ORMAT] format &lt;br&gt;NUM[WIDTH] {10|n} &lt;br&gt;PAGES[IZE] {24|n} &lt;br&gt;PAU[SE] {ON|OFF|text} &lt;br&gt;RECSEP {WR[APPED]|EA[CH]|OFF} &lt;br&gt;RECSEPCHAR {_|c} &lt;br&gt;SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ &lt;br&gt;WRAPPED]|TRU[NCATED]}] &lt;br&gt;SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]} &lt;br&gt;SHOW[MODE] {ON|OFF} &lt;br&gt;SQLBL[ANKLINES] {ON|OFF} &lt;br&gt;SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]} &lt;br&gt;SQLCO[NTINUE] {&amp;gt; |text} &lt;br&gt;SQLN[UMBER] {ON|OFF} &lt;br&gt;SQLPRE[FIX] {#|c} &lt;br&gt;SQLP[ROMPT] {SQL&amp;gt;|text} &lt;br&gt;SQLT[ERMINATOR] {;|c|ON|OFF} &lt;br&gt;SUF[FIX] {SQL|text} &lt;br&gt;TAB {ON|OFF} &lt;br&gt;TERM[OUT] {ON|OFF} &lt;br&gt;TI[ME] {ON|OFF} &lt;br&gt;TIMI[NG] {ON|OFF} &lt;br&gt;TRIM[OUT] {ON|OFF} &lt;br&gt;TRIMS[POOL] {ON|OFF} &lt;br&gt;UND[ERLINE] {-|c|ON|OFF} &lt;br&gt;VER[IFY] {ON|OFF} &lt;br&gt;WRA[P] {ON|OFF} &lt;/div&gt;
&lt;div&gt;1). 设置当前session是否对修改的数据进行自动提交 &lt;br&gt;SQL&amp;gt;SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} &lt;/div&gt;
&lt;div&gt;2)．在用start命令执行一个sql脚本时，是否显示脚本中正在执行的SQL语句 &lt;br&gt;SQL&amp;gt; SET ECHO {ON|OFF} &lt;/div&gt;
&lt;div&gt;3).是否显示当前sql语句查询或修改的行数 &lt;br&gt;SQL&amp;gt; SET FEED[BACK] {6|n|ON|OFF} &lt;br&gt;默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ，则不管查询到多少行都返回。当为off 时，一律不显示查询的行数 &lt;/div&gt;
&lt;div&gt;4).是否显示列标题 &lt;br&gt;SQL&amp;gt; SET HEA[DING] {ON|OFF} &lt;br&gt;当set heading off 时，在每页的上面不显示列标题，而是以空白行代替 &lt;/div&gt;
&lt;div&gt;5).设置一行可以容纳的字符数 &lt;br&gt;SQL&amp;gt; SET LIN[ESIZE] {80|n} &lt;br&gt;如果一行的输出内容大于设置的一行可容纳的字符数，则折行显示。 &lt;/div&gt;
&lt;div&gt;6).设置页与页之间的分隔 &lt;br&gt;SQL&amp;gt; SET NEWP[AGE] {1|n|NONE} &lt;br&gt;当set newpage 0 时，会在每页的开头有一个小的黑方框。 &lt;br&gt;当set newpage n 时，会在页和页之间隔着n个空行。 &lt;br&gt;当set newpage none 时，会在页和页之间没有任何间隔。 &lt;/div&gt;
&lt;div&gt;7).显示时，用text值代替NULL值 &lt;br&gt;SQL&amp;gt; SET NULL text &lt;/div&gt;
&lt;div&gt;8).设置一页有多少行数 &lt;br&gt;SQL&amp;gt; SET PAGES[IZE] {24|n} &lt;br&gt;如果设为0，则所有的输出内容为一页并且不显示列标题 &lt;/div&gt;
&lt;div&gt;9).是否显示用DBMS_OUTPUT.PUT_LINE包进行输出的信息。 &lt;br&gt;SQL&amp;gt; SET SERVEROUT[PUT] {ON|OFF} &lt;br&gt;在编写存储过程时，我们有时会用dbms_output.put_line将必要的信息输出，以便对存储过程进行调试，只有将serveroutput变量设为on后，信息才能显示在屏幕上。 &lt;/div&gt;
&lt;div&gt;10).当SQL语句的长度大于LINESIZE时，是否在显示时截取SQL语句?a href=&amp;quot;&lt;a href="http://www.xxlinux.com/&amp;quot;&amp;gt;Linux"&gt;http://www.xxlinux.com/&amp;quot;&amp;gt;Linux&lt;/a&gt;联盟收集整理 &lt;/div&gt;
&lt;div&gt;SQL&amp;gt; SET WRA[P] {ON|OFF} &lt;br&gt;当输出的行的长度大于设置的行的长度时（用set linesize n命令设置），当set wrap on时，输出行的多于的字符会另起一行显示，否则，会将输出行的多于字符切除，不予显示。 &lt;/div&gt;
&lt;div&gt;11).是否在屏幕上显示输出的内容，主要用与SPOOL结合使用。 &lt;br&gt;SQL&amp;gt; SET TERM[OUT] {ON|OFF} &lt;br&gt;在用spool命令将一个大表中的内容输出到一个文件中时，将内容输出在屏幕上会耗费大量的时间，设置set termspool off后，则输出的内容只会保存在输出文件中，不会显示在屏幕上，极大的提高了spool的速度。 &lt;/div&gt;
&lt;div&gt;12).将SPOOL输出中每行后面多余的空格去掉 &lt;br&gt;SQL&amp;gt; SET TRIMS[OUT] {ON|OFF} &lt;/div&gt;
&lt;div&gt;13)显示每个sql语句花费的执行时间 &lt;br&gt;set TIMING {ON|OFF} &lt;/div&gt;
&lt;div&gt;14). 遇到空行时不认为语句已经结束，从后续行接着读入。&lt;br&gt;SET SQLBLANKLINES ON&lt;br&gt;Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:&lt;br&gt;select deptno, empno, ename&lt;br&gt;from emp&lt;/div&gt;
&lt;div&gt;where empno = '7788';&lt;br&gt;如果拷贝到sql*plus中执行, 就会出现错误。这个命令可以解决该问题&lt;/div&gt;
&lt;div&gt;15).设置DBMS_OUTPUT的输出&lt;br&gt;SET SERVEROUTPUT ON BUFFER 20000&lt;br&gt;用dbms_output.put_line('strin_content');可以在存储过程中输出信息，对存储过程进行调试&lt;br&gt;如果想让dbms_output.put_line(' abc');的输出显示为：&lt;br&gt;SQL&amp;gt; abc，而不是SQL&amp;gt;abc，则在SET SERVEROUTPUT ON后加format wrapped参数。&lt;/div&gt;
&lt;div&gt;16). 输出的数据为html格式&lt;br&gt;set markup html&lt;br&gt;在8.1.7版本(也许是816? 不太确定)以后, sql*plus中有一个set markup html的命令, 可以将sql*plus的输出以html格式展现.&lt;br&gt;注意其中的spool on, 当在屏幕上输出的时候, 我们看不出与不加spool on有什么区别, 但是当我们使用spool filename 输出到文件的时候, 会看到spool文件中出现了等tag.&lt;/div&gt;
&lt;div&gt;&lt;br&gt;14．修改sql buffer中的当前行中，第一个出现的字符串 &lt;br&gt;C[HANGE] /old_value/new_value &lt;br&gt;SQL&amp;gt; l &lt;br&gt;1* select * from dept &lt;br&gt;SQL&amp;gt; c/dept/emp &lt;br&gt;1* select * from emp &lt;/div&gt;
&lt;div&gt;15．编辑sql buffer中的sql语句 &lt;br&gt;EDI[T] &lt;/div&gt;
&lt;div&gt;16．显示sql buffer中的sql语句，list n显示sql buffer中的第n行，并使第n行成为当前行 &lt;br&gt;L[IST] [n] &lt;/div&gt;
&lt;div&gt;17．在sql buffer的当前行下面加一行或多行 &lt;br&gt;I[NPUT] &lt;/div&gt;
&lt;div&gt;18．将指定的文本加到sql buffer的当前行后面 &lt;br&gt;A[PPEND] &lt;br&gt;SQL&amp;gt; select deptno, &lt;br&gt;2 dname &lt;br&gt;3 from dept; &lt;br&gt;DEPTNO DNAME &lt;br&gt;---------- -------------- &lt;br&gt;10 ACCOUNTING &lt;br&gt;20 RESEARCH &lt;br&gt;30 SALES &lt;br&gt;40 OPERATIONS &lt;/div&gt;
&lt;div&gt;SQL&amp;gt; L 2 &lt;br&gt;2* dname &lt;br&gt;SQL&amp;gt; a ,loc &lt;br&gt;2* dname,loc &lt;br&gt;SQL&amp;gt; L &lt;br&gt;1 select deptno, &lt;br&gt;2 dname,loc &lt;br&gt;3* from dept &lt;br&gt;SQL&amp;gt; / &lt;/div&gt;
&lt;div&gt;DEPTNO DNAME LOC &lt;br&gt;---------- -------------- ------------- &lt;br&gt;10 ACCOUNTING NEW YORK &lt;br&gt;20 RESEARCH DALLAS &lt;br&gt;30 SALES CHICAGO &lt;br&gt;40 OPERATIONS BOSTON &lt;/div&gt;
&lt;div&gt;19．将sql buffer中的sql语句保存到一个文件中 &lt;br&gt;SAVE file_name &lt;/div&gt;
&lt;div&gt;20．将一个文件中的sql语句导入到sql buffer中 &lt;br&gt;GET file_name &lt;/div&gt;
&lt;div&gt;21．再次执行刚才已经执行的sql语句 &lt;br&gt;RUN &lt;br&gt;or &lt;br&gt;/ &lt;/div&gt;
&lt;div&gt;22．执行一个存储过程 &lt;br&gt;EXECUTE procedure_name &lt;/div&gt;
&lt;div&gt;23．在sql*plus中连接到指定的数据库 &lt;br&gt;CONNECT &lt;a href="mailto:user_name/passwd@db_alias"&gt;user_name/passwd@db_alias&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;24．设置每个报表的顶部标题 &lt;br&gt;TTITLE &lt;/div&gt;
&lt;div&gt;25．设置每个报表的尾部标题 &lt;br&gt;BTITLE &lt;/div&gt;
&lt;div&gt;26．写一个注释 &lt;br&gt;REMARK [text] &lt;/div&gt;
&lt;div&gt;27．将指定的信息或一个空行输出到屏幕上 &lt;br&gt;PROMPT [text] &lt;/div&gt;
&lt;div&gt;28．将执行的过程暂停，等待用户响应后继续执行 &lt;br&gt;PAUSE [text] &lt;/div&gt;
&lt;div&gt;Sql&amp;gt;PAUSE Adjust paper and press RETURN to continue. &lt;/div&gt;
&lt;div&gt;29．将一个数据库中的一些数据拷贝到另外一个数据库（如将一个表的数据拷贝到另一个数据库） &lt;br&gt;COPY {FROM database | TO database | FROM database TO database} &lt;br&gt;{APPEND|CREATE|INSERT|REPLACE} destination_table &lt;br&gt;[(column, column, column, ...)] USING query &lt;/div&gt;
&lt;div&gt;sql&amp;gt;COPY FROM &lt;a href="mailto:SCOTT/TIGER@HQ"&gt;SCOTT/TIGER@HQ&lt;/a&gt; TO &lt;a href="mailto:JOHN/CHROME@WEST"&gt;JOHN/CHROME@WEST&lt;/a&gt; &lt;br&gt;create emp_temp &lt;br&gt;USING SELECT * FROM EMP &lt;/div&gt;
&lt;div&gt;30．不退出sql*plus，在sql*plus中执行一个操作系统命令： &lt;br&gt;HOST &lt;/div&gt;
&lt;div&gt;Sql&amp;gt; host hostname &lt;br&gt;该命令在windows下可能被支持。 &lt;/div&gt;
&lt;div&gt;31．在sql*plus中，切换到操作系统命令提示符下，运行操作系统命令后，可以再次切换回sql*plus： &lt;br&gt;! &lt;/div&gt;
&lt;div&gt;sql&amp;gt;! &lt;br&gt;$hostname &lt;br&gt;$exit &lt;br&gt;sql&amp;gt; &lt;/div&gt;
&lt;div&gt;该命令在windows下不被支持。 &lt;/div&gt;
&lt;div&gt;32．显示sql*plus命令的帮助 &lt;br&gt;HELP &lt;br&gt;如何安装帮助文件： &lt;br&gt;Sql&amp;gt;@ ?sqlplusadminhelphlpbld.sql ?sqlplusadminhelphelpus.sql &lt;br&gt;Sql&amp;gt;help index &lt;/div&gt;
&lt;div&gt;33．显示sql*plus系统变量的值或sql*plus环境变量的值 &lt;br&gt;Syntax &lt;br&gt;SHO[W] option &lt;br&gt;where option represents one of the following terms or clauses: &lt;br&gt;system_variable &lt;br&gt;ALL &lt;br&gt;BTI[TLE] &lt;br&gt;ERR[ORS] [{FUNCTION|PROCEDURE|PACKAGE|PACKAGE BODY| &lt;br&gt;TRIGGER|VIEW|TYPE|TYPE BODY} [schema.]name] &lt;br&gt;LNO &lt;br&gt;PARAMETERS [parameter_name] &lt;br&gt;PNO &lt;br&gt;REL[EASE] &lt;br&gt;REPF[OOTER] &lt;br&gt;REPH[EADER] &lt;br&gt;SGA &lt;br&gt;SPOO[L] &lt;br&gt;SQLCODE &lt;br&gt;TTI[TLE] &lt;br&gt;USER &lt;/div&gt;
&lt;div&gt;1) . 显示当前环境变量的值： &lt;br&gt;Show all &lt;/div&gt;
&lt;div&gt;2) . 显示当前在创建函数、存储过程、触发器、包等对象的错误信息 &lt;br&gt;Show error &lt;br&gt;当创建一个函数、存储过程等出错时，变可以用该命令查看在那个地方出错及相应的出错信息，进行修改后再次进行编译。 &lt;/div&gt;
&lt;div&gt;3) . 显示初始化参数的值： &lt;br&gt;show PARAMETERS [parameter_name] &lt;/div&gt;
&lt;div&gt;4) . 显示数据库的版本： &lt;br&gt;show REL[EASE] &lt;/div&gt;
&lt;div&gt;5) . 显示SGA的大小 &lt;br&gt;show SGA &lt;/div&gt;
&lt;div&gt;6). 显示当前的用户名 &lt;br&gt;show user&lt;/div&gt;
&lt;div&gt;34.查询一个用户下的对象&lt;br&gt;SQL&amp;gt;select * from tab;&lt;br&gt;SQL&amp;gt;select * from user_objects;&lt;/div&gt;
&lt;div&gt;35.查询一个用户下的所有的表&lt;br&gt;SQL&amp;gt;select * from user_tables;&lt;/div&gt;
&lt;div&gt;36.查询一个用户下的所有的索引&lt;br&gt;SQL&amp;gt;select * from user_indexes;&lt;/div&gt;
&lt;div&gt;&lt;br&gt;37. 定义一个用户变量&lt;br&gt;方法有两个：&lt;br&gt;a. define&lt;br&gt;b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]]&lt;br&gt;OLD_V[ALUE] variable [NOPRI[NT]|PRI[NT]]&lt;/div&gt;
&lt;div&gt;下面对每种方式给予解释：&lt;br&gt;a. Syntax&lt;br&gt;DEF[INE] [variable]|[variable = text]&lt;br&gt;定义一个用户变量并且可以分配给它一个CHAR值。&lt;/div&gt;
&lt;div&gt;assign the value MANAGER to the variable POS, type:&lt;br&gt;SQL&amp;gt; DEFINE POS = MANAGER&lt;/div&gt;
&lt;div&gt;assign the CHAR value 20 to the variable DEPTNO, type:&lt;br&gt;SQL&amp;gt; DEFINE DEPTNO = 20&lt;/div&gt;
&lt;div&gt;list the definition of DEPTNO, enter&lt;br&gt;SQL&amp;gt; DEFINE DEPTNO&lt;br&gt;―――――――――――――――&lt;br&gt;DEFINE DEPTNO = ”20” (CHAR)&lt;/div&gt;
&lt;div&gt;定义了用户变量POS后，就可以在sql*plus中用&amp;amp;POS或&amp;amp;&amp;amp;POS来引用该变量的值，sql*plus不会再提示你给变量输入值。&lt;/div&gt;
&lt;div&gt;b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]]&lt;br&gt;NEW_V[ALUE] variable&lt;br&gt;指定一个变量容纳查询出的列值。&lt;br&gt;例:column col_name new_value var_name noprint&lt;br&gt;select col_name from table_name where ……..&lt;br&gt;将下面查询出的col_name列的值赋给var_name变量.&lt;/div&gt;
&lt;div&gt;一个综合的例子:&lt;br&gt;得到一个列值的两次查询之差(此例为10秒之内共提交了多少事务):&lt;br&gt;column redo_writes new_value commit_count&lt;/div&gt;
&lt;div&gt;select sum(stat.value) redo_writes&lt;br&gt;from v$sesstat stat, v$statname sn&lt;br&gt;where stat.statistic# = sn.statistic#&lt;br&gt;and sn.name = 'user commits';&lt;/div&gt;
&lt;div&gt;-- 等待一会儿(此处为10秒);&lt;br&gt;execute dbms_lock.sleep(10);&lt;/div&gt;
&lt;div&gt;set veri off&lt;br&gt;select sum(stat.value) - &amp;amp;commit_count commits_added&lt;br&gt;from v$sesstat stat, v$statname sn&lt;br&gt;where stat.statistic# = sn.statistic#&lt;br&gt;and sn.name = 'user commits';&lt;/div&gt;
&lt;div&gt;&lt;br&gt;38. 定义一个绑定变量&lt;br&gt;VAR[IABLE] [variable [NUMBER|CHAR|CHAR (n)|NCHAR|NCHAR (n) |VARCHAR2 (n)|NVARCHAR2 (n)|CLOB|NCLOB|REFCURSOR]]&lt;br&gt;定义一个绑定变量，该变量可以在pl/sql中引用。&lt;br&gt;可以用print命令显示该绑定变量的信息。&lt;br&gt;如：&lt;br&gt;column inst_num heading &amp;quot;Inst Num&amp;quot; new_value inst_num format 99999;&lt;br&gt;column inst_name heading &amp;quot;Instance&amp;quot; new_value inst_name format a12;&lt;br&gt;column db_name heading &amp;quot;DB Name&amp;quot; new_value db_name format a12;&lt;br&gt;column dbid heading &amp;quot;DB Id&amp;quot; new_value dbid format 9999999999 just c;&lt;/div&gt;
&lt;div&gt;prompt&lt;br&gt;prompt Current Instance&lt;br&gt;prompt ~~~~~~~~~~~~~~~~&lt;/div&gt;
&lt;div&gt;select d.dbid dbid&lt;br&gt;, d.name db_name&lt;br&gt;, i.instance_number inst_num&lt;br&gt;, i.instance_name inst_name&lt;br&gt;from v$database d,&lt;br&gt;v$instance i;&lt;/div&gt;
&lt;div&gt;variable dbid number;&lt;br&gt;variable inst_num number;&lt;br&gt;begin&lt;br&gt;:dbid := &amp;amp;dbid;&lt;br&gt;:inst_num := &amp;amp;inst_num;&lt;br&gt;end;&lt;br&gt;/&lt;br&gt;说明：&lt;br&gt;在sql*plus中，该绑定变量可以作为一个存储过程的参数，也可以在匿名PL/SQL块中直接引用。为了显示用VARIABLE命令创建的绑定变量的值，可以用print命令&lt;/div&gt;
&lt;div&gt;注意：&lt;br&gt;绑定变量不同于变量：&lt;br&gt;1． 定义方法不同&lt;br&gt;2． 引用方法不同&lt;br&gt;绑定变量：:variable_name&lt;br&gt;变量：&amp;amp;variable_name or &amp;amp;&amp;amp;variable_name&lt;br&gt;3.在sql*plus中，可以定义同名的绑定变量与用户变量，但是引用的方法不同。&lt;/div&gt;
&lt;div&gt;39. &amp;amp;与&amp;amp;&amp;amp;的区别&lt;br&gt;&amp;amp;用来创建一个临时变量，每当遇到这个临时变量时，都会提示你输入一个值。&lt;br&gt;&amp;amp;&amp;amp;用来创建一个持久变量，就像用用define命令或带new_vlaue字句的column命令创建的持久变量一样。当用&amp;amp;&amp;amp;命令引用这个变量时，不会每次遇到该变量就提示用户键入值，而只是在第一次遇到时提示一次。&lt;/div&gt;
&lt;div&gt;如，将下面三行语句存为一个脚本文件，运行该脚本文件，会提示三次，让输入deptnoval的值：&lt;br&gt;select count(*) from emp where deptno = &amp;amp;deptnoval;&lt;br&gt;select count(*) from emp where deptno = &amp;amp;deptnoval;&lt;br&gt;select count(*) from emp where deptno = &amp;amp;deptnoval;&lt;/div&gt;
&lt;div&gt;将下面三行语句存为一个脚本文件，运行该脚本文件，则只会提示一次，让输入deptnoval的值：&lt;br&gt;select count(*) from emp where deptno = &amp;amp;&amp;amp;deptnoval;&lt;br&gt;select count(*) from emp where deptno = &amp;amp;&amp;amp;deptnoval;&lt;br&gt;select count(*) from emp where deptno = &amp;amp;&amp;amp;deptnoval;&lt;/div&gt;
&lt;div&gt;40．在输入sql语句的过程中临时先运行一个sql*plus命令(摘自&lt;a href="http://www.itpub.com"&gt;www.itpub.com&lt;/a&gt;)&lt;br&gt;#&lt;br&gt;有没有过这样的经历? 在sql*plus中敲了很长的命令后, 突然发现想不起某个列的名字了, 如果取消当前的命令,待查询后再重敲, 那太痛苦了. 当然你可以另开一个sql*plus窗口进行查询, 但这里提供的方法更简单.&lt;br&gt;比如说, 你想查工资大于4000的员工的信息, 输入了下面的语句:&lt;/div&gt;
&lt;div&gt;SQL&amp;gt; select deptno, empno, ename&lt;br&gt;2 from emp&lt;br&gt;3 where&lt;br&gt;这时, 你发现你想不起来工资的列名是什么了.&lt;/div&gt;
&lt;div&gt;这种情况下, 只要在下一行以#开头, 就可以执行一条sql*plus命令, 执行完后, 刚才的语句可以继续输入&lt;/div&gt;
&lt;div&gt;SQL&amp;gt;&amp;gt; select deptno, empno, ename&lt;br&gt;2 from emp&lt;br&gt;3 where&lt;br&gt;6 #desc emp&lt;br&gt;Name Null? Type&lt;br&gt;----------------------------------------- -------- --------------&lt;br&gt;EMPNO NOT NULL NUMBER(4)&lt;br&gt;ENAME VARCHAR2(10)&lt;br&gt;JOB VARCHAR2(9)&lt;br&gt;MGR NUMBER(4)&lt;br&gt;HIREDATE DATE&lt;br&gt;SAL NUMBER(7,2)&lt;br&gt;COMM NUMBER(7,2)&lt;br&gt;DEPTNO NUMBER(2)&lt;/div&gt;
&lt;div&gt;6 sal &amp;gt; 4000;&lt;/div&gt;
&lt;div&gt;DEPTNO EMPNO ENAME&lt;br&gt;---------- ---------- ----------&lt;br&gt;10 7839 KING&lt;/div&gt;
&lt;div&gt;41. SQLPlus中的快速复制和粘贴技巧(摘自&lt;a href="http://www.cnoug.org"&gt;www.cnoug.org&lt;/a&gt;)&lt;br&gt;1) 鼠标移至想要复制内容的开始 &lt;br&gt;2) 用右手食指按下鼠标左键 &lt;br&gt;3) 向想要复制内容的另一角拖动鼠标，与Word中选取内容的方法一样 &lt;br&gt;4) 内容选取完毕后（所选内容全部反显），鼠标左键按住不动，用右手中指按鼠标右键 &lt;br&gt;5) 这时，所选内容会自动复制到SQL*Plus环境的最后一行&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=6624457456137543971&amp;page=RSS%3a+Oracle%e7%9a%84sql*plus&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=phpbird.spaces.live.com&amp;amp;GT1=phpbird"&gt;</description><comments>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!363.entry#comment</comments><guid isPermaLink="true">http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!363.entry</guid><pubDate>Mon, 11 Dec 2006 10:29:46 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://phpbird.spaces.live.com/blog/cns!5BEECCF55EC42123!363/comments/feed.rss</wfw:commentRss><wfw:comment>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!363.entry#comment</wfw:comment><dcterms:modified>2006-12-11T10:29:46Z</dcterms:modified></item><item><title>delimiter of Regular Expression</title><link>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!347.entry</link><description>&lt;div&gt;The syntax for patterns used in these functions closely resembles Perl. The &lt;span style="color:black;background-color:cyan"&gt;expression&lt;/span&gt; should be enclosed in the delimiters, a forward slash (/), for example. Any character can be used for &lt;span style="color:black;background-color:fuchsia"&gt;delimiter&lt;/span&gt; as long as it's not &lt;span style="color:black;background-color:chartreuse"&gt;alphanumeric&lt;/span&gt; or &lt;span style="color:black;background-color:dodgerblue"&gt;backslash&lt;/span&gt; (\). If the &lt;span style="color:black;background-color:fuchsia"&gt;delimiter&lt;/span&gt; character has to be used in the &lt;span style="color:black;background-color:cyan"&gt;expression&lt;/span&gt; itself, it needs to be escaped by &lt;span style="color:black;background-color:dodgerblue"&gt;backslash&lt;/span&gt;. Since PHP 4.0.4, you can also use Perl-style (), {}, [], and &amp;lt;&amp;gt; matching delimiters. See &lt;a href="http://cn.php.net/manual/en/reference.pcre.pattern.syntax.php"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Pattern Syntax&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; for detailed explanation. &lt;/div&gt;
&lt;div&gt;摘自php manual&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;任何非字母，数字和\的字符都可以当做delimiter，好处，估计是可以不和expression里面的字符冲突，比如，如果里面有一个/，那么就用#好了。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;知识的力量。&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=6624457456137543971&amp;page=RSS%3a+delimiter+of+Regular+Expression&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=phpbird.spaces.live.com&amp;amp;GT1=phpbird"&gt;</description><comments>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!347.entry#comment</comments><guid isPermaLink="true">http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!347.entry</guid><pubDate>Sun, 22 Oct 2006 15:15:37 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://phpbird.spaces.live.com/blog/cns!5BEECCF55EC42123!347/comments/feed.rss</wfw:commentRss><wfw:comment>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!347.entry#comment</wfw:comment><dcterms:modified>2006-10-22T15:15:37Z</dcterms:modified></item><item><title>在PHP中使用与Perl兼容的正则表达式</title><link>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!346.entry</link><description>&lt;div&gt;
&lt;div&gt;&lt;span style="font-weight:bold"&gt;1 前言&lt;/span&gt;&lt;br&gt;
&lt;div&gt;PHP被大量的应用于Web的后台CGI开发，通常是在用户数据数据之后得出某种结果，但是如果用户输入的数据不正确，就会出现问题，比如说某人的生日是 &amp;quot;2月30日&amp;quot;！那应该怎么样来检验暑假是否正确呢？ 在PHP中加入了正则表达式的支持，让我们可以十分方便的进行数据匹配。 &lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;2 什么是正则表达式：&lt;/span&gt;&lt;br&gt;
&lt;div&gt;简单的说，正则表达式是一种可以用于模式匹配和替换的强大工具。在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则表达式的痕迹，例如： Perl或PHP脚本语言。此外，JavaScript这种客户端的脚本语言也提供了对正则表达式的支持，现在正则表达式已经成为了一个通用的概念和工具，被各类技术人员所广泛使用。 &lt;br&gt;&lt;/div&gt;
&lt;div&gt;在某个Linux网站上面有这样的话：&amp;quot;如果你问一下Linux爱好者最喜欢什么，他可能会回答正则表达式；如果你问他最害怕什么，除了繁琐的安装配置外他肯定会说正则表达式。&amp;quot; &lt;br&gt;&lt;/div&gt;
&lt;div&gt;正如上面说的，正则表达式看起来非常复杂，让人害怕，大多数的PHP初学者都会跳过这里，继续下面的学习，但是PHP中的正则表达式有着可以利用模式匹配找到符合条件的字符串、判断字符串是否合乎条件或者用指定的字符串来替代符合条件的字符串等强大的功能，不学实在太可惜了…… &lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;3 正则表达式的基本语法：&lt;/span&gt;&lt;br&gt;
&lt;div&gt; 一个正则表达式，分为三个部分：分隔符，表达式和修饰符。 &lt;br&gt;&lt;/div&gt;
&lt;div&gt;分隔符可以是除了特殊字符以外的任何字符（比如&amp;quot;/ !&amp;quot;等等），常用的分隔符是&amp;quot;/&amp;quot;。表达式由一些特殊字符（特殊字符详见下面）和非特殊的字符串组成，比如&amp;quot;[a-z0-9_-]+@[a-z0-9_ -.]+&amp;quot;可以匹配一个简单的电子邮件字符串。修饰符是用来开启或者关闭某种功能/模式。&lt;br&gt;&lt;br&gt;下面就是一个完整的正则表达式的例子： &lt;br&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table style="table-layout:fixed;word-break:break-all" cellspacing=0 cellpadding=0 width="100%" border=0&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;hello&lt;/font&gt;&lt;font color="#007700"&gt;.+?&lt;/font&gt;&lt;font color="#0000bb"&gt;hello&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;is&lt;/font&gt; &lt;/font&gt;&lt;/code&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;&lt;br&gt;&lt;/div&gt;
&lt;div&gt;上面的正则表达式&amp;quot;/&amp;quot;就是分隔符，两个&amp;quot;/&amp;quot;之间的就是表达式，第二个&amp;quot;/&amp;quot;后面的字符串&amp;quot;is&amp;quot;就是修饰符。 &lt;br&gt;&lt;/div&gt;
&lt;div&gt;在表达式中如果含有分隔符，那么就需要使用转义符号&amp;quot;\&amp;quot;，比如&amp;quot;/hello.+?\/hello/is&amp;quot;。转义符号除了用于分隔符外还可以执行特殊字符，全部由字母构成的特殊字符都需要&amp;quot;\&amp;quot;来转义，比如&amp;quot;\d&amp;quot;代表全体数字。&lt;br&gt;&lt;/div&gt;&lt;br&gt;
&lt;hr style="width:100%;height:2px"&gt;
&lt;br&gt;&lt;span style="font-weight:bold"&gt;4 正则表达式的特殊字符：&lt;/span&gt;&lt;br&gt;
&lt;div&gt;正则表达式中的特殊字符分为元字符、定位字符等等。 &lt;br&gt;&lt;/div&gt;
&lt;div&gt;元字符是正则表达式中一类有特殊意义的字符，用来描述其前导字符（即元字符前面的字符）在被匹配的对象中出现的方式。元字符本身是一个个单一的字符，但是不同或者相同的元字符组合起来可以构成大的元字符。 &lt;br&gt;&lt;br&gt;&lt;/div&gt;&lt;span style="font-weight:bold"&gt;*元字符： &lt;/span&gt;&lt;br&gt;
&lt;ol&gt;
&lt;li&gt;大括号：大括号用来精确指定匹配元字符出现的次数，例如&amp;quot;/pre{1,5}/&amp;quot;表示匹配的对象可以是&amp;quot;pre&amp;quot;、&amp;quot;pree&amp;quot;、&amp;quot;preeeee&amp;quot;这样在&amp;quot;pr&amp;quot;后面出现1个到5个&amp;quot;e&amp;quot;的字符串。或者&amp;quot;/pre{,5}/&amp;quot;代表pre出现0此到5次之间。 
&lt;li&gt;加号：&amp;quot;+&amp;quot;字符用来匹配元字符前的字符出现一次或者多次。例如&amp;quot;/ac+/&amp;quot;表示被匹配的对象可以是&amp;quot;act&amp;quot;、&amp;quot;account&amp;quot;、&amp;quot;acccc&amp;quot;等在&amp;quot;a&amp;quot;后面出现一个或者多个&amp;quot;c&amp;quot;的字符串。&amp;quot;+&amp;quot;相当于&amp;quot;{1,}&amp;quot;。 
&lt;li&gt;星号：&amp;quot;*&amp;quot;字符用来匹配元字符前的字符出现零次或者多次。例如&amp;quot;/ac*/&amp;quot;表示被匹配的对象可以是&amp;quot;app&amp;quot;、&amp;quot;acp&amp;quot;、&amp;quot;accp&amp;quot;等在&amp;quot;a&amp;quot;后面出现零个或者多个&amp;quot;c&amp;quot;的字符串。&amp;quot;*&amp;quot;相当于&amp;quot;{0,}&amp;quot;。 
&lt;li&gt;问号：&amp;quot;?&amp;quot;字符用来匹配元字符前的字符出现零次或者1次。例如&amp;quot;/ac?/&amp;quot;表示匹配的对象可以是&amp;quot;a&amp;quot;、&amp;quot;acp&amp;quot;、&amp;quot;acwp&amp;quot;这样在&amp;quot;a&amp;quot;后面出现零个或者1个&amp;quot;c&amp;quot;的字符串。&amp;quot;?&amp;quot;在正则表达式中还有一个非常重要的作用，即&amp;quot;贪婪模式&amp;quot;。 
&lt;li&gt;还有两个很重要的特殊字符就是&amp;quot;[ ]&amp;quot;。他们可以匹配&amp;quot;[]&amp;quot;之中出现过的字符，比如&amp;quot;/[az]/&amp;quot;可以匹配单个字符&amp;quot;a&amp;quot;或者&amp;quot;z&amp;quot;；如果把上面的表达式改成这样&amp;quot;/[a-z]/&amp;quot;，就可以匹配任何单个小写字母，比如&amp;quot;a&amp;quot;、&amp;quot;b&amp;quot;等等。 
&lt;li&gt;如果在&amp;quot;[]&amp;quot;中出现了&amp;quot;^&amp;quot;，代表本表达式不匹配&amp;quot;[]&amp;quot;内出现的字符，比如&amp;quot;/[^a-z]/&amp;quot;不匹配任何小写字母！并且正则表达式给出了几种&amp;quot;[]&amp;quot;的默认值： &lt;br&gt;&lt;/ol&gt;
&lt;blockquote dir=ltr&gt;
&lt;p&gt;
&lt;table style="table-layout:fixed;word-break:break-all" cellspacing=0 cellpadding=0 width="100%" border=0&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;alpha&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何字母 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;alnum&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何字母和数字 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;digit&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何数字 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;space&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配空格符 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;upper&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何大写字母 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;lower&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何小写字母 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;punct&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何标点符号 &lt;br&gt;&lt;/font&gt;&lt;font color="#007700"&gt;[:&lt;/font&gt;&lt;font color="#0000bb"&gt;xdigit&lt;/font&gt;&lt;font color="#007700"&gt;:]&lt;/font&gt;&lt;font color="#0000bb"&gt;：匹配任何16进制数字&lt;/font&gt; &lt;/font&gt;&lt;/code&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;*另外下面这些特殊字符在转义符号&amp;quot;\&amp;quot;转义后代表的含义如下： &lt;/span&gt;&lt;br&gt;&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;s：匹配单个的空格符 
&lt;li&gt;S：用于匹配除单个空格符之外的所有字符。 
&lt;li&gt;d：用于匹配从0到9的数字，相当于&amp;quot;/[0-9]/&amp;quot;。 
&lt;li&gt;w：用于匹配字母，数字或下划线字符，相当于&amp;quot;/[a-zA-Z0-9_]/&amp;quot;。 
&lt;li&gt;W：用于匹配所有与w不匹配的字符，相当于&amp;quot;/[^a-zA-Z0-9_]/&amp;quot;。 
&lt;li&gt;D：用于匹配任何非10进制的数字字符。 
&lt;li&gt;.：用于匹配除换行符之外的所有字符，如果经过修饰符&amp;quot;s&amp;quot;的修饰，&amp;quot;.&amp;quot;可以代表任意字符。 &lt;br&gt;&lt;/ol&gt;利用上面的特殊字符可以很方便的表达一些比较繁琐的模式匹配。例如&amp;quot;/\d0000/&amp;quot;利用上面的正则表达式可以匹配万以上，十万一下的整数字符串。 &lt;br&gt;&lt;br&gt;
&lt;hr style="width:100%;height:2px"&gt;
&lt;br&gt;&lt;span style="font-weight:bold"&gt;*定位字符： &lt;/span&gt;&lt;br&gt;定位字符是正则表达式中又一类非常重要的字符，它的主要作用是用于对字符在匹配对象中的位置进行描述。 &lt;br&gt;
&lt;ol&gt;
&lt;li&gt;^：表示匹配的模式出现在匹配对象的开头（和在&amp;quot;[]&amp;quot;里面不同） 
&lt;li&gt;$：表示匹配的模式出现在匹配对象的末尾 
&lt;li&gt;空格：表示匹配的模式出现在开始和结尾的两个边界之一 
&lt;li&gt;&amp;quot;/^he/&amp;quot;：可以匹配以&amp;quot;he&amp;quot;字符开头的字符串，比如hello、height等等； 
&lt;li&gt;&amp;quot;/he$/&amp;quot;：可以匹配以&amp;quot;he&amp;quot;字符结尾的字符串即she等； 
&lt;li&gt;&amp;quot;/ he/&amp;quot;：空格开头，和^的作用一样，匹配以he开头的字符串； 
&lt;li&gt;&amp;quot;/he /&amp;quot;：空格结束，和$的作用一样，匹配以he结尾的字符串； 
&lt;li&gt;&amp;quot;/^he$/&amp;quot;：表示只和字符串&amp;quot;he&amp;quot;匹配。 &lt;br&gt;&lt;/ol&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;*括号： &lt;/span&gt;&lt;br&gt;正则表达式除了可以用户匹配，还可以用括号&amp;quot;()&amp;quot;来记录需要的信息，储存起来，给后面的表达式读取。&lt;br&gt;&lt;br&gt;
&lt;div&gt;比如： &lt;br&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table style="table-layout:fixed;word-break:break-all" cellspacing=0 cellpadding=0 width="100%" border=0&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt;&lt;font color="#007700"&gt;/^([&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;zA&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;Z0&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;9_&lt;/font&gt;&lt;font color="#007700"&gt;-]+)@([&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;zA&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;Z0&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;9_&lt;/font&gt;&lt;font color="#007700"&gt;-]+)(.[&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;zA&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;Z0&lt;/font&gt;&lt;font color="#007700"&gt;-&lt;/font&gt;&lt;font color="#0000bb"&gt;9_&lt;/font&gt;&lt;font color="#007700"&gt;-])$/&lt;/font&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt; &lt;/font&gt;&lt;/code&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;&lt;/div&gt;&lt;br&gt;就是记录邮件地址的用户名，和邮件地址的服务器地址（形式为username@server.com之类的），在后面如果想要读取记录下来的字符串，只是需要用&amp;quot;转义符＋记录的次序&amp;quot;来读取。比如&amp;quot;\\1&amp;quot;就相当于第一个&amp;quot;[a-zA-Z0-9_-]+ &amp;quot;，&amp;quot;\\2&amp;quot;相当于第二个([a-zA-Z0-9_-]+)，&amp;quot;\\3&amp;quot;就是第三个(.[a-zA-Z0-9_-])。但是在PHP中，&amp;quot;\&amp;quot;是一个特殊的字符，需要转义，所以&amp;quot;\1&amp;quot;到了PHP的表达式中就应该写成&amp;quot;\\\\1&amp;quot;。 &lt;br&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;其他特殊符号： &lt;/span&gt;&lt;br&gt;&amp;quot;|&amp;quot;：或符号&amp;quot;|&amp;quot;和PHP里面的或一样，不过是一个&amp;quot;|&amp;quot;，而不是PHP的两个&amp;quot;||&amp;quot;！意思就是可以是某个字符或者另一个字符串，比如&amp;quot;/abcd|dcba/&amp;quot;可能匹配&amp;quot;abcd&amp;quot;或者&amp;quot;dcba&amp;quot;。&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;span style="font-weight:bold"&gt;5 贪婪模式：&lt;/span&gt;&lt;br&gt;前面在元字符中提到过&amp;quot;?&amp;quot;还有一个重要的作用，即&amp;quot;贪婪模式&amp;quot;，什么是&amp;quot;贪婪模式&amp;quot;呢？ 比如我们要匹配以字母&amp;quot;a&amp;quot;开头字母&amp;quot;b&amp;quot;结尾的字符串，但是需要匹配的字符串在&amp;quot;a&amp;quot;后面含有很多个&amp;quot;b&amp;quot;，比如&amp;quot;a bbbbbbbbbbbbbbbbb&amp;quot;，那正则表达式是会匹配第一个&amp;quot;b&amp;quot;还是最后一个&amp;quot;b&amp;quot;呢？如果你使用了贪婪模式，那么会匹配到最后一个&amp;quot;b&amp;quot;，反之只是匹配到第一个&amp;quot;b&amp;quot;。 &lt;br&gt;&lt;br&gt;
&lt;div&gt;使用贪婪模式的表达式如下： &lt;br&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table style="table-layout:fixed;word-break:break-all" cellspacing=0 cellpadding=0 width="100%" border=0&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;.+?&lt;/font&gt;&lt;font color="#0000bb"&gt;b&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;br&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;.+&lt;/font&gt;&lt;font color="#0000bb"&gt;b&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;U&lt;/font&gt; &lt;/font&gt;&lt;/code&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;&lt;/div&gt;&lt;br&gt;
&lt;div&gt;不使用贪婪模式的如下： &lt;br&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table style="table-layout:fixed;word-break:break-all" cellspacing=0 cellpadding=0 width="100%" border=0&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;a&lt;/font&gt;&lt;font color="#007700"&gt;.+&lt;/font&gt;&lt;font color="#0000bb"&gt;b&lt;/font&gt;&lt;font color="#007700"&gt;/&lt;/font&gt;&lt;font color="#0000bb"&gt;&lt;/font&gt; &lt;/font&gt;&lt;/code&gt;&lt;/tbody&gt;&lt;/table&gt;上面使用了一个修饰符U，详见下面的部分。&lt;br&gt;&lt;/div&gt;&lt;br&gt;
&lt;hr style="width:100%;height:2px"&gt;
&lt;br&gt;&lt;span style="font-weight:bold"&gt;6 修饰符：&lt;/span&gt;&lt;br&gt;在正则表达式里面的修饰符可以改变正则的很多特性，使得正则表达式更加适合你的需要（注意：修饰符对于大小写是敏感的，这意味着&amp;quot;e&amp;quot;并不等于&amp;quot;E&amp;quot;）。正则表达式里面的修饰符如下： &lt;br&gt;
&lt;ol&gt;
&lt;li&gt;i ：如果在修饰符中加上&amp;quot;i&amp;quot;，则正则将会取消大小写敏感性，即&amp;quot;a&amp;quot;和&amp;quot;A&amp;quot; 是一样的。 
&lt;li&gt;m：默认的正则开始&amp;quot;^&amp;quot;和结束&amp;quot;$&amp;quot;只是对于正则字符串如果在修饰符中加上&amp;quot;m&amp;quot;，那么开始和结束将会指字符串的每一行：每一行的开头就是&amp;quot;^&amp;quot;，结尾就是&amp;quot;$&amp;quot;。 
&lt;li&gt;s：如果在修饰符中加入&amp;quot;s&amp;quot;，那么默认的&amp;quot;.&amp;quot;代表除了换行符以外的任何字符将会变成任意字符，也就是包括换行符！ 
&lt;li&gt;x：如果加上该修饰符，表达式中的空白字符将会被忽略，除非它已经被转义。 
&lt;li&gt;e：本修饰符仅仅对于replacement有用，代表在replacement中作为PHP代码。 
&lt;li&gt;A：如果使用这个修饰符，那么表达式必须是匹配的字符串中的开头部分。比如说&amp;quot;/a/A&amp;quot;匹配&amp;quot;abcd&amp;quot;。 
&lt;li&gt;E：与&amp;quot;m&amp;quot;相反，如果使用这个修饰符，那么&amp;quot;$&amp;quot;将匹配绝对字符串的结尾，而不是换行符前面，默认就打开了这个模式。 
&lt;li&gt;U：和问号的作用差不多，用于设置&amp;quot;贪婪模式&amp;quot;。 &lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=6624457456137543971&amp;page=RSS%3a+%e5%9c%a8PHP%e4%b8%ad%e4%bd%bf%e7%94%a8%e4%b8%8ePerl%e5%85%bc%e5%ae%b9%e7%9a%84%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=phpbird.spaces.live.com&amp;amp;GT1=phpbird"&gt;</description><comments>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!346.entry#comment</comments><guid isPermaLink="true">http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!346.entry</guid><pubDate>Sun, 22 Oct 2006 15:03:23 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://phpbird.spaces.live.com/blog/cns!5BEECCF55EC42123!346/comments/feed.rss</wfw:commentRss><wfw:comment>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!346.entry#comment</wfw:comment><dcterms:modified>2006-10-22T15:03:23Z</dcterms:modified></item><item><title>access内置函数:(适用access2000)</title><link>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!339.entry</link><description>&lt;div&gt;▲日期/时间&lt;br&gt;CDate  将字符串转化成为日期 select CDate(&amp;quot;2005/4/5&amp;quot;)&lt;br&gt;Date  返回当前日期&lt;br&gt;DateAdd  将指定日期加上某个日期select dateAdd(&amp;quot;d&amp;quot;,30,Date())将当前日期加上30天,其中d可以换为yyyy或H等&lt;br&gt;DateDiff 判断两个日期之间的间隔 select DateDiff(&amp;quot;d&amp;quot;,&amp;quot;2006-5-1&amp;quot;,&amp;quot;2006-6-1&amp;quot;)返回31,其中d可以换为yyyy,m,H等&lt;br&gt;DatePart 返回日期的某个部分 select DatePart(&amp;quot;d&amp;quot;,&amp;quot;2006-5-1&amp;quot;)返回1,即1号，d也可以换为yyyy或m&lt;br&gt;Day  返回日期的d部分,等同于datepart的d部分&lt;br&gt;Hour  返回日期的小时&lt;br&gt;IsDate  判断是否是日期,是日期返回-1,不是日期返回0&lt;br&gt;Minute  返回日期的分钟部分&lt;br&gt;Month  返回日期的月份部分&lt;br&gt;Now  返回当前时间(完整时间，包括年月日 小时分秒)&lt;br&gt;Second  返回日期的秒部分&lt;br&gt;Time  返回当前的时间部分(即除去年/月/日的部分)&lt;br&gt;Weekday  返回某个日期的当前星期(星期天为1,星期一为2,星期二为3...)，例如select weekday(now());&lt;br&gt;Year  返回某个日期的年份&lt;/div&gt;
&lt;div&gt;▲检查&lt;br&gt;IsEmpty  检测是否为空(不过经测试，不管什么情况，都返回0)&lt;br&gt;IsNull  检测是否为Null值，null值返回0，非null值返回-1&lt;br&gt;IsNumeric 检测是否为数字,是数字返回-1，否则返回0&lt;/div&gt;
&lt;div&gt;算术&lt;br&gt;Abs   绝对值&lt;br&gt;Atn   返正切值。&lt;br&gt;Cos   余弦值&lt;br&gt;Exp   返回 e 的给定次幂。&lt;br&gt;Fix   返回数字的整数部分(即小数部分完全截掉)&lt;br&gt;Int  将数字向下取整到最接近的整数。(其实等同于Fix)&lt;br&gt;Log  返回以E为底的对数值&lt;br&gt;Rnd  返回一个0到1之间的随机数值&lt;br&gt;Sgn  返回数字的正负符号(正数返回1,负数返回-1,0值返回0)&lt;br&gt;Sin  正弦值&lt;br&gt;Sqr  返回平方根值&lt;br&gt;Tan   正切值&lt;/div&gt;
&lt;div&gt;▲程序流程&lt;br&gt;Choose  根据第一参数，返回后面字符串组的值,Select Choose(1,&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;,&amp;quot;c&amp;quot;)返回a,将1改成2后，返回b,改成3后，返回c(第一个参数也可以是某个字段)&lt;br&gt;IIF  根据表达式返回特定的值 Select IIF(&amp;quot;3&amp;gt;1&amp;quot;,&amp;quot;OK&amp;quot;,&amp;quot;False&amp;quot;)，返回OK&lt;/div&gt;
&lt;div&gt;▲Sql合计函数&lt;br&gt;Avg  取字段平均值&lt;br&gt;Count  统计记录条数&lt;br&gt;Max  取字段最大值&lt;br&gt;Min  取字段最小值&lt;br&gt;StDev  估算样本的标准差（忽略样本中的逻辑值和文本）。&lt;br&gt;StDevP  计算以参数形式（忽略逻辑值和文本）给出的整个样本总体的标准偏差。&lt;br&gt;Sum  计算字段的总合&lt;br&gt;Var  估算样本方差（忽略样本中的逻辑值和文本）。&lt;br&gt;VarP  计算整个样本总体的方差（忽略样本总体中的逻辑值和文本）。&lt;/div&gt;
&lt;div&gt;&lt;br&gt;▲文本&lt;br&gt;Asc   返回字母的Acsii值，select Asc(&amp;quot;A&amp;quot;)返回65&lt;br&gt;Chr   将ascii值转换到字符 select chr(65)返回&amp;quot;A&amp;quot;&lt;br&gt;Format   格式化字符串，Select Format(now(),'yyyy-mm-dd')返回类似于&amp;quot;2005-04-03&amp;quot; ,Select Format(3/9,&amp;quot;0.00&amp;quot;)返回0.33&lt;br&gt;InStr   查询子串在字符串中的位置 select Instr(&amp;quot;abc&amp;quot;,&amp;quot;a&amp;quot;)返回1,select Instr(&amp;quot;abc&amp;quot;,&amp;quot;f&amp;quot;)返回0 &lt;br&gt;LCase  返回字符串的小写形式 &lt;br&gt;Left  左截取字符串&lt;br&gt;Len  返回字符串长度&lt;br&gt;LTrim  左截取空格&lt;br&gt;Mid    取得子字符串 select mid(&amp;quot;123&amp;quot;,1,2) as midDemo 返回12&lt;br&gt;Right  右截取字符串&lt;br&gt;RTrim  右截取空格&lt;br&gt;Space  产生空格 select Space(4)返回4个空格&lt;br&gt;StrComp  比较两个字符串是否内容一致(不区分大小写)select StrComp(&amp;quot;abc&amp;quot;,&amp;quot;ABC&amp;quot;)返回0,select StrComp(&amp;quot;abc&amp;quot;,&amp;quot;123&amp;quot;)返回-1&lt;br&gt;Trim  截取字符串两头的空格&lt;br&gt;UCase  将字符串转大写&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=6624457456137543971&amp;page=RSS%3a+access%e5%86%85%e7%bd%ae%e5%87%bd%e6%95%b0%3a(%e9%80%82%e7%94%a8access2000)&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=phpbird.spaces.live.com&amp;amp;GT1=phpbird"&gt;</description><comments>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!339.entry#comment</comments><guid isPermaLink="true">http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!339.entry</guid><pubDate>Tue, 26 Sep 2006 04:06:26 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://phpbird.spaces.live.com/blog/cns!5BEECCF55EC42123!339/comments/feed.rss</wfw:commentRss><wfw:comment>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!339.entry#comment</wfw:comment><dcterms:modified>2006-09-26T04:06:26Z</dcterms:modified></item><item><title>Python 挺有意思的</title><link>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!186.entry</link><description>&lt;div&gt;这一段在学习python，挺不错的一个东西。&lt;/div&gt;
&lt;div&gt;3行代码居然就可以起来一个http的server&lt;/div&gt;
&lt;div&gt;就是靠缩进来代替括号挺BT的。：（&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=6624457456137543971&amp;page=RSS%3a+Python+%e6%8c%ba%e6%9c%89%e6%84%8f%e6%80%9d%e7%9a%84&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=phpbird.spaces.live.com&amp;amp;GT1=phpbird"&gt;</description><comments>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!186.entry#comment</comments><guid isPermaLink="true">http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!186.entry</guid><pubDate>Sat, 18 Mar 2006 17:16:23 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://phpbird.spaces.live.com/blog/cns!5BEECCF55EC42123!186/comments/feed.rss</wfw:commentRss><wfw:comment>http://phpbird.spaces.live.com/Blog/cns!5BEECCF55EC42123!186.entry#comment</wfw:comment><dcterms:modified>2006-03-18T17:17:04Z</dcterms:modified></item></channel></rss>