Archives for: June 2007

IBM ThinkPad笔记本BIOS设置手册
Category: 硬件

BIOS(Basic Input Output System)控制了整个计算机的所有硬件设置。对于不了解Bios的朋友会觉得设置很难,其实只要学会了,都很简单。好了切入正题,其实目前IBM ThinkPad的XTRA四大系列的BIOS设置是基本上一样的,在这里,我们就以T系列为样本,详尽介绍笔记本电脑的Bios设置。

  当我们开启T-series时,屏幕下方出现"Press F1 for IBM BIOS Setup Utility"时,同时按下F1,将会进入Bios设置界面。再Bios设置界面中,Config、Date/time、Password、Startup、Restart分别为设置项,除了这些项目外,其他所显示的为本机的系统信息。
首先介绍本机的系统信息。
Bios Version 1.04c(1AET47WW) 这个是机身BIOS版本
Bios Date (Year-Month-Day) 2001-11-16 BIOS版本发布日期
Embedded Controller Version 1.0c 内嵌控制器的版本
System-unit serial number 2647I541234567 2647为机型。I54为Model,1234567为机身序列号
Cpu Type Mobile Intel Pentiumn III Processor-M 移动型奔腾3处理器,CPU型号
Cpu Speed 866Mhz CPU最高时钟频率866Mhz
Installed memory 128MB 已装载的内存为128兆
UUID 编号
Mac Address(Internal Lan) 00 00 00 00 00 00 内置网卡的Mac地址(网卡的物理地址)

Config 配置选项

将高亮度条选择到Config,按回车进入Config设置项,分别有以下子选项:
1.Network
继续按回车进入详细设置
(1) Wake On Lan 如果Enabled这一项,那么可以在局域网中,通过局域网中的其他计算机将笔记本电源打开,并且启动笔记本。Disabled则禁止这项功能.
(2) Flash Over Lan 允许可以从一个可用的局域网中,通过网线,来升级BIOS. Disable则禁止这项功能
2.RFID Security
3.IBM Security
以上2项由于只有少部分机型有这个功能且几乎不在中国销售,故掠过
4.Serial Port
如果要启动串口,请选择Enabled。Base I/O address和Interrupt使用默认设置就可以使用。如果以其他硬件有冲突,可以自行更改。Disabled则禁止这项功能.
5.Infrared
启动红外接口,选择Enabled。Base I/O address和Interrupt、DMA使用默认设置就可以使用。如果以其他硬件有冲突,可以自行更改。Disabled则禁止这项功能.
6.Parallet port
启动并口(打印口),选择Enabled。Base I/O address和Interrupt使用默认设置就可以使用。
Mode分别有4种可选模式,Bi-directional、Output only、EPP、ECP
7.PCI
这项中可以设置PCI的中断地址。默认即可。
8.USB
如果不启用USB,将无法使用任何USB界面之设备,例如:外置USB界面之软驱,光驱。
一般我们都要Enabled
9.Floppy Drivers
Legacy Floppy Drivers 如果禁用这项只能启用USB界面之软驱,而无法使用内置之软驱。
Super Disk Boot Enabled后,可以使用Super Disk来引导计算机。
10.Keyboard/Mouse
TrackPoint 一直使用IBM TrackPoint鼠标,请选择Enabled。不使用,请选择Disabled.如果选择了AutoDisable的话,当介入PS/2界面或USB界面之鼠标时,TrackPoint鼠标将会自动停用。
Fn key Lock Enabled:例如我们使用FN+F3的组合键时,按下FN键2次时,就可以不需要一直按住FN键,直接选择F3。就可以关闭LCD.Disabled:必须同时FN键+F3才能启动关闭LCD的功能。
11.Display
Default Primay Video Device [PCI]如果坞站装载了一张PCI界面之显示卡,那么它将作为第一个显示设备。[AGP]内置的AGP界面之显示卡成为第一个显示设备。
Boot Display Deice 可选择LCD是第一显示设备,还是CRT是第一显示设备,还是LCD、CRT同时显示。
HV expansion 选择On.LCD的画面将会自动调节垂直和水平的大小。Off则反之。即屏幕是否扩展拉伸。
Brightness 选择LCD的明亮度,High高亮度。Normal普通亮度。使用电池情况下,High高亮度情况,将会减少电池寿命。
12.Power
(1)Power Mode for AC ,这种情况下选择Maximum Performance,因为是用交流电,不在乎时间,当然要启动最佳性能。
(2)Power Mode for Battery 选择Maximum Battery Life.因为使用电池,尽可能要让电池省电。
(3)Customize 当然以上2项选择了customized时,这个选项才会生效。分别可以设置:
Processor Speed[Max(最快) or Medium(中等) or Slow(慢速)]
Suspend Timer(一定的时间内自动挂起)[1分钟至60分钟or 禁用]
LCD off(一定的时间内自动关闭LCD)[ 1分钟至60分钟or 禁用]
HDD off(一定的时间内自动关闭硬盘)[立即关闭 or 3~20分钟 or 禁用]
(4)Hibernate By timer 启动这个选项后,Suspend timer时间一到,执行的是Hibernate而不是Suspend
(5)Low battery Action,当电池处于低电压的状况下,可选执行Hibernate或者是Suspend两个动作
(6)Suspend when LCD is closed 当LCD关闭的同时决定是否同时挂起,或者不挂起。
(7)Suspend /Hibernate While docked 当连接坞站时,是否挂起或者休眠
(8)RediSafe 启动时,这个功能将会让你在suspend或者休眠的状态的文件变得快速和安全
(9)Resume on time 自动开机选项
Resume time 一个特定的时间
Resume date 一个特定的日期
(10)Resume on Modem Ring 当有一个来电时是否唤醒计算机
(11)Intel? SpeedStep technology Intel的CPU自动调频技术,通常这个是一定要启动的
Mode for AC 可选Maximum Performance CPU总是高速运行;Battery Optimized CPU总是低速运行;Maximum Battery 最节省的电量来运行CPU Automatic 自动调整
Mode for Battery 同上选项。
(12)Screen Blanking 是否使用空屏
(13)Power Switch Mode [On/Off]按下电源键后切断电源。[Hibernate] 按下电源键后进入休眠状态。
(14)Suspend to Hibernate 如果挂起很长一段时间,是否转入休眠状态。
(15)CDROM Speed 可选择Slient,其实就是低速。Normal 普通速度。High 高速
(16)CPU Power Management 启动CPU电源管理
(17)PCI bus Power Management PCI总线电源管理
(16)(17)这2项正常情况下选择自动。
13.Alarm
Power Control Beep,启用后,当笔记本进入挂起/休眠/连接交流电等状态时,都会发出b一声的提示音
Low Battery Alarm 电池进入低电压状态时,将会发出警告声。
Volume Beep启用后,当你按音量控制按钮改变音箱音量时,会发出bb的声音
14.Memory
Extended Memory Test 扩展内存测试 启动这项后,启用了内存测试,同时启动时间也延长。

