ORACLE常用傻瓜问题1000问全集.docx
- 文档编号:24485647
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:111
- 大小:58.27KB
ORACLE常用傻瓜问题1000问全集.docx
《ORACLE常用傻瓜问题1000问全集.docx》由会员分享,可在线阅读,更多相关《ORACLE常用傻瓜问题1000问全集.docx(111页珍藏版)》请在冰豆网上搜索。
ORACLE常用傻瓜问题1000问全集
ORACLE常用傻瓜问题1000问全集.txtゅ你不用一上线看见莪在线,就急着隐身,放心。
莪不会去缠你。
说好的不离不弃现在反而自己却做不到╮
ORACLE常用傻瓜问题1000问全集
ORACLE内部函数篇
204.如何得到字符串的第一个字符的ASCII值?
ASCII(CHAR)
SELECTASCII('ABCDE')FROMDUAL;
结果:
65
205.如何得到数值N指定的字符?
CHR(N)
SELECTCHR(68)FROMDUAL;
结果:
D
206.如何连接两个字符串?
CONCAT(CHAR1,CHAR2)
SELECTCONCAT('ABC','DEFGH')FROMDUAL;
结果:
'ABCDEFGH'
207.如何将列中的数值代替为字符串?
DECODE(CHAR,N1,CHAR1,N2,CHAR2...)
SELECTDECODE(DAY,1,'SUN',2,'MON')FROMDUAL;
208.INITCAP(CHAR)
将字符串CHAR的第一个字符为大写,其余为小写.
SELECTINITCAP('ABCDE')FROMDUAL;
209.LENGTH(CHAR)
取一字符串CHAR的长度.
SELECTLENGTH('ABCDE')FROMDUAL;
210.LOWER(CHAR)
将字符串CHAR全部变为小写.
SELECTLOWER('ABCDE')FROMDUAL;
211.LPAD(CHAR1,N,CHAR2)
用字符串CHAR2包括的字符左填CHAR1,使其长度为N.
SELECTLPAD('ABCDEFG',10'123')FROMDUAL;
结果:
'123ABCDEFG'
212.LTRIM(CHAR,SET)
从字符串CHAR的左边移去字符串SET中的字符,直到第一个不是SET中的字符为止.
SELECT('CDEFG','CD')FROMDUAL;
结果:
'EFG'
D
213.NLS_INITCAP(CHAR)
取字符CHAR的第一个字符大写,其余字符为小写.
SELECTNLS_INITCAP('ABCDE')FROMDUAL;
214.NLS_LOWER(CHAR)
将字符串CHAR包括的字符全部小写.
SELECTNLS_LOWER('AAAA')FROMDUAL;
215.NLS_UPPER(CHAR)
将字符串CHAR包括的字符全部大写.
SELECTNLS_UPPER('AAAA')FROMDUAL;
216.REPLACE(CHAR1,CHAR2,CHAR3)
用字符串CHAR3代替每一个列值为CHAR2的列,其结果放在CHAR1中.
SELECTREPLACE(EMP_NO,'123','456')FROMDUAL;
217.RPAD(CHAR1,N,CHAR2)
用字符串CHAR2右填字符串CHAR1,使其长度为N.
SELECTRPAD('234',8,'0')FROMDUAL;
218.RTRIM(CHAR,SET)
移去字符串CHAR右边的字符串SET中的字符,直到最后一个不是SET中的字符为止.
SELECTRTRIM('ABCDE','DE')FROMDUAL;
219.SUBSTR(CHAR,M,N)
得到字符串CHAR从M处开始的N个字符.双字节字符,一个汉字为一个字符的.
SELECTSUBSTR('ABCDE',2,3)FROMDUAL;
220.SUBSTRB(CHAR,M,N)
得到字符串CHAR从M处开始的N个字符.双字节字符,一个汉字为二个字符的.
SELECTSUBSTRB('ABCDE',2,3)FROMDUAL;
221.TRANSLATE(CHAR1,CHAR2,CHAR3)
将CHAR1中的CHAR2的部分用CHAR3代替.
SELECTTRANSLATE('ABCDEFGH','DE','MN')FROMDUAL;
222.UPPER(CHAR)
将字符串CHAR全部为大写.
223.ADD_MONTHS(D,N)
将N个月增加到D日期.
;
224.LAST_DAY(D)
得到包含D日期的月份的最后的一天的日期.
SELECTLAST_DAY(SYSDATE)FROMDUAL;
225.MONTH_BETWEEN(D1,D2)
得到两个日期之间的月数.
SELECTMONTH_BETWEEN(D1,D2)FROMDUAL;
226.NEXT_DAY(D,CHAR)
得到比日期D晚的由CHAR命名的第一个周日的日期.
SELECTNEXT_DAY(TO_DATE('2003/09/20'),'SATDAY')FROMDUAL;
227.ROUNT(D,FMT)
得到按指定的模式FMT舍入到的最进的日期.
SELECTROUNT('2003/09/20',MONTH)FROMDUAL;
228.SYSDATE
得到当前系统的日期和时间.
SELECTSYSDATEFROMDUAL;
229.TO_CHAR(D,FMT)
将日期D转换为FMT的字符串.
SELECTTO_CHAR(SYSDATE,'YYYY/MM/DD')FROMDUAL;
230.TO_DATE(CHAR,FMT)
将字符串CHAR按FMT的格式转换为日期.
SELECTTO_DATE('2003/09/20','YYYY/MM/DD')FROMDUAL;
231.ABS(N)
得到N的绝对值.
SELECTABS(-6)FROMDUAL;
232.CEIL(N)
得到大于或等于N的最大整数.
SELECTCEIL(5.6)FROMDUAL;
233.COS(N)
得到N的余弦值.
SELECTCOS
(1)FROMDUAL;
234.SIN(N)
得到N的正弦值.
SELECTSIN
(1)FROMDUAL;
235.COSH(N)
得到N的双曲余弦值.
SELECTCOSH
(1)FROMDUAL;
236.EXP(N)
得到N的E的N次幂.
SELECTEXP
(1)FROMDUAL;
237.FLOOR(N)
得到小于或等于N的最小整数.
SELECTFLOOR(5.6)FROMDUAL;
238.LN(N)
得到N的自然对数.
SELECTLN
(1)FROMDUAL;
239.LOG(M,N)
得到以M为底N的对数.
SELECTLOG(2,8)FROMDUAL;
240.MOD(M,N)
得到M除以N的余数.
SELECTMOD(100,7)FROMDUAL;
241.POWER(M,N)
得到M的N幂.
SELECTPOWER(4,3)FROMDUAL;
242.ROUND(N,M)
将N舍入到小数点后M位.
SELECT(78.87653,2)FROMDUAL;
243.SIGN(N)
当N<0时,得到-1;
当N>0时,得到1;
当N=0时,得到0;
SELECTSIGN(99)FROMDUAL;
244.SINH(N)
得到N的双曲正弦值.
SELECTSINH
(1)FROMDUAL;
245.SORT(N)
得到N的平方根,N>=0
SELECTSORT(9)FROMDUAL;
246.TAN(N)
得到N的正切值.
SELECTTAN(0)FROMDUAL;
247.TANH(N)
得到N的双曲正切值.
SELECTTANH(0)FROMDUAL;
248.TRUNC(N,M)
得到在M位截断的N的值.
SELECTTRUNC(7.7788,2)FROMDUAL;
249.COUNT()
计算满足条件的记录数.
SELECTCOUNT(*)FROMTABLE1WHERECOL1='AAA';
250.MAX()
对指定的列求最大值.
SELECTMAX(COL1)FROMTABLE1;
251.MIN()
对指定的列求最小值.
SELECTMIN(COL1)FROMTABLE1;
252.AVG()
对指定的列求平均值.
SELECTAVG(COL1)FROMTABLE1;
253.SUM()
计算列的和.
SELECTSUM(COL1)FROMDUAL;
254.TO_NUMBER(CHAR)
将字符转换为数值.
SELECTTO_NUMBER('999')FROMDUAL;
ORACLE常用傻瓜问题1000问
作者:
CCBZZP
1.Oracle安装完成后的初始口令?
internal/oracle
sys/change_on_install
system/manager
scott/tiger
sysman/oem_temp
2.ORACLE9IASWEBCACHE的初始默认用户和密码?
administrator/administrator
3.oracle8.0.5怎么创建数据库?
用orainst。
如果有motif界面,可以用orainst/m
4.oracle8.1.7怎么创建数据库?
dbassist
5.oracle9i怎么创建数据库?
dbca
6.oracle中的裸设备指的是什么?
裸设备就是绕过文件系统直接访问的储存空间
7.oracle如何区分64-bit/32bit版本?
$sqlplus'/ASSYSDBA'
SQL*Plus:
Release9.0.1.0.0-ProductiononMonJul1417:
01:
092003
(c)Copyright2001OracleCorporation.Allrightsreserved。
Connectedto:
Oracle9iEnterpriseEditionRelease9.0.1.0.0-Production
WiththePartitioningoption
JServerRelease9.0.1.0.0-Production
SQL>select*fromv$version;
BANNER
----------------------------------------------------------------
Oracle9iEnterpriseEditionRelease9.0.1.0.0-Production
PL/SQLRelease9.0.1.0.0-Production
CORE9.0.1.0.0Production
TNSforSolaris:
Version9.0.1.0.0-Production
NLSRTLVersion9.0.1.0.0-Production
SQL>
8.SVRMGR什么意思?
svrmgrl,ServerManager9i下没有,已经改为用SQLPLUS了
sqlplus/nolog变为归档日志型的
9.请问如何分辨某个用户是从哪台机器登陆ORACLE的?
SELECTmachine,terminalFROMV$SESSION;
10.用什么语句查询字段呢?
desctable_name可以查询表的结构
selectfield_name,...from...可以查询字段的值
select*fromall_tableswheretable_namelike'%'
select*fromall_tab_columnswheretable_name='?
?
'
11.怎样得到触发器、过程、函数的创建脚本?
descuser_source
user_triggers
12.怎样计算一个表占用的空间的大小?
selectowner,table_name,NUM_ROWS,BLOCKS*AAA/1024/1024"SizeM",EMPTY_BLOCKS,LAST_ANALYZED
fromdba_tables
wheretable_name='XXX';
Here:
AAAisthevalueofdb_block_size;
XXXisthetablenameyouwanttocheck
13.如何查看最大会话数?
SELECT*FROMV$PARAMETERWHERENAMELIKE'proc%';
SQL>
SQL>showparameterprocesses
NAMETYPEVALUE
-------------------------------------------------------------------------
aq_tm_processesinteger1
db_writer_processesinteger1
job_queue_processesinteger4
log_archive_max_processesinteger1
processesinteger200
这里为200个用户。
Select*fromv$license;
其中sessions_highwater纪录曾经到达的最大会话数
14.如何查看系统被锁的事务时间?
select*fromv$locked_object;
15.如何以archivelog的方式运行oracle?
init.ora
log_archive_start=true
RESTARTDATABASE
16.怎么获取有哪些用户在使用数据库?
selectusernamefromv$session;
17.数据表中的字段最大数是多少?
表或视图中的最大列数为1000
18.怎样查得数据库的SID?
selectnamefromv$database;也可以直接查看init.ora文件
19.如何在Oracle服务器上通过SQLPLUS查看本机IP地址?
selectsys_context('userenv','ip_address')fromdual;
如果是登陆本机数据库,只能返回127.0.0.1
20.UNIX下怎么调整数据库的时间?
su-root
date-u08010000
21.在ORACLETABLE中如何抓取MEMO类型栏为空的资料记录?
selectremarkfromoms_flowrecwheretrim(''fromremark)isnotnull;
22.如何用BBB表的资料去更新AAA表的数据(有关联的字段)
UPDATEAAASETBNS_SNM=(SELECTBNS_SNMFROMBBBWHEREAAA.DPT_NO=BBB.DPT_NO)WHEREBBB.DPT_NOISNOTNULL;
23.P4计算机安装方法
将SYMCJIT.DLL改为SYSMCJIT.OLD
24.如何查询SERVER是不是OPS?
SELECT*FROMV$OPTION;
如果PARALLELSERVER=TRUE则有OPS能
25.如何查询每个用户的权限?
SELECT*FROMDBA_SYS_PRIVS;
26.如何将表移动表空间?
ALTERTABLETABLE_NAMEMOVETABLESPACE_NAME;
27.如何将索引移动表空间?
ALTERINDEXINDEX_NAMEREBUILDTABLESPACETABLESPACE_NAME;
28.在LINUX,UNIX下如何启动DBASTUDIO?
OEMAPPDBASTUDIO
29.查询锁的状况的对象有?
V$LOCK,V$LOCKED_OBJECT,V$SESSION,V$SQLAREA,V$PROCESS;
查询锁的表的方法:
SELECTS.SIDSESSION_ID,S.USERNAME,DECODE(LMODE,0,'None',1,'Null',2,'Row-S(SS)',3,'Row-X(SX)',4,'Share',5,'S/Row-X(SSX)',6,'Exclusive',TO_CHAR(LMODE))MODE_HELD,DECODE(REQUEST,0,'None',1,'Null',2,'Row-S(SS)',3,'Row-X(SX)',4,'Share',5,'S/Row-X(SSX)',6,'Exclusive',TO_CHAR(REQUEST))MODE_REQUESTED,O.OWNER||'.'||O.OBJECT_NAME||'('||O.OBJECT_TYPE||')',S.TYPELOCK_TYPE,L.ID1LOCK_ID1,L.ID2LOCK_ID2FROMV$LOCKL,SYS.DBA_OBJECTSO,V$SESSIONSWHEREL.SID=S.SIDANDL.ID1=O.OBJECT_ID;
30.如何解锁?
ALTERSYSTEMKILLSESSION‘SID,SERIR#’;
31.SQLPLUS下如何修改编辑器?
DEFINE_EDITOR="<编辑器的完整路经>"--必须加上双引号来定义新的编辑器,也可以把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它永久有效。
32.ORACLE产生随机数的函数?
DBMS_RANDOM.RANDOM
33.LINUX下查询磁盘竞争状况命令?
sar-d
33.LINUX下查询CPU竞争状况命令?
sar-r
34.查询当前用户对象?
SELECT*FROMUSER_OBJECTS;
SELECT*FROMDBA_SEGMENTS;
35.如何获取错误信息?
SELECT*FROMUSER_ERRORS;
36.如何获取链接状况?
SELECT*FROMDBA_DB_LINKS;
37.查看数据库字符状况?
SELECT*FROMNLS_DATABASE_PARAMETERS;
SELECT*FROMV$NLS_PARAMETERS;
38.查询表空间信息?
SELECT*FROMDBA_DATA_FILES;
39.ORACLE的INTERAL用户要口令?
修改SQLNET.ORA
SQLNET.AUTHENTICATION_SERVICES=(NTS)
40.出现JAVA.EXE的解决办法?
一般是将ORACLEORAHOMEXIHTTPSERVER改成手工启动可以的,X是8或9
41.如何给表、列加注释?
SQL>commentontable表is'表注释';
注释已创建。
SQL>commentoncolumn表.列is'列注释';
注释已创建。
SQL>select*fromuser_tab_commentswherecommentsisnotnull;
42.如何查看各个表空间占用磁盘情况?
SQL>coltablespaceformata20
SQL>select
b.file_id文件ID号,
b.tablespace_name表空间名,
b.bytes字节数,
(b.bytes-sum(nvl(a.bytes,0)))已使用,
sum(nvl(a.bytes,0))剩余空间,
sum(nvl(a.bytes,0))/(b.bytes)*100剩余百分比
fromdba_free_spacea,dba_data_filesb
wherea.file_id=b.file_id
groupbyb.tablespace_name,b.file_id,b.bytes
orderbyb.file_id
43.如把ORACLE设置为MTS或专用模式?
#dispatchers="(PROTOCOL=TCP)(SERVICE=SIDXDB)"
加上就是MTS,注释就是专用模式,SID是指你的实例名。
44.如何才能得知系统当前的SCN号?
selectmax(ktuxescnw*power(2,32)+ktuxescnb)fromx$ktuxe;
45.请问如何在ORACLE中取毫秒?
9i之前不支持,9i开始有timestamp。
9i可以用selectsystimestampfromdual;
46.如何在字符串里加回车?
select'Welcometovisit'||chr(10)||'www.CSDN.NET'fromdual;
47.中文是如何排序的?
Oracle9i之前,中文是按照二进制编码进行排序的。
在oracle9i中新增了按照拼音、部首、笔画排序功能。
设置NLS_SORT值:
SCHINESE_RADICAL_M按照部首(第一顺序)、笔划(第二顺序)排序
SCHINESE_STROKE_M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ORACLE 常用 傻瓜 问题 1000 全集
![提示](https://static.bdocx.com/images/bang_tan.gif)