年数据库-oracle-学习之路1.数据库基础2.数据库主键生成SelectSubstr(To_char(dbms_random.value),2,22)||getUUID.NextvalFromdual;3.数据库空间查询--表空间在哪些空间下selectdf.tablespace_name"表空间名",totalspace"总空间M",freespace"剩余空间M",round((1-freespace/totalspace)*100,2)"使用率%"from(selecttablespace_name,round(sum(bytes)/1024/1024)totalspacefromdba_data_filesgroupbytablespace_name)df,(selecttablespace_name,round(sum(bytes)/1024/1024)freespacefromdba_free_spacegroupbytablespace_name)fswheredf.tablespace_name=fs.tablespace_name;--查用户下所用空间SELECTowner,tablespace_name,ROUND(SUM(BYTES)/1024/1024,2)"USED(M)"FROMdba_segmentsGROUPBYowner,tablespace_nameORDERBYSUM(BYTES)DESC;--查用户下所有表所占空间selectOWNER,t.segment_name,t.segment_type,sum(t.bytes/1024/1024)mmmfromdba_segmentstwheret.owner='JIANGSU'andt.segment_type='TABLE'groupbyOWNER,t.segment_name,t.segment_typeorderbymmmdesc;4.oracle之删除重复数据selecta.rowid,a.*from表名awherea.rowid!=(selectmax(b.rowid)from表名bwherea.字段1=b.字段1anda.字段2=b.字段2)---删除deletefrom表名awherea.rowid!=(selectmax(b.rowid)from表名bwherea.字段1=b.字段1anda.字段2=b.字段2)5.oracle之查询数据第一条记录select*fromtabrownum<26.oracle之存储过程/函数等书写规则7.oracle之正则表达式函数:regexp_like、regexp_substr、regexp_instr、regexp_replace(http://blog.csdn.net/heicm/article/details/6336087)Oracle使用正则表达式离不开这4个函数:1。regexp_like2。regexp_substr3。regexp_instr4。regexp_replace看函数名称大概就能猜到有什么用了。regexp_like只能用于条件表达式,和like类似,但是使用的正则表达式进行匹配,语法很简单:regexp_substr函数,和substr类似,用于拾取合符正则表达式描述的字符子串,语法如下:regexp_instr函数,和instr类似,用于标定符合正则表达式的字符子串的开始位置,语法如下:regexp_replace函数,和replace类似,用于替换符合正则表达式的字符串,语法如下:这里解析一下几个参数的含义:(1。source_char,输入的字符串,可以是列名或者字符串常量、变量。(2。pattern,正则表达式。3。match_parameter,匹配选项。取值范围:i:大小写不敏感;c:大小写敏感;n:点号.不匹配换行符号;m:多行模式;x:扩展模式,忽略正则表达式中的空白字符。4。position,标识从第几个字符开始正则表达式匹配。5。occurrence,标识第几个匹配组。6。replace_string,替换的字符串。8.oracle之decode函数decode函数=java中的true?A:Bdecode(参数,1,2,3)参数==1时结果为2否则结果为39.oracle之linux下启动脚本1)启动数据库oracle@suse92:~>sqlplus/nologSQL*Plus:Release9.2.0.4.0–ProductiononFriJan2002:29:372006Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.SQL>connect/assysdbaConnectedtoanidleinstance.SQL>startupORACLEinstancestarted.TotalSystemGlobalArea135352820bytesFixedSize455156bytesVariableSize109051904bytesDatabaseBuffers25165824bytesRedoBuffers679936bytesDatabasemounted.2)关闭数据库:oracle@suse92:~>sqlplus/nologSQL*Plus:Release9.2.0.4.0–ProductiononFriJan2002:29:372006Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.SQL>connect/assysdbaConnectedtoanidleinstance.SQL>shutdwonabort;3)启动监听器oracle@suse92:~>lsnrctlstart4)停止监听器oracle@suse92:~>lsnrctlstop5)查看监听器状态oracle@suse92:~>lsnrctlstatus或lsnrctl命令进入监听程序后再用status10.oracle之备份工作背景:Oracle10g服务器,Oracle10g客户端,windowsXP操作平台要求:Oracle数据库服务器对数据库ytcn每天自动备份一次。解决方案:利用任务计划、批处理文件和Oracle的exp导出功能,根据日期自动生成Oracle备份文件。详细步骤:1)创建批处理文件ytcn...