Data/Time 日期/时间
System Date 系统日期 月/日/年
System Time 系统时间 小时/分钟/秒

Password 密码选项
Power-On Password 启动该项后,每次开机时候,需要你要键入正确密码才能引导系统
Supervisor Password启动该项后,可阻止未授权用户访问BIOS 设置
Lock Bios setting启动该项后,可以阻止其他用户更改BIOS设置,除了supervisor用户才可更改
Hard Disk1 Password 这个设置可以阻止未授权的用户访问硬盘上的所有数据,只有输入正确的密码才能访问。通常是在开机时要求输入。

Startup 启动选项
1. Boot
Hard Drive
CD-ROM Driver
Removable Devices
IBA 4.0.18 slot 0208
按F5/F6可以更改硬盘/光驱/软驱这些设备的启动顺序 。
2. Network启动顺序选项。
Boot Mode [Quick]快速模式[diagnostics]排错模式
Bios Setup Prompt (F1 Key message) [Enabled]将会在开机显示 提示键入F1进入BIOS设置界面。[Disabled]在开机时则不会显示该提示。

IBM Product Recovery Program Prompt (F11 Key message) [Enabled] 将会在开机显示 提示键入F11进入系统恢复界面。[Disabled]在开机时则不会现实。
Boot device List F12 Option 启用后,可以在开机时按下F12临时更改硬盘/光驱/软驱这些设备的启动顺序。
Flash BIOS Updating By End-users [Enabled]可以写入新版本BIOS。[Disable]则会禁止写入新版本BIOS。
Restart 重新启动
Exit Saving Changes 退出并且保存刚才所更改的BIOS设置
Exit Discarding Changes退出并且不保存刚才所更改的BIOS设置
Load Setup Defaults 读取默认的BIOS设置
Discard Changes 取消所所更改的BIOS设置
Save Changes 保存刚才所更改的BIOS设置
另外有几项快捷键:设置过程中,按F9则可以把原厂预设好的设置Load恢复,按F10则保存设置重新启动。

电源充电机制
从A,T,X系列开始,TP笔记本的充电机制已经变得更智能化。平时,随着时间过去,笔记本的电源都会自动放电,TP笔记本只会在电池电量低于95%的时候才会自动进行充电。
因此你不用担心平时使用时它会自动进行充电,这比过去的600系列是好多了。过去一年多的一台T20实践证明,T系列的充电机制是完全可以依赖的。不用担心电池过充的问题。
充电过程 
A、T、X系列充电时,充电器会先进行快速充电,这时开机显示的二极管(即左边第一个)是黄色的;充至80%的时候转入涓细电流慢充,这里二极管的颜色变得闪动的绿色;一直充满100%之后,就变成正常的稳定绿色了。锂电池的充电过程是恒压方式,开始充电不久即电压即会稳定下来,而电流则越来越小。

第二部分 基本知识
对应分辨率
VGA:640x480 SVGA:800x600 XGA:1024x768 SXGA:1280x1024 SXGA+:1400x1050 UXGA:1600x1200 QXGA:2048x1536 HalfXGA:1024x512 Apple:1152x864
IBM的编号规则
如T23-5KU-78-CYWWV,说明:它是属于T23系列的,2647是机型(Machine Type),5KU是模型(Model),其它的最后一个字母代表专属的市场范围,已知的有C中国大陆,H香港,T台湾,A东南亚(如马来西亚,越南,新加坡等等),U美国,J日本等等;最后的7或12位则是机身的序列号了。不过我是想不明白IBM怎么会编得那么复杂就是了。
如何设置ThinkPad键
先安装IBM的On Screen Display,重新启动后,运行注册表编辑器,找到HKEY_LOCAL_MACHINESOFTWARE

IBMTPHOTKEY8001,点菜单“编辑”>“增加数值”,“数值名”填:file,按“确认”,在“字符串”栏填上:你要运行的程序路径和文件名,如e:foxmailfoxmail.exe,点“确认”退出注册表编辑器,即时生效!
查询你的机器是否经IBM正规销售渠道
点http://www.pc.ibm.com/support?lang=...下面选中Include International warranty service availability in results。按Continue就会查询出来了,如果是正常的话,后面的页面会告诉你的机器是不否列入IBM的保修范围内了。补充:Model这个框可以不填的。
IBM ThinkPad: XTRA编号含义 
2001年10月IBM宣布将ThinkPad的产品编号更改为"X、T、R、A"四大系列,IBM为了凑够在英文里表示"额外的、更佳的、更好的"的XTRA,将i系列更改为R系列。 据说,这次不仅仅是型号的改变,而且是一种理念的突破。 下表是XTRA的具体含义: 

X Extreme portability 超轻、便携 面对很少在办公室的超级移动客户 
T Thin and light for Travel 性能与便携性的完美结合 面对在办公室或随地办公室的高级移动客户 
R Reliable, Affordable Mobility 经济易用 面对需要便携、易用以及合适价格的客户 
A Alternative to Desktop 功能强大,高性能,桌面机的替代品 面对追求卓越性能的客户
如何使用数字键盘 
按Shift+NumLk/ScrLk就可以激活数字键盘,即jkluio789这些按键对应的数字键。
双屏显示的使用(屏幕扩展) 
T23等机型是可以使用双屏显示功能的,即屏幕扩展,但IBM提供的WIN2000的T23显卡驱动程序并不支持,而XP的驱动则可以。因此目前T23的机型只能在XP下使用双屏显示,具体做法就是(并不一定要这样的步骤,可以自己根据情况调整): 

先连接好外接显示器,打开外接的显示器,然后把T23开机,在桌面点显示属性,在Settings一栏可以看到1,2这样的字样,选2即外接显示器,然后在下面的Extend my Windows desktop onto this monitor打上钩,然后调整好分辨率和颜色,点击Apply就可以了。使用时打开程序窗口,把这个窗口拉到笔记本显示屏之外,就会在外接显示器上显示出来了。 

至于T22,21,20的机型应该跟这类似,各位可以根据自己的情况实践。
IBM快捷热键表 
Fn+F3:关闭屏幕,StandBy模式(待机),显示器、硬盘、音频被关闭,移动鼠标或按任意键解除。 
Fn+F4:进入待机,Suspend模式(挂起),所有的任务都被停止并且保存到内存中,除了内存之外所有的设备都被停止,按下Fn键一秒钟以上解除。 

Fn+F7:切换显示输出(LCD,或外接,或同时显示),这是一个循环转换的过程。 
Fn+12:Hibernate模式(休眠),所有的任务被停止,并且内存和当前状态被保存到硬盘中,系统关机。
Fn+Home/End:增大/减少屏幕亮度,共有七档。 
Fn+PgUp:开关屏幕灯。 
某些机型按Fn+F3不能关闭屏幕
在一些机型上如T22,运行WIN2000时按Fn+F3不能关闭屏幕,主要原因是Modem的驱动程序版本太低,把它升级到5.95以上通常会解决问题
如何连接到电视机上观看
连好S端子线(建议先连接好再开笔记本),在本本的显示属性中打开TV输出(这一点非常重要),电视上会出现与笔记本同样的图像,不过笔记本的1024X768的分辨率在电视上不能完全显示,可以将其成800X600,搞定!
关闭显示屏长时间未使用恢复时花屏或黑屏
通常可以按Fn+F7切换显示输出模式可以解决;另外检查一下机器的BIOS版本是否太低,升级BIOS有时候也可以避免类似问题。 
USB软驱不能启动 
通常是BIOS中Config菜单下Floppy Drivers被设置为Disable了,把这个选项设置为Enable即可。

584 Words • 95 views • 07-06-29 • 13:46:33• 高 玉昆 Email Permalink
电脑硬件故障---开机响声
Category: 硬件

如果有报警声,说明自检出了问题。报警声是由主板上的BIOS设定的。BIOS有两种,分别为AMI和AWARD。大多数主板都是采用AWARD的BIOS。

AWARD的BIOS设定为:
1短:系统正常启动。表明机器没有任何问题。

  2短:常规错误,请进入CMOS Setup,重新设置不正确的选项。

  1长1短:内存或主板出错。换一条内存试试,若还是不行,只好更换主板。

  1长2短:显示器或显示卡错误。

  1长3短:键盘控制器错误。检查主板。

  1长9短:主板Flash RAM或EPROM错误,BIOS损坏。换块Flash RAM试试。

  不断地响(长声):内存条未插紧或损坏。重插内存条,或更换内存。

  AMI BIOS
  1短:内存刷新失败。更换内存条。

  2短:内存ECC较验错误。在CMOS Setup中将内存关于ECC校验的选项设为Disabled就可以解决,不过最根本的解决办法还是更换一条

内存。

  3短:系统基本内存检查失败。换内存。

  4短:系统时钟出错。

  5短:CPU出现错误。

  6短:键盘控制器错误。

  7短:系统实模式错误,不能切换到保护模式。

  8短:显示内存错误。显示内存有问题,更换显卡试试。

  9短:BIOS芯片检验和错误。

  1长3短:内存错误。内存损坏,更换即可。

  1长8短:显示测试错误。显示器数据线没插好或显示卡没插牢。

25 Words • 121 views • 07-06-27 • 09:23:52• 高 玉昆 Email Permalink
Oracle中TRUNCATE和Delete区别及TRUNCATE使用说明
Category: sql

TRUNCATE和Delete有以下几点区别
  1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令Delete将被撤销,而TRUNCATE则不会被撤销。
  2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。
  3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比Delete操作后的表要快得多。
  4、TRUNCATE不能触发任何Delete触发器。
  5、不能授予任何人清空他人的表的权限。
  6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。
  7、不能清空父表。

TRUNCATE TABLE (schema)table_name Drop(REUSE) STORAGE
在默认是 Drop STORAGE 当使用Drop STORAGE时将缩短表和表索引,将表收缩到最小范围,并重新设置NEXT参数。REUSE STORAGE不会缩短表或者调整NEXT参数

在特殊情况下使用 REUSE STORAGE

一个实际应用的典型例子:
你用sqlldr加载一个1000万记录的数据表,但是加载了多一半的时候你发现有问题,
这个时候你想清空表重新加载。
那么最好 reuse storage ,这样再次加载就不需要再次寻找空闲空间了

38 Words • 60 views • 07-06-26 • 13:45:30• 高 玉昆 Email Permalink
Oracal的Lpad函数
Category: sql

在Oracle/PLSQL中,lpad函数将左边的字符串填充一些特定的字符,其语法格式如下:
lpad( string1, padded_length, [ pad_string ] )
其中string1是需要粘贴字符的字符串
padded_length是返回的字符串的数量,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成padded_length;

pad_string是个可选参数,这个字符串是要粘贴到string1的左边,如果这个参数未写,lpad函数将会在string1的左边粘贴空格。
例如:
lpad('tech', 7); 将返回' tech'

lpad('tech', 2); 将返回'te'
lpad('tech', 8, '0'); 将返回'0000tech'
lpad('tech on the net', 15, 'z'); 将返回 'tech on the net'
lpad('tech on the net', 16, 'z'); 将返回 'ztech on the net'

49 Words • 166 views • 07-06-26 • 09:30:51• 高 玉昆 Email Permalink
变您一生的五句话(转)
Category: 思想

第一句话是:优秀是一种习惯

  这句话是古希腊哲学家亚里士多德说的。如果说优秀是一种习惯,那么懒惰也是一种习惯。人出生的时候,除了脾气会因为天性而有所不同,其他的东西基本都是后天形成的,是家庭影响和教育的结果。所以,我们的一言一行都是日积月累养成的习惯。我们有的人形成了很好的习惯,有的人形成了很坏的习惯。所以我们从现在起就要把优秀变成一种习惯,使我们的优秀行为习以为常,变成我们的第二天性。让我们习惯性地去创造性思 考,习惯性地去认真做事情,习惯性地对别人友好,习惯性地欣赏大自然。
  注解:要会“装”,要持续的、不间断的“装”,装久了就成了真的了,就成了习惯了,比如准时到会,每次都按时到会,你装装看,你装30年看看,装的时间长了就形成了习惯。:)

第二句话是:生命是一种过程。

  事情的结果尽管重要,但是做事情的过程更加重要,因为结果好了我们会更加快乐,但过程使我们的生命充实。人的生命最后的结果一定是死亡,我们不能因此说我们的生命没有意义。世界上很少有永恒。大学生谈恋爱,每天都在信誓旦旦地说我会爱你一辈子,这实际上是不真实的。统计数据表明,大学生谈恋爱的100对里有 90对最后会分手,最后结婚了的还有一半会离婚。你说爱情能永恒吗?所以最真实的说法是:“我今天,此时此刻正在真心地爱着你。”明天也许你会失恋,失恋后我们会体验到失恋的痛苦。这种体验也是丰富你生命的一个过程。
  注解:生命本身其实是没有任何意义的,只是你自己赋予你的生命一种你希望实现的意义,因此享受生命的过程就是一种意义所在。

第三句话是:两点之间最短的距离并不一定是直线。

  在人与人的关系以及做事情的过程中,我们很难直截了当就把事情做好。我们有时需要等待,有时需要合作,有时需要技巧。我们做事情会碰到很多困难和障碍,有时候我们并不一定要硬挺、硬冲,我们可以选择有困难绕过去,有障碍绕过去,也许这样做事情更加顺利。大家想一想,我们和别人说话还得想想哪句话更好听呢。尤其在中国这个比较复杂的社会中,大家要学会想办法谅解别人,要让人觉得你这个人很成熟,很不错,你才能把事情做成。
  注解:如果你在考数学试题,一定要答两点之间直线段最短,如果你在走路,从A到B,明明可以直接过去,但所有人都不走,你最好别走,因为有陷阱。在中国办事情,直线性思维在很多地方要碰壁,这是中国特色的中国处事方式。

第四句话是:只有知道如何停止的人才知道如何加快速度。

我在滑雪的时候,最大的体会就是停不下来。我刚开始学滑雪时没有请教练,看着别人滑雪,觉得很容易,不就是从山顶滑到山下吗?于是我穿上滑雪板,哧溜一下就滑下去了,结果我从山顶滑到山下,实际上是滚到山下,摔了很多个跟斗。我发现根本就不知道怎么停止、怎么保持平衡。最后我反复练习怎么在雪地上、斜坡上停下来。练了一个星期,我终于学会了在任何坡上停止、滑行、再停止。这个时候我就发现自己会滑雪了,就敢从山顶高速地往山坡下冲。因为我知道只要我想停,一转身就能停下来。只要你能停下来,你就不会撞上树、撞上石头、撞上人,你就不会被撞死。因此,只有知道如何停止的人,才知道如何高速前进。
  注解:用汽车来比喻,宝马可以上200公里,奇瑞却只能上120公里,为什么?发动机估计不相上下,差距在刹车系统,上了200公里刹不了车,呵呵,我的天!

第五句话是:放弃是一种智慧,缺陷是一种恩惠。

  当你拥有六个苹果的时候,千万不要把它们都吃掉,因为你把六个苹果全都吃掉,你也只吃到了六个苹果,只吃到了一种味道,那就是苹果的味道。如果你把六个苹果中的五个拿出来给别人吃,尽管表面上你丢了五个苹果,但实际上你却得到了其他五个人的友情和好感。以后你还能得到更多,当别人有了别的水果的时候,也一定会和你分享,你会从这个人手里得到一个橘子,那个人手里得到一个梨,最后你可能就得到了六种不同的水果,六种不同的味道,六种不同的颜色,六个人的友谊。人一定要学会用你拥有的东西去换取对你来说更加重要和丰富的东西。所以说,放弃是一种智慧

2 Words • 75 views • 07-06-21 • 13:26:11• 高 玉昆 Email Permalink
acsii 对照表
Category: .net

ASCII碼 鍵盤 ASCII 碼 鍵盤 ASCII 碼 鍵盤 ASCII 碼 鍵盤

27 ESC 32 SPACE 33 ! 34 "

35 # 36 $ 37 % 38 &

39 ' 40 ( 41 ) 42 *

43 + 44 ' 45 - 46 .

47 / 48 0 49 1 50 2

51 3 52 4 53 5 54 6

55 7 56 8 57 9 58 :

59 ; 60 < 61 = 62 >

63 ? 64 @ 65 A 66 B

67 C 68 D 69 E 70 F

71 G 72 H 73 I 74 J

75 K 76 L 77 M 78 N

79 O 80 P 81 Q 82 R

83 S 84 T 85 U 86 V

87 W 88 X 89 Y 90 Z

91 [ 92 \ 93 ] 94 ^

95 _ 96 ` 97 a 98 b

99 c 100 d 101 e 102 f

103 g 104 h 105 i 106 j

107 k 108 l 109 m 110 n

111 o 112 p 113 q 114 r

115 s 116 t 117 u 118 v

119 w 120 x 121 y 122 z

123 { 124 | 125 } 126 ~

61 Words • 148 views • 07-06-11 • 12:55:51• 高 玉昆 Email Permalink
oracle 使用leading, use_nl, rownum调优例子
Category: sql

1、使用leading和use_nl来设置表的查询顺序,来加快查询速度,一般把小表设为第一个表。
/*+LEADING(TABLE)*/
  将指定的表作为连接次序中的首表.
/*+USE_NL(TABLE)*/
  将指定表与嵌套的连接的行源进行连接,并把指定表作为内部表.

成本计算方法:
设小表100行,大表100000行。

两表均有索引:
如果小表在内,大表在外(驱动表)的话,则扫描次数为:
100000+100000*2 (其中2表示IO次数,一次索引,一次数据)
如果大表在内,小表在外(驱动表)的话,则扫描次数为:
100+100*2.

两表均无索引:
如果小表在内,大表在外的话,则扫描次数为:
100000+100*100000
如果大表在内,小表在外的话,则扫描次数为:
100+100000*100

注意:如果一个表有索引,一个表没有索引,ORACLE会将没有索引的表作驱动表。如果两个表都有索引,则外表作驱动表。如果两个都没索引的话,则也是外表作驱动表。

2、使用index直接匹配索引来查询数据提高查询速度
/*+INDEX(TABLE INDEX_NAME)*/
  表明对表选择索引的扫描方法.
3、当判断某几个表中是否存在某种关系的行时可使用rownum=1来作为条件而加快速度,如果必须有多行才满足条件时,可设置rownum <= n。
例如:获得一个v_count值判断是否大于0
equipment表 几万条,controledpnsnrange 几千条
select
count(sc.pmnum)
into
v_count
from
equipment e,
sal_controledpnsnrange sc
where
(sc.new_min_item_no <= e.itemnum)
and (sc.new_max_item_no >= e.itemnum)
and (sc.new_min_serial_no <= e.serialnum)
and (sc.new_max_serial_no >= e.serialnum)
and e.itemnum = a_item_no;
执行时间大约为3分钟。
代码修改后:
select /*+ leading(e) use_nl(sc) */
count(sc.pmnum)
into
v_count
from
equipment e,
sal_controledpnsnrange sc
where
(sc.new_min_item_no <= e.itemnum)
and (sc.new_max_item_no >= e.itemnum)
and (sc.new_min_serial_no <= e.serialnum)
and (sc.new_max_serial_no >= e.serialnum)
and e.itemnum = a_item_no;
执行时间大约为45秒。
代码再次修改后:
select /*+ leading(e) use_nl(sc) */
count(sc.pmnum)
into
v_count
from
equipment e,
sal_controledpnsnrange sc
where
(sc.new_min_item_no <= e.itemnum)
and (sc.new_max_item_no >= e.itemnum)
and (sc.new_min_serial_no <= e.serialnum)
and (sc.new_max_serial_no >= e.serialnum)
and e.itemnum = a_item_no
and rownum = 1;
执行时间大约为4秒。

200 Words • 204 views • 07-06-08 • 19:07:52• 高 玉昆 Email Permalink
常见Oracle HINT的用法
Category: sql

1. /*+ALL_ROWS*/
  表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.
  例如:
  SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
  2. /*+FIRST_ROWS*/
  表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化.
  例如:
  SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

  3. /*+CHOOSE*/
  表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最佳的吞吐量;
  表明如果数据字典中没有访问表的统计信息,将基于规则开销的优化方法;
  例如:
  SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

  4. /*+RULE*/
  表明对语句块选择基于规则的优化方法.
  例如:
  SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

  5. /*+FULL(TABLE)*/
  表明对表选择全局扫描的方法.
  例如:
  SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM FROM BSEMPMS A WHERE EMP_NO='SCOTT';

  6. /*+ROWID(TABLE)*/
  提示明确表明对指定表根据ROWID进行访问.
  例如:
  SELECT /*+ROWID(BSEMPMS)*/ * FROM BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA'
  AND EMP_NO='SCOTT';

  7. /*+CLUSTER(TABLE)*/
  提示明确表明对指定表选择簇扫描的访问方法,它只对簇对象有效.
  例如:
  SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO FROM BSEMPMS,BSDPTMS
  WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

  8. /*+INDEX(TABLE INDEX_NAME)*/
  表明对表选择索引的扫描方法.
  例如:
  SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX='M';

  9. /*+INDEX_ASC(TABLE INDEX_NAME)*/
  表明对表选择索引升序的扫描方法.
  例如:
  SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';

  10. /*+INDEX_COMBINE*/
  为指定表选择位图访问路经,如果INDEX_COMBINE中没有提供作为参数的索引,将选择出位图索引的布尔组合方式.
  例如:
  SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * FROM BSEMPMS
  WHERE SAL<5000000 AND HIREDATE

  11. /*+INDEX_JOIN(TABLE INDEX_NAME)*/
  提示明确命令优化器使用索引作为访问路径.
  例如:
  SELECT /*+INDEX_JOIN(BSEMPMS SAL_HMI HIREDATE_BMI)*/ SAL,HIREDATE
  FROM BSEMPMS WHERE SAL<60000;

  12. /*+INDEX_DESC(TABLE INDEX_NAME)*/
  表明对表选择索引降序的扫描方法.
  例如:
  SELECT /*+INDEX_DESC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';

  13. /*+INDEX_FFS(TABLE INDEX_NAME)*/
  对指定的表执行快速全索引扫描,而不是全表扫描的办法.
  例如:
  SELECT /*+INDEX_FFS(BSEMPMS IN_EMPNAM)*/ * FROM BSEMPMS WHERE DPT_NO='TEC305';

  14. /*+ADD_EQUAL TABLE INDEX_NAM1,INDEX_NAM2,...*/
  提示明确进行执行规划的选择,将几个单列索引的扫描合起来.
  例如:
  SELECT /*+INDEX_FFS(BSEMPMS IN_DPTNO,IN_EMPNO,IN_SEX)*/ * FROM BSEMPMS WHERE EMP_NO='SCOTT' AND DPT_NO='TDC306';

  15. /*+USE_CONCAT*/
  对查询中的WHERE后面的OR条件进行转换为UNION ALL的组合查询.
  例如:
  SELECT /*+USE_CONCAT*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M';

  16. /*+NO_EXPAND*/
  对于WHERE后面的OR 或者IN-LIST的查询语句,NO_EXPAND将阻止其基于优化器对其进行扩展.
  例如:
  SELECT /*+NO_EXPAND*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M';

  17. /*+NOWRITE*/
  禁止对查询块的查询重写操作.

  18. /*+REWRITE*/
  可以将视图作为参数.

  19. /*+MERGE(TABLE)*/
  能够对视图的各个查询进行相应的合并.
  例如:
  SELECT /*+MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELET DPT_NO
  ,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO
  AND A.SAL>V.AVG_SAL;

  20. /*+NO_MERGE(TABLE)*/
  对于有可合并的视图不再合并.
  例如:
  SELECT /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELECT DPT_NO,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO AND A.SAL>V.AVG_SAL;

  21. /*+ORDERED*/
  根据表出现在FROM中的顺序,ORDERED使ORACLE依此顺序对其连接.
  例如:
  SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.COL1=B.COL1 AND B.COL1=C.COL1;

  22. /*+USE_NL(TABLE)*/
  将指定表与嵌套的连接的行源进行连接,并把指定表作为内部表.
  例如:
  SELECT /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

  23. /*+USE_MERGE(TABLE)*/
  将指定的表与其他行源通过合并排序连接方式连接起来.
  例如:
  SELECT /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

  24. /*+USE_HASH(TABLE)*/
  将指定的表与其他行源通过哈希连接方式连接起来.
  例如:
  SELECT /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

  25. /*+DRIVING_SITE(TABLE)*/
  强制与ORACLE所选择的位置不同的表进行查询执行.
  例如:
  SELECT /*+DRIVING_SITE(DEPT)*/ * FROM BSEMPMS,DEPT@BSDPTMS WHERE BSEMPMS.DPT_NO=DEPT.DPT_NO;

  26. /*+LEADING(TABLE)*/
  将指定的表作为连接次序中的首表.

  27. /*+CACHE(TABLE)*/
  当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端
  例如:
  SELECT /*+FULL(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;

  28. /*+NOCACHE(TABLE)*/
  当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端
  例如:
  SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;

  29. /*+APPEND*/
  直接插入到表的最后,可以提高速度.
  insert /*+append*/ into test1 select * from test4 ;

  30. /*+NOAPPEND*/
  通过在插入语句生存期内停止并行模式来启动常规插入.
  insert /*+noappend*/ into test1 select * from test4 ;

548 Words • 67 views • 07-06-08 • 18:16:39• 高 玉昆 Email Permalink
如何删除cdnup.exe
Category: 杀毒

今天电脑慢的厉害,在任务管理器里发现有一个cdnup.exe的程序占cpu的100%,到网上找了个解决办法如下:

中文域名及中文邮件客户端> 后没有正确删除该软件...

cdnup.exe是中国互联网信息中心CNNIC出品的中文域名及中文邮件客户端,建议到添加/删除程序中删除。

1步. 我的电脑---控制面版--添加删除程序
在里面找关于 中文域名的...点了之后删除...
没有中文域名的话跳过此步.
2步.开始--运行--输入 MSCONFIG 确定
到 启动 的选项卡..看看有没有关于 CdnUp;cdnup.exe 这个的?
有的话你就把这些前面的钩去掉..
没有这些的话跳过此步.
3步.开始---运行---输入 regedit
依次打开
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion \Run]
点这个 Run 项之后看一下右边..
有没有关于 CdnUp;cdnup.exe 这个的?
有的话就删...

23 Words • 150 views • 07-06-08 • 13:58:27• 高 玉昆 Email Permalink
应届毕业生少走弯路的十大忠告(转)
Category: 思想

刚刚走上社会的年轻人,充满了蓄势待发的豪情、青春的朝气、前卫的思想,梦想着丰富的待遇和轰轰烈烈的事业。可是,社会毕竟是一所包罗万象、喧嚣复杂的大学校,这里没有寒暑假,拒绝虚假和肤浅,更拒绝空想和庸碌,难以预告何时开课何时放学。
如何在涉世之初少走弯路,有一个好的开端,开始一番成功的事业?以下是一些先行者积累的10条有益的涉世忠告。好好地遵循、把握这些忠告和建议吧,比起所学的课堂课程来,它毫不逊色!

1. 买个闹钟,以便按时叫醒你。贪睡和不守时,都将成为你工作和事业上的绊脚石,任何时候都一样。不仅要学会准时,更要学会提前。就如你坐车去某地,沿途的风景很美,你忍不住下车看一看,后来虽然你还是赶到了某地,却不是准时到达。"闹钟"只是一种简单的标志和提示,真正灵活、实用的时间,掌握在每个人的心中。

2. 如果你不喜欢现在的工作,要么辞职不干,要么就闭嘴不言。初出茅庐,往往眼高手低,心高气傲,大事做不了,小事不愿做。不要养成挑三拣四的习惯。不要雨天烦打伞,不带伞又怕淋雨,处处表现出不满的情绪。记住,不做则已,要做就要做好。

3. 每个人都有孤独的时候。要学会忍受孤独,这样才会成熟起来。年轻人嘻嘻哈哈、打打闹闹惯了,到了一个陌生的环境,面对形形色色的人和事,一下子不知所措起来,有时连一个可以倾心说话的地方也没有。这时,千万别浮躁,学会静心,学会忍受孤独。在孤独中思考,在思考中成熟,在成熟中升华。不要因为寂寞而乱了方寸,而去做无聊无益的事情,白白浪费了宝贵的时间。

4.走运时要做好倒霉的准备。有一天,一只狐狸走到一个葡萄园外,看见里面水灵灵的葡萄垂涎欲滴。可是外面有栅栏挡着,无法进去。于是它一狠心绝食三日,减肥之后,终于钻进葡萄园内饱餐一顿。当它心满意足地想离开葡萄园时,发觉自己吃得太饱,怎么也钻不出栅栏了。相信任何人都不愿做这样的狐狸。退路同样重要。饱带干粮,晴带雨伞,点滴积累,水到渠成。有的东西今天似乎一文不值,但有朝一日也许就会身价百倍。

5. 不要像玻璃那样脆弱。有的人眼睛总盯着自己,所以长不高看不远;总是喜欢怨天尤人,也使别人无比厌烦。没有苦中苦,哪来甜中甜?不要像玻璃那样脆弱,而应像水晶一样透明,太阳一样辉煌,腊梅一样坚强。既然睁开眼睛享受风的清凉,就不要埋怨风中细小的沙粒。

6.管住自己的嘴巴。不要谈论自己,更不要议论别人。谈论自己往往会自大虚伪,在名不副实中失去自己。议论别人往往陷入鸡毛蒜皮的是非口舌中纠缠不清。每天下班后和你的那些同事朋友喝酒聊天可不是件好事,因为,这中间往往会把议论同事、朋友当做话题。背后议论人总是不好的,尤其是议论别人的短处,这些会降低你的人格。

7. 机会从不会"失掉",你失掉了,自有别人会得到。不要凡事在天,守株待兔,更不要寄希望于"机会"。机会只不过是相对于充分准备而又善于创造机会的人而言的。也许,你正为失去一个机会而懊悔、埋怨的时候,机会正被你对面那个同样的"倒霉鬼"给抓住了。没有机会,就要创造机会,有了机会,就要巧妙地抓住。

8.若电话老是不响,你该打出去。很多时候,电话会给你带来意想不到的收获,它不是花瓶,仅仅成为一种摆设。交了新朋友,别忘了老朋友,朋友多了路好走。交际的一大诀窍就是主动。好的人缘好的口碑,往往助你的事业更上一个台阶。

9.千万不要因为自己已经到了结婚年龄而草率结婚。想结婚,就要找一个能和你心心相印、相辅相携的伴侣。不要因为放纵和游戏而恋爱,不要因为恋爱而影响工作和事业,更不要因一桩草率而失败的婚姻而使人生受阻。感情用事往往会因小失大。

10. 写出你一生要做的事情,把单子放在皮夹里,经常拿出来看。人生要有目标,要有计划,要有提醒,要有紧迫感。一个又一个小目标串起来,就成了你一生的大目标。生活富足了,环境改善了,不要忘了皮夹里那张看似薄薄的单子。

Words • 82 views • 07-06-03 • 01:44:29• 高 玉昆 Email Permalink

高玉昆

June 2007
Mon Tue Wed Thu Fri Sat Sun
<< < Current > >>
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Search

Categories

Linkblog

公益网站

Misc

Syndicate this blog XML

What is RSS?

Who's Online?

Guest Users: 13

powered by
b2evolution