Hui's profilephpbird's spacePhotosBlogListsMore ![]() | Help |
|
2/7/2007 IBM常见软件进程在使用IBM THINKPAD原装系统时觉得系统进程太多影响机器速度,下面就列出了IBM常见软件进程,可以参考对比删除一下不必要的进程来释放一些系统资源: 下面进行解析: 1、S3tray2,对应的是s3tray2.exe,S3 Video card task tray utility. Not specifically required for Windows to operate.看来可以不启用。 2、bluetoothauthenticationAgent,这个是蓝牙所用,可以临时不用,需要时启用即可。 3、TpShocks,IBM特有的硬盘防护的,必须启用。 4、tphotkey,IBM的特殊功能键的驱动,必须启用。 5、BMMLREF,对应的是thinkpad\utilities\bmmlref.exe, Related to IBM Thinkpad Power Management Utility。我想可有可无吧。 6、TPMAPHELPER,对应的是thinkpad\utilities\tpkmapap.exe –helper,可能是IBM的keyboard Customizer Utility(定制键盘设置)的帮助信息。我想可以不启用吧。 7、tp4ex.exe TP4EX 3 Adds accessibility options for an IBM TrackPoint ,我想可以保留,特别是不外接常规鼠标时; 8、EZEJMNAP,对应的是thinkpad\utilities\ezejmnap.exe,好像是EasyEject Utility(关闭连接的设备以便拆卸),For IBM Thinkpad Notebooks. Quote: "The IBM ThinkPad EasyEject Utility makes removing multiple devices from your computer faster and easier by enabling you to stop more than one device at once, rather than stopping each device individually". Available via Start -> Programs。那我想平时可以不启用。 9、tp4ex.exe是指点杆的辅助设置,不用可以删掉 10、AGRSMMSG,对应的是AGRSMMSG.exe,IBM AMR modem driver,Modem software from Agere.com。我想可以平时不启用了。 11、ATI显卡功能图标,我想可以平时不启用,需要时再启用了。 12、ATIMODEChange,对应的是ati2mdxx.exe,System Tray icon to access ATI graphics card settings and the Hydravision Desktop Manager。我想平时可以不启用。 13、tgcmd,This part ensures the software is installed correctly (similar to an installation wizard) as reported by Cox.可以不启用。应该可以直接删除此项。 14、TPHKMGR是管Fn+F×键时屏幕显示的,删掉热键功能还是有的,但看着不爽,建议不要删除 15、tp4serv.exe是指点杆的设置,比如轻点当做鼠标双击、拖曳、移动速度、放大镜……不要删除 16、ibmmessages,是IBM的信使中心,Allows IBM to push messages onto users' computers. Quote: "The Access IBM Message Center can display messages to inform you about software and solutions available from IBM as well as messages from IBM eSupport"。完全可以不需要启动。 17、UpdateManager,对应的是common files\sonic\update manager\sgtray.exe,StorageGuard from Veritas. Free utility that integrates with Backup MyPC (formerly Backup Exec Desktop), Simple Backup and MS Backup. Provides system tray access and background monitoring - warning you of files that haven't recently been backed up. Required unless you backup manually on a regular basis or have scheduled backups。应该是启用了IBM快速备份功能的需要保留,若没有启用就不需要了。 18、dla,对应system32\dla\tfswctrl.exe,Drive letter access to HP's and Veritas' version of DirectCD. Does the same thing as DirectCD. From HP - "This is a needed file as it controles the readability of the Combo drives. Without this file loading the end user will be able to burn CD's but wont be able to read them. The drive itself will be able to read store bought master Cd's without the file but not burnt ones"。特别是有combo的应该启动。 19、QCWLicon,对应thinkpad\connectUtilities\ACWLICON.ext,Used by IBM Thinkpad laptops with built-in wireless card (802.11). System Tray icon that provides a shortcut to "Wireless Connection Status" and allows to turn WL on and off。无线上网所需的,平时可以不启用,需要时再启用了。 20、BMMGAG,IBM的电源管理程序,必须启用。 21、新式输入法指示器图标,因为我就只用一种输入法,所以我就不启用这个了。 22、IBM RecordNow,刻录软件,必须启用。当然平时可以不启用,需要刻录了再启用也行。 23、又是一个tgcmd,同13,完全可以不需要启动。 24、BMGAG和BMMLREF是电源管理的,关了电池的预设主题就没有用了,不要删除 25、ctfmon是系统输入法的图标,别删 26、ATIPTA、S3tray和ati2mdxxx是显卡的快捷面板和2D模式,不用可以删除,用了再改回来也无所谓,反正优化大师回复方便 27、EZEJMNAP是管IBM热插拔设备的,X31是没有UltraBay的,你要是不用IBM的底座也可以删掉 28、Bluetooth×××××要是你的型号没有蓝牙,可以删掉 29、AGRSMMSG具体功能不很清楚,但肯定是有关调制解调器的,现在很多人不用电话线上网了,不用猫的人也可以删除 30、TPKMAPMN是管理自定义键盘热键的,如果你没有设置WIN键,也不需要给外接键盘设置IBM的功能键,可以删除 31、tgcmd和ibmmessage是support.com软件和IBM消息中心的,个人觉得比较垃圾,我反正是不用的 如果你装了诺顿,肯定会有ccApp和ccRegVfy,都不要删除 修改开机加载项可以使用注册表:在开始里运行 regedit,找到 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 分别修改里面的加载项。也可以使用别的软件,比如TuneUp Utilities、兔子等。 其他还需保留的加载项比如杀毒软件,自己的一些程序比如QQ等。这些自己看着办吧.总的来说,对IBM的加载项,一般只需要加载电池管理程序、热键及硬盘保护程序APS. 对于其他的本本,下面给一个大致的原则,大家可以参考一下: 需要保留的程序的基本标准: 1. 防病毒相关程序;2. 系统管理程序,如电源管理程序;3. 快捷键程序;4. 自己希望自动启动的程序;5. 怎么关也关闭不了的程序。 ATIPTA ATI Desktop Control Panel from ATI Technologies, Inc. Located in "C:\Program Files\ATI Technologies\ATI Control Panel\". 一般不需要 Ati2mdxx.exe For ATI video cards. System Tray access to display mode changing, 一般不需要 AGRSMMSG agrsmmsg.exe is the SoftModem Messaging Applet for your AMR modem. 一般不需要 VBluetoothAuthenticationAgent Associated with a Bluetooth adapter. 一般不需要 BMMGAG Displays a battery gauge icon in the Taskbar (not the System Tray). Provides shortcuts to IBM's proprietary power saving settings and to a battery information window. 建议保留 BMMLREF Battery Manager for IBM ThinkPad laptops 建议保留 JBMMMONWND IBM Battery Information 一般不需要 EXSHOW95.EXE Support software for some of the Kensington mice. Provides access to extra features like those available with enhanced Logitech and MS devices 一般不需要 QCWLIcon Used by IBM Thinkpad laptops with built-in wireless card (802.11). System Tray icon that provides a shortcut to "Wireless Connection Status" and allows to turn WL on and off 一般不需要 cS3TRAY2 S3 display configuration taskbar utility for S3 chipset based graphics cards. Can be run from Start-> Settings -> Control Panel -> Display 一般不需要 EZEJMNAP ezejmnap.exe is component of the ThinkPad EasyEject Utility,It manages to devices connected to your ThinkPad and makes it easier to disconnect multiple devices from your system. 一般不需要 SynTPEnh syntpenh.exe is a process installed alongside the Synaptics TouchPad for laptop computer touchpads. Provides additional configurations and support, and is essential on some machines for the functioning of this input device. 一般不需要 SynTPLpr Syntplpr.exe is called Synaptics touchpad driver helper, it is a TouchPad Driver Helper Application that is essential for touchpad to work properly. 一般不需要 TP4EX tp4ex.exe is a process from IBM providing accessibility options for an IBM TrackPoint. 一般不需要 TPHKMGR It allows the configuration of the FN keys your IBM Thinkpad laptop. 一般不需要 TPHOTKEY (TPHKMGR) Activates "ThinkPad Help" when the "Thinkpad key" is pressed on an IBM ThinkPad laptop. Also activates the audio buttons (volume up/down, mute) on models such as the Thinkpad T30 建议保留 TPKMAPHELPER IBM ThinkPad Help process 一般不需要 TpShocks Responsible for controlling the IBM Hard Drive Active Protection system found on newer models of IBM Thinkpads, including T41, T42, X40, R50, and R51. 建议保留 12/11/2006 Oracle的sql*plusOracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。
我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。 除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。 下面就介绍一下一些常用的sql*plus命令: 1. 执行一个SQL脚本文件
SQL>start file_name SQL>@ file_name 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。 @与@@的区别是什么? @等于start命令,用来运行一个sql脚本文件。 @命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件。 @@用在sql脚本文件中,用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下,而不用指定要执行sql脚本文件的全路径,也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件,该命令一般用在脚本文件中。 如:在c:temp目录下有文件start.sql和nest_start.sql,start.sql脚本文件的内容为: @@nest_start.sql - - 相当于@ c:tempnest_start.sql 则我们在sql*plus中,这样执行: SQL> @ c:tempstart.sql 2. 对当前的输入进行编辑 SQL>edit 3. 重新运行上一次运行的sql语句
SQL>/ 4. 将显示的内容输出到指定文件
SQL> SPOOL file_name 在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。 5. 关闭spool输出
SQL> SPOOL OFF 只有关闭spool输出,才会在输出文件中看到输出的内容。 6.显示一个表的结构
SQL> desc table_name 7. COL命令:
主要格式化列的显示形式。 该命令有许多选项,具体如下: COL[UMN] [{ column|expr} [ option ...]] Option选项可以是如下的子句: ALI[AS] alias CLE[AR] FOLD_A[FTER] FOLD_B[EFORE] FOR[MAT] format HEA[DING] text JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} LIKE { expr|alias} NEWL[INE] NEW_V[ALUE] variable NOPRI[NT]|PRI[NT] NUL[L] text OLD_V[ALUE] variable ON|OFF WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] 1). 改变缺省的列标题
COLUMN column_name HEADING column_heading For example: Sql>select * from dept; DEPTNO DNAME LOC ---------- ---------------------------- --------- 10 ACCOUNTING NEW YORK sql>col LOC heading location sql>select * from dept; DEPTNO DNAME location --------- ---------------------------- ----------- 10 ACCOUNTING NEW YORK 2). 将列名ENAME改为新列名EMPLOYEE NAME并将新列名放在两行上:
Sql>select * from emp Department name Salary ---------- ---------- ---------- 10 aaa 11 SQL> COLUMN ENAME HEADING ’Employee|Name’ Sql>select * from emp Employee Department name Salary ---------- ---------- ---------- 10 aaa 11 note: the col heading turn into two lines from one line. 3). 改变列的显示长度:
FOR[MAT] format Sql>select empno,ename,job from emp; EMPNO ENAME JOB ---------- ---------- --------- 7369 SMITH CLERK 7499 ALLEN SALESMAN 7521 WARD SALESMAN Sql> col ename format a40 EMPNO ENAME JOB ---------- ---------------------------------------- --------- 7369 SMITH CLERK 7499 ALLEN SALESMAN 7521 WARD SALESMAN 4). 设置列标题的对齐方式
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} SQL> col ename justify center SQL> / EMPNO ENAME JOB ---------- ---------------------------------------- --------- 7369 SMITH CLERK 7499 ALLEN SALESMAN 7521 WARD SALESMAN 对于NUMBER型的列,列标题缺省在右边,其它类型的列标题缺省在左边 5). 不让一个列显示在屏幕上
NOPRI[NT]|PRI[NT] SQL> col job noprint SQL> / EMPNO ENAME ---------- ---------------------------------------- 7369 SMITH 7499 ALLEN 7521 WARD 6). 格式化NUMBER类型列的显示:
SQL> COLUMN SAL FORMAT $99,990 SQL> / Employee Department Name Salary Commission ---------- ---------- --------- ---------- 30 ALLEN $1,600 300 7). 显示列值时,如果列值为NULL值,用text值代替NULL值
COMM NUL[L] text SQL>COL COMM NUL[L] text 8). 设置一个列的回绕方式
WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] COL1 -------------------- HOW ARE YOU? SQL>COL COL1 FORMAT A5
SQL>COL COL1 WRAPPED COL1 ----- HOW A RE YO U? SQL> COL COL1 WORD_WRAPPED
COL1 ----- HOW ARE YOU? SQL> COL COL1 WORD_WRAPPED
COL1 ----- HOW A 9). 显示列的当前的显示属性值
SQL> COLUMN column_name 10). 将所有列的显示属性设为缺省值
SQL> CLEAR COLUMNS 8. 屏蔽掉一个列中显示的相同的值
BREAK ON break_column SQL> BREAK ON DEPTNO SQL> SELECT DEPTNO, ENAME, SAL FROM EMP WHERE SAL < 2500 ORDER BY DEPTNO; DEPTNO ENAME SAL ---------- ----------- --------- 10 CLARK 2450 MILLER 1300 20 SMITH 800 ADAMS 1100 9. 在上面屏蔽掉一个列中显示的相同的值的显示中,每当列值变化时在值变化之前插入n个空行。
BREAK ON break_column SKIP n SQL> BREAK ON DEPTNO SKIP 1
SQL> / DEPTNO ENAME SAL ---------- ----------- --------- 10 CLARK 2450 MILLER 1300 20 SMITH 800
ADAMS 1100 10. 显示对BREAK的设置
SQL> BREAK 11. 删除6、7的设置
SQL> CLEAR BREAKS 12. Set 命令:
该命令包含许多子命令: SET system_variable value system_variable value 可以是如下的子句之一: APPI[NFO]{ON|OFF|text} ARRAY[SIZE] {15|n} AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n} AUTOP[RINT] {ON|OFF} AUTORECOVERY [ON|OFF] AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] BLO[CKTERMINATOR] {.|c} CMDS[EP] {;|c|ON|OFF} COLSEP {_|text} COM[PATIBILITY]{V7|V8|NATIVE} CON[CAT] {.|c|ON|OFF} COPYC[OMMIT] {0|n} COPYTYPECHECK {ON|OFF} DEF[INE] {&|c|ON|OFF} DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] ECHO {ON|OFF} EDITF[ILE] file_name[.ext] EMB[EDDED] {ON|OFF} ESC[APE] {|c|ON|OFF} FEED[BACK] {6|n|ON|OFF} FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL} FLU[SH] {ON|OFF} HEA[DING] {ON|OFF} HEADS[EP] {||c|ON|OFF} INSTANCE [instance_path|LOCAL] LIN[ESIZE] {80|n} LOBOF[FSET] {n|1} LOGSOURCE [pathname] LONG {80|n} LONGC[HUNKSIZE] {80|n} MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}] NEWP[AGE] {1|n|NONE} NULL text NUMF[ORMAT] format NUM[WIDTH] {10|n} PAGES[IZE] {24|n} PAU[SE] {ON|OFF|text} RECSEP {WR[APPED]|EA[CH]|OFF} RECSEPCHAR {_|c} SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ WRAPPED]|TRU[NCATED]}] SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]} SHOW[MODE] {ON|OFF} SQLBL[ANKLINES] {ON|OFF} SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]} SQLCO[NTINUE] {> |text} SQLN[UMBER] {ON|OFF} SQLPRE[FIX] {#|c} SQLP[ROMPT] {SQL>|text} SQLT[ERMINATOR] {;|c|ON|OFF} SUF[FIX] {SQL|text} TAB {ON|OFF} TERM[OUT] {ON|OFF} TI[ME] {ON|OFF} TIMI[NG] {ON|OFF} TRIM[OUT] {ON|OFF} TRIMS[POOL] {ON|OFF} UND[ERLINE] {-|c|ON|OFF} VER[IFY] {ON|OFF} WRA[P] {ON|OFF} 1). 设置当前session是否对修改的数据进行自动提交
SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} 2).在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句
SQL> SET ECHO {ON|OFF} 3).是否显示当前sql语句查询或修改的行数
SQL> SET FEED[BACK] {6|n|ON|OFF} 默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ,则不管查询到多少行都返回。当为off 时,一律不显示查询的行数 4).是否显示列标题
SQL> SET HEA[DING] {ON|OFF} 当set heading off 时,在每页的上面不显示列标题,而是以空白行代替 5).设置一行可以容纳的字符数
SQL> SET LIN[ESIZE] {80|n} 如果一行的输出内容大于设置的一行可容纳的字符数,则折行显示。 6).设置页与页之间的分隔
SQL> SET NEWP[AGE] {1|n|NONE} 当set newpage 0 时,会在每页的开头有一个小的黑方框。 当set newpage n 时,会在页和页之间隔着n个空行。 当set newpage none 时,会在页和页之间没有任何间隔。 7).显示时,用text值代替NULL值
SQL> SET NULL text 8).设置一页有多少行数
SQL> SET PAGES[IZE] {24|n} 如果设为0,则所有的输出内容为一页并且不显示列标题 9).是否显示用DBMS_OUTPUT.PUT_LINE包进行输出的信息。
SQL> SET SERVEROUT[PUT] {ON|OFF} 在编写存储过程时,我们有时会用dbms_output.put_line将必要的信息输出,以便对存储过程进行调试,只有将serveroutput变量设为on后,信息才能显示在屏幕上。 10).当SQL语句的长度大于LINESIZE时,是否在显示时截取SQL语句?a href="http://www.xxlinux.com/">Linux联盟收集整理
SQL> SET WRA[P] {ON|OFF}
当输出的行的长度大于设置的行的长度时(用set linesize n命令设置),当set wrap on时,输出行的多于的字符会另起一行显示,否则,会将输出行的多于字符切除,不予显示。 11).是否在屏幕上显示输出的内容,主要用与SPOOL结合使用。
SQL> SET TERM[OUT] {ON|OFF} 在用spool命令将一个大表中的内容输出到一个文件中时,将内容输出在屏幕上会耗费大量的时间,设置set termspool off后,则输出的内容只会保存在输出文件中,不会显示在屏幕上,极大的提高了spool的速度。 12).将SPOOL输出中每行后面多余的空格去掉
SQL> SET TRIMS[OUT] {ON|OFF} 13)显示每个sql语句花费的执行时间
set TIMING {ON|OFF} 14). 遇到空行时不认为语句已经结束,从后续行接着读入。
SET SQLBLANKLINES ON Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本: select deptno, empno, ename from emp where empno = '7788';
如果拷贝到sql*plus中执行, 就会出现错误。这个命令可以解决该问题 15).设置DBMS_OUTPUT的输出
SET SERVEROUTPUT ON BUFFER 20000 用dbms_output.put_line('strin_content');可以在存储过程中输出信息,对存储过程进行调试 如果想让dbms_output.put_line(' abc');的输出显示为: SQL> abc,而不是SQL>abc,则在SET SERVEROUTPUT ON后加format wrapped参数。 16). 输出的数据为html格式
set markup html 在8.1.7版本(也许是816? 不太确定)以后, sql*plus中有一个set markup html的命令, 可以将sql*plus的输出以html格式展现. 注意其中的spool on, 当在屏幕上输出的时候, 我们看不出与不加spool on有什么区别, 但是当我们使用spool filename 输出到文件的时候, 会看到spool文件中出现了等tag. 14.修改sql buffer中的当前行中,第一个出现的字符串 C[HANGE] /old_value/new_value SQL> l 1* select * from dept SQL> c/dept/emp 1* select * from emp 15.编辑sql buffer中的sql语句
EDI[T] 16.显示sql buffer中的sql语句,list n显示sql buffer中的第n行,并使第n行成为当前行
L[IST] [n] 17.在sql buffer的当前行下面加一行或多行
I[NPUT] 18.将指定的文本加到sql buffer的当前行后面
A[PPEND] SQL> select deptno, 2 dname 3 from dept; DEPTNO DNAME ---------- -------------- 10 ACCOUNTING 20 RESEARCH 30 SALES 40 OPERATIONS SQL> L 2
2* dname SQL> a ,loc 2* dname,loc SQL> L 1 select deptno, 2 dname,loc 3* from dept SQL> / DEPTNO DNAME LOC
---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 19.将sql buffer中的sql语句保存到一个文件中
SAVE file_name 20.将一个文件中的sql语句导入到sql buffer中
GET file_name 21.再次执行刚才已经执行的sql语句
RUN or / 22.执行一个存储过程
EXECUTE procedure_name 23.在sql*plus中连接到指定的数据库
CONNECT user_name/passwd@db_alias 24.设置每个报表的顶部标题
TTITLE 25.设置每个报表的尾部标题
BTITLE 26.写一个注释
REMARK [text] 27.将指定的信息或一个空行输出到屏幕上
PROMPT [text] 28.将执行的过程暂停,等待用户响应后继续执行
PAUSE [text] Sql>PAUSE Adjust paper and press RETURN to continue.
29.将一个数据库中的一些数据拷贝到另外一个数据库(如将一个表的数据拷贝到另一个数据库)
COPY {FROM database | TO database | FROM database TO database} {APPEND|CREATE|INSERT|REPLACE} destination_table [(column, column, column, ...)] USING query 30.不退出sql*plus,在sql*plus中执行一个操作系统命令:
HOST Sql> host hostname
该命令在windows下可能被支持。 31.在sql*plus中,切换到操作系统命令提示符下,运行操作系统命令后,可以再次切换回sql*plus:
! sql>!
$hostname $exit sql> 该命令在windows下不被支持。
32.显示sql*plus命令的帮助
HELP 如何安装帮助文件: Sql>@ ?sqlplusadminhelphlpbld.sql ?sqlplusadminhelphelpus.sql Sql>help index 33.显示sql*plus系统变量的值或sql*plus环境变量的值
Syntax SHO[W] option where option represents one of the following terms or clauses: system_variable ALL BTI[TLE] ERR[ORS] [{FUNCTION|PROCEDURE|PACKAGE|PACKAGE BODY| TRIGGER|VIEW|TYPE|TYPE BODY} [schema.]name] LNO PARAMETERS [parameter_name] PNO REL[EASE] REPF[OOTER] REPH[EADER] SGA SPOO[L] SQLCODE TTI[TLE] USER 1) . 显示当前环境变量的值:
Show all 2) . 显示当前在创建函数、存储过程、触发器、包等对象的错误信息
Show error 当创建一个函数、存储过程等出错时,变可以用该命令查看在那个地方出错及相应的出错信息,进行修改后再次进行编译。 3) . 显示初始化参数的值:
show PARAMETERS [parameter_name] 4) . 显示数据库的版本:
show REL[EASE] 5) . 显示SGA的大小
show SGA 6). 显示当前的用户名
show user 34.查询一个用户下的对象
SQL>select * from tab; SQL>select * from user_objects; 35.查询一个用户下的所有的表
SQL>select * from user_tables; 36.查询一个用户下的所有的索引
SQL>select * from user_indexes; 37. 定义一个用户变量 方法有两个: a. define b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]] OLD_V[ALUE] variable [NOPRI[NT]|PRI[NT]] 下面对每种方式给予解释:
a. Syntax DEF[INE] [variable]|[variable = text] 定义一个用户变量并且可以分配给它一个CHAR值。 assign the value MANAGER to the variable POS, type:
SQL> DEFINE POS = MANAGER assign the CHAR value 20 to the variable DEPTNO, type:
SQL> DEFINE DEPTNO = 20 list the definition of DEPTNO, enter
SQL> DEFINE DEPTNO ――――――――――――――― DEFINE DEPTNO = ”20” (CHAR) 定义了用户变量POS后,就可以在sql*plus中用&POS或&&POS来引用该变量的值,sql*plus不会再提示你给变量输入值。
b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]]
NEW_V[ALUE] variable 指定一个变量容纳查询出的列值。 例:column col_name new_value var_name noprint select col_name from table_name where …….. 将下面查询出的col_name列的值赋给var_name变量. 一个综合的例子:
得到一个列值的两次查询之差(此例为10秒之内共提交了多少事务): column redo_writes new_value commit_count select sum(stat.value) redo_writes
from v$sesstat stat, v$statname sn where stat.statistic# = sn.statistic# and sn.name = 'user commits'; -- 等待一会儿(此处为10秒);
execute dbms_lock.sleep(10); set veri off
select sum(stat.value) - &commit_count commits_added from v$sesstat stat, v$statname sn where stat.statistic# = sn.statistic# and sn.name = 'user commits'; 38. 定义一个绑定变量 VAR[IABLE] [variable [NUMBER|CHAR|CHAR (n)|NCHAR|NCHAR (n) |VARCHAR2 (n)|NVARCHAR2 (n)|CLOB|NCLOB|REFCURSOR]] 定义一个绑定变量,该变量可以在pl/sql中引用。 可以用print命令显示该绑定变量的信息。 如: column inst_num heading "Inst Num" new_value inst_num format 99999; column inst_name heading "Instance" new_value inst_name format a12; column db_name heading "DB Name" new_value db_name format a12; column dbid heading "DB Id" new_value dbid format 9999999999 just c; prompt
prompt Current Instance prompt ~~~~~~~~~~~~~~~~ select d.dbid dbid
, d.name db_name , i.instance_number inst_num , i.instance_name inst_name from v$database d, v$instance i; variable dbid number;
variable inst_num number; begin :dbid := &dbid; :inst_num := &inst_num; end; / 说明: 在sql*plus中,该绑定变量可以作为一个存储过程的参数,也可以在匿名PL/SQL块中直接引用。为了显示用VARIABLE命令创建的绑定变量的值,可以用print命令 注意:
绑定变量不同于变量: 1. 定义方法不同 2. 引用方法不同 绑定变量::variable_name 变量:&variable_name or &&variable_name 3.在sql*plus中,可以定义同名的绑定变量与用户变量,但是引用的方法不同。 39. &与&&的区别
&用来创建一个临时变量,每当遇到这个临时变量时,都会提示你输入一个值。 &&用来创建一个持久变量,就像用用define命令或带new_vlaue字句的column命令创建的持久变量一样。当用&&命令引用这个变量时,不会每次遇到该变量就提示用户键入值,而只是在第一次遇到时提示一次。 如,将下面三行语句存为一个脚本文件,运行该脚本文件,会提示三次,让输入deptnoval的值:
select count(*) from emp where deptno = &deptnoval; select count(*) from emp where deptno = &deptnoval; select count(*) from emp where deptno = &deptnoval; 将下面三行语句存为一个脚本文件,运行该脚本文件,则只会提示一次,让输入deptnoval的值:
select count(*) from emp where deptno = &&deptnoval; select count(*) from emp where deptno = &&deptnoval; select count(*) from emp where deptno = &&deptnoval; 40.在输入sql语句的过程中临时先运行一个sql*plus命令(摘自www.itpub.com)
# 有没有过这样的经历? 在sql*plus中敲了很长的命令后, 突然发现想不起某个列的名字了, 如果取消当前的命令,待查询后再重敲, 那太痛苦了. 当然你可以另开一个sql*plus窗口进行查询, 但这里提供的方法更简单. 比如说, 你想查工资大于4000的员工的信息, 输入了下面的语句: SQL> select deptno, empno, ename
2 from emp 3 where 这时, 你发现你想不起来工资的列名是什么了. 这种情况下, 只要在下一行以#开头, 就可以执行一条sql*plus命令, 执行完后, 刚才的语句可以继续输入
SQL>> select deptno, empno, ename
2 from emp 3 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 41. SQLPlus中的快速复制和粘贴技巧(摘自www.cnoug.org) 1) 鼠标移至想要复制内容的开始 2) 用右手食指按下鼠标左键 3) 向想要复制内容的另一角拖动鼠标,与Word中选取内容的方法一样 4) 内容选取完毕后(所选内容全部反显),鼠标左键按住不动,用右手中指按鼠标右键 5) 这时,所选内容会自动复制到SQL*Plus环境的最后一行 11/3/2006 最新语录老D语录
同事发了个mail,让老D协助做一个工作,问题被第三方搞得有点怪异,老D有点按耐不住,于是回了mail,说不能这么搞然后就是
1********************
2##################
3XXXXXXXXXXXXXXX
4%%%%%%%%%%%%%%%%
。。。。。。。。。。。。。
5·················
最后来了一句
恩,不多说了。 10/22/2006 delimiter of Regular ExpressionThe syntax for patterns used in these functions closely resembles Perl. The expression should be enclosed in the delimiters, a forward slash (/), for example. Any character can be used for delimiter as long as it's not alphanumeric or backslash (\). If the delimiter character has to be used in the expression itself, it needs to be escaped by backslash. Since PHP 4.0.4, you can also use Perl-style (), {}, [], and <> matching delimiters. See Pattern Syntax for detailed explanation.
摘自php manual
任何非字母,数字和\的字符都可以当做delimiter,好处,估计是可以不和expression里面的字符冲突,比如,如果里面有一个/,那么就用#好了。
知识的力量。 在PHP中使用与Perl兼容的正则表达式1 前言 PHP被大量的应用于Web的后台CGI开发,通常是在用户数据数据之后得出某种结果,但是如果用户输入的数据不正确,就会出现问题,比如说某人的生日是 "2月30日"!那应该怎么样来检验暑假是否正确呢? 在PHP中加入了正则表达式的支持,让我们可以十分方便的进行数据匹配。 2 什么是正则表达式: 简单的说,正则表达式是一种可以用于模式匹配和替换的强大工具。在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则表达式的痕迹,例如: Perl或PHP脚本语言。此外,JavaScript这种客户端的脚本语言也提供了对正则表达式的支持,现在正则表达式已经成为了一个通用的概念和工具,被各类技术人员所广泛使用。
在某个Linux网站上面有这样的话:"如果你问一下Linux爱好者最喜欢什么,他可能会回答正则表达式;如果你问他最害怕什么,除了繁琐的安装配置外他肯定会说正则表达式。"
正如上面说的,正则表达式看起来非常复杂,让人害怕,大多数的PHP初学者都会跳过这里,继续下面的学习,但是PHP中的正则表达式有着可以利用模式匹配找到符合条件的字符串、判断字符串是否合乎条件或者用指定的字符串来替代符合条件的字符串等强大的功能,不学实在太可惜了…… 3 正则表达式的基本语法: 一个正则表达式,分为三个部分:分隔符,表达式和修饰符。
分隔符可以是除了特殊字符以外的任何字符(比如"/ !"等等),常用的分隔符是"/"。表达式由一些特殊字符(特殊字符详见下面)和非特殊的字符串组成,比如"[a-z0-9_-]+@[a-z0-9_ -.]+"可以匹配一个简单的电子邮件字符串。修饰符是用来开启或者关闭某种功能/模式。
下面就是一个完整的正则表达式的例子:
上面的正则表达式"/"就是分隔符,两个"/"之间的就是表达式,第二个"/"后面的字符串"is"就是修饰符。
在表达式中如果含有分隔符,那么就需要使用转义符号"\",比如"/hello.+?\/hello/is"。转义符号除了用于分隔符外还可以执行特殊字符,全部由字母构成的特殊字符都需要"\"来转义,比如"\d"代表全体数字。 4 正则表达式的特殊字符: 正则表达式中的特殊字符分为元字符、定位字符等等。
元字符是正则表达式中一类有特殊意义的字符,用来描述其前导字符(即元字符前面的字符)在被匹配的对象中出现的方式。元字符本身是一个个单一的字符,但是不同或者相同的元字符组合起来可以构成大的元字符。 *元字符:
*定位字符: 定位字符是正则表达式中又一类非常重要的字符,它的主要作用是用于对字符在匹配对象中的位置进行描述。
*括号: 正则表达式除了可以用户匹配,还可以用括号"()"来记录需要的信息,储存起来,给后面的表达式读取。 比如:
就是记录邮件地址的用户名,和邮件地址的服务器地址(形式为username@server.com之类的),在后面如果想要读取记录下来的字符串,只是需要用"转义符+记录的次序"来读取。比如"\\1"就相当于第一个"[a-zA-Z0-9_-]+ ","\\2"相当于第二个([a-zA-Z0-9_-]+),"\\3"就是第三个(.[a-zA-Z0-9_-])。但是在PHP中,"\"是一个特殊的字符,需要转义,所以"\1"到了PHP的表达式中就应该写成"\\\\1"。 其他特殊符号: "|":或符号"|"和PHP里面的或一样,不过是一个"|",而不是PHP的两个"||"!意思就是可以是某个字符或者另一个字符串,比如"/abcd|dcba/"可能匹配"abcd"或者"dcba"。 5 贪婪模式: 前面在元字符中提到过"?"还有一个重要的作用,即"贪婪模式",什么是"贪婪模式"呢? 比如我们要匹配以字母"a"开头字母"b"结尾的字符串,但是需要匹配的字符串在"a"后面含有很多个"b",比如"a bbbbbbbbbbbbbbbbb",那正则表达式是会匹配第一个"b"还是最后一个"b"呢?如果你使用了贪婪模式,那么会匹配到最后一个"b",反之只是匹配到第一个"b"。 使用贪婪模式的表达式如下:
不使用贪婪模式的如下:
6 修饰符: 在正则表达式里面的修饰符可以改变正则的很多特性,使得正则表达式更加适合你的需要(注意:修饰符对于大小写是敏感的,这意味着"e"并不等于"E")。正则表达式里面的修饰符如下:
10/7/2006 国庆+中秋的长途旅行贝贝比他爹妈强,这么小就进行了一次长途旅行,从上海到安徽外婆家,从外婆家到芜湖,从芜湖到郑州,从郑州又到上海,估计要有2kkm。
总体来说表现很不错,在车上的时候,大部分时间都是睡觉,不怎么闹人。
带小孩出门真麻烦,别说远途了,就是在家出个门,就要专门拿个包,里面放上纸巾,尿片,护臀霜,毛巾,帽子,外套什么的。
在她外婆家看到贝贝,已经是1个月后了,变化挺大的,又胖了一圈,又拍了好多照片,空了整理一下传上来。
小家伙会看电视,会自己睡觉的时候笑,也会动不动地发火,哭的惊天动地。
在外婆家待了2天就去芜湖亲戚家路演了一番,就卧铺去郑州了。外婆外公送上车后,抹眼泪的动作让我也鼻子酸酸的。想想是啊,贝贝在这里买的各种各样的装备,这1个月照顾的是无微不至,她舅舅在贝贝要走的那天一早上就抱着她跟她玩儿,8点钟上班,7点55才出家门。 9/26/2006 access内置函数:(适用access2000)▲日期/时间
CDate 将字符串转化成为日期 select CDate("2005/4/5") Date 返回当前日期 DateAdd 将指定日期加上某个日期select dateAdd("d",30,Date())将当前日期加上30天,其中d可以换为yyyy或H等 DateDiff 判断两个日期之间的间隔 select DateDiff("d","2006-5-1","2006-6-1")返回31,其中d可以换为yyyy,m,H等 DatePart 返回日期的某个部分 select DatePart("d","2006-5-1")返回1,即1号,d也可以换为yyyy或m Day 返回日期的d部分,等同于datepart的d部分 Hour 返回日期的小时 IsDate 判断是否是日期,是日期返回-1,不是日期返回0 Minute 返回日期的分钟部分 Month 返回日期的月份部分 Now 返回当前时间(完整时间,包括年月日 小时分秒) Second 返回日期的秒部分 Time 返回当前的时间部分(即除去年/月/日的部分) Weekday 返回某个日期的当前星期(星期天为1,星期一为2,星期二为3...),例如select weekday(now()); Year 返回某个日期的年份 ▲检查
IsEmpty 检测是否为空(不过经测试,不管什么情况,都返回0) IsNull 检测是否为Null值,null值返回0,非null值返回-1 IsNumeric 检测是否为数字,是数字返回-1,否则返回0 算术
Abs 绝对值 Atn 返正切值。 Cos 余弦值 Exp 返回 e 的给定次幂。 Fix 返回数字的整数部分(即小数部分完全截掉) Int 将数字向下取整到最接近的整数。(其实等同于Fix) Log 返回以E为底的对数值 Rnd 返回一个0到1之间的随机数值 Sgn 返回数字的正负符号(正数返回1,负数返回-1,0值返回0) Sin 正弦值 Sqr 返回平方根值 Tan 正切值 ▲程序流程
Choose 根据第一参数,返回后面字符串组的值,Select Choose(1,"a","b","c")返回a,将1改成2后,返回b,改成3后,返回c(第一个参数也可以是某个字段) IIF 根据表达式返回特定的值 Select IIF("3>1","OK","False"),返回OK ▲Sql合计函数
Avg 取字段平均值 Count 统计记录条数 Max 取字段最大值 Min 取字段最小值 StDev 估算样本的标准差(忽略样本中的逻辑值和文本)。 StDevP 计算以参数形式(忽略逻辑值和文本)给出的整个样本总体的标准偏差。 Sum 计算字段的总合 Var 估算样本方差(忽略样本中的逻辑值和文本)。 VarP 计算整个样本总体的方差(忽略样本总体中的逻辑值和文本)。 ▲文本 Asc 返回字母的Acsii值,select Asc("A")返回65 Chr 将ascii值转换到字符 select chr(65)返回"A" Format 格式化字符串,Select Format(now(),'yyyy-mm-dd')返回类似于"2005-04-03" ,Select Format(3/9,"0.00")返回0.33 InStr 查询子串在字符串中的位置 select Instr("abc","a")返回1,select Instr("abc","f")返回0 LCase 返回字符串的小写形式 Left 左截取字符串 Len 返回字符串长度 LTrim 左截取空格 Mid 取得子字符串 select mid("123",1,2) as midDemo 返回12 Right 右截取字符串 RTrim 右截取空格 Space 产生空格 select Space(4)返回4个空格 StrComp 比较两个字符串是否内容一致(不区分大小写)select StrComp("abc","ABC")返回0,select StrComp("abc","123")返回-1 Trim 截取字符串两头的空格 UCase 将字符串转大写 |
|
|