1. 查看数据库字符集(如果字符集不同,可能显示乱码) select DECODE(parameter, 'NLS_TERRITORY', 'TERRITORY', 'NLS_LANGUAGE', 'LANGUAGE', 'NLS_CHARACTERSET', 'CHARACTER SET') name, value from v$nls_parameters WHERE parameter IN ('NLS_TERRITORY', 'NLS_LANGUAGE', 'NLS_CHARACTERS…
公司开发部门主要分2部分:.net开发和Oracle PL\SQL开发.刚入职的我被分到Oracle PL\SQL组了.Oracle是比SQL Server更大的数据库应用,我在学校只接触过SQL Server和MySQL,相对来说Oracle比较陌生.环境是公司同事之前配置好的,我只是拷贝虚拟机文件然后运行就行了.主要用的软件是:Toad for Oracle,SQL plus,Oracle Forms Builder和Reports Builder. 学习开始了,同事给了几个PDF文档给我,…
oracle 中的计算如下: 计算本星期的起始结束日期--得到星期一的日期select trunc(sysdate,''DD'')-to_char(sysdate,''D'')+2 from dual; --得到星期天的日期select trunc(sysdate,''DD'')-to_char(sysdate,''D'')+8 from dual; sql server 中的如下: SELECT datename(weekday, getdate()) 返回 星期二 既是对应的星期的名称…
Oracle用SQL打印日历 1.1  打印当月日历 , D, NULL)) SUN, , D, NULL)) MON, , D, NULL)) TUE, , D, NULL)) WED, , D, NULL)) THU, , D, NULL)) FRI, , D, NULL)) SAT FROM (SELECT ROWNUM D,  + TO_NUMBER(TO_CHAR(TRUNC(SYSDATE, 'MM'), 'D')) P, TO_CHAR( + ROWNUM, 'D') DOW FR…
1)ww的算法为每年1月1日为第一周开始,date+6为每一周结尾 例如20050101为第一周的第一天,而第一周的最后一天为20050101+6=20050107 公式 每周第一天 :date + 周 * 7 - 7 每周最后一天:date + 周 * 7 - 1 2) iw算法为自然周,即星期一到星期日为一周.且每年的第一个星期天为第一周,这样就会把去年的最后几天当成今年的第一周日期!!! select to_char(date'2015-1-1', 'yyyyww') from dual;…
1 ORACLE中周相关知识描述 1.1           日期格式化函数 TO_CHAR(X [,FORMAT]):将X按FORMAT格式转换成字符串.X是一个日期,FORMAT是一个规定了X采用何种格式转换的格式字符串,FORMAT与周相关的有W,WW,IW,D,FMWW. W 的含义是一个月的第几周.是按照ORACLE自定义的标准周来返回周数. IW是ISO标准周,它的含义是ISO标准周以周别为“主线”,每年最多可以有53个周别,但是每年至少要包含52个周别:如果一年当中第52周别之后至…
1 ORACLE中周相关知识描述 1.1           日期格式化函数 TO_CHAR(X [,FORMAT]):将X按FORMAT格式转换成字符串.X是一个日期,FORMAT是一个规定了X采用何种格式转换的格式字符串,FORMAT与周相关的有W,WW,IW,D,FMWW. W 的含义是一个月的第几周.是按照ORACLE自定义的标准周来返回周数. IW是ISO标准周,它的含义是ISO标准周以周别为“主线”,每年最多可以有53个周别,但是每年至少要包含52个周别:如果一年当中第52周别之后至…
详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp56   select to_char(sysdate,'ww') from dual;select to_char(sysdate,'iw') from dual;ww的算法为每年1月1日为第一周开始,date+6为每一周结尾例如:20050101为第一周的第一天,而第一周的最后一天为20050101+6=20050107 公式: 每周第一天 :date + 周 * 7…
目录(?)[-] ORACLE中周相关知识描述 日期格式化函数 日期时间运算函数 根据给定时间取一周的开始时间和结束时间 根据给定周数取一周的开始时间和结束时间 获取一年的最大周次 特别应该注意的地方   1 ORACLE中周相关知识描述 1.1           日期格式化函数 TO_CHAR(X [,FORMAT]):将X按FORMAT格式转换成字符串.X是一个日期,FORMAT是一个规定了X采用何种格式转换的格式字符串,FORMAT与周相关的有W,WW,IW,D,FMWW. W 的含义是…
1 ORACLE中周相关知识描写叙述 1.1           日期格式化函数 TO_CHAR(X [,FORMAT]):将X按FORMAT格式转换成字符串. X是一个日期,FORMAT是一个规定了X採用何种格式转换的格式字符串,FORMAT与周相关的有W,WW.IW.D.FMWW. W 的含义是一个月的第几周. 是依照ORACLE自己定义的标准周来返回周数. IW是ISO标准周,它的含义是ISO标准周以周别为"主线".每年最多能够有53个周别.可是每年至少要包括52个周别:假设一年…
在oracle里,如何取得本周.本月.本季度.本年度的第一天和最后一天的时间 --本周 select trunc(sysdate,'d')+1 from dual; select trunc(sysdate,'d')+7 from dual; --本月 select trunc(sysdate,'mm') from dual; select last_day(trunc(sysdate)) from dual; --本季 select trunc(sysdate,'Q') from dual;…
Oracle时间日期计算--计算某一日期为一年中的第几周 select to_char(sysdate-10,'yyyymmdd')||':iw:'||to_char(sysdate-10,'iw')||':ww:'||to_char(sysdate-10,'ww')||':w:'||to_char(sysdate-10,'w')||':D周:'||to_char(sysdate-10,'D') d1,to_char(sysdate-09,'yyyymmdd')||':iw:'||to_char…
六.单行函数 6.1.认识单行函数 ​ 函数就是和 Java 语言之中的方法的功能是一样的,都是为了完成某些特定操作的功能支持,而在 Oracle 数据库里面也包含了大量的单行函数,这些函数掌握了以后,可以方便的帮助进行数据库的相关开发. ​ 对开发者而言,最为重要的就是 SQL 语法和单行函数,可是 Oracle 中的单行函数的数量是非常多的.本章只讲解使用,后面会讲解如何去开发用户自己的函数(PL/SQL 编程) 6.1.1 单行函数语法 ​ funcation_name(列|表达式[,参数…
buffer cache与相关的latch等待事件 1.buffer cache 2.latch:cache buffers lru chain 3.latch:cache buffers chains 1.buffer cache 我的理解: buffer cache理解成4块结构: 三个列表+1个pool 三个列表指: lru (最近最少使用列表) dirty list (checkpoing qu buffer cache与相关的latch等待事件 1.buffer cache2.latc…
一.Oracle体系结构概述: Oracle的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制.要了解Oracle数据库的体系结构,必须理解Oracle系统的重要概念和主要组件. Oracle系统体系结构由三部分组成:内存结构,进程结构,存储结构..如下图所示:   1.内存结构(SGA.PAG) 内存结构包括系统全局区(System Global Area,SGA)和程序全局区(Program Gloabl Area,PGA). 2.进程结构(process) 进程…
一.数据库结构 二.Oracle 内存结构 三.进程结构 1. 用户进程:在数据库用户请求连接到Oracle 服务器时启动 2. 服务器进程:可以连接到Oracle实例,它在用户建立会话时启动 3. 后台进程:再启动Oracle实例时启动 四.Oracle实例管理 1. 系统监视器(SMON):出现故障后启动实例时执行崩溃恢复任务 2. 进程监视器(PMON):用户进程失败时执行进程清理任务 3. 数据库写进程(DBWn):将修改后的块从数据库缓冲区高速缓存写入磁盘中的数据文件 4. 检查点(C…
参考了很多文章,学习自网络 数据库 = 实例(数据库启动时初始的进程和内存结构,进程会作用到对应的内存区域-数据写入器到写入内存缓冲区,日志写入器到日志缓冲区等) + 数据库(物理文件-控制文件,数据文件,日志文件) 内存结构分为每个实例分配一个可共享的SGA(系统全局),不可共享,每个用户会话一块的PGA(用户全局) SGA: 包含数据库缓冲区缓存,存放数据库中数据块的拷贝DB_BLOCK_BUFFER,日志缓冲区,共享池SHARED_POOL_SIZE包含特定sql语句所用的信息等,Orac…
数据库实例(也称为服务器Server)就是用来访问一个数据库文件集的一个存储结构及后台进程的集合.它使一个单独的数据库可以被多个实例访问(也就是ORACLE并行服务器-- OPS).实例在操作系统中用ORACLE_SID来标识,在Oracle中用参数INSTANCE_NAME来标识, 它们两个的值是相同的.数据库启动时,系统首先在服务器内存中分配系统全局区(SGA),构成了Oracle的内存结构,然后启动若干个常驻内存的操作系统进程,即组成了Oracle的 进程结构,内存区域和后台进程合称为一个…
计算任何一天是星期几的几种算法 一:常用公式 W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D Y是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天. 二:蔡勒(Zeller)公式 w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1 公式中的符号含义如下,w:星期:c:世纪:y:年(两位数): m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1.2月要看作上一年的13.14月来计算,比如…
问题 八皇后问题是一个古老而著名的问题,是回溯算法的典型例题.该问题是十九世纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或同一斜线上,问有多少种摆法 百度来的代码 回溯法用递归实现八皇后解法 declare type t_queen is varray(8) of number; queen t_queen := t_queen(1, 2, 3, 4, 5, 6, 7, 8); l_num number := 0;…
问题: 1:通常说Oracle数据库是什么? 2:如何理解Oracle实例? 3:Oracle实例由哪些部分组成,它们之间的作用是什么? 4:如何理解Oracle的物理结构? 5:Oracle的物理结构由哪些部分组成,它们之间的作用是什么? 6:如何理解Oracle的逻辑结构? 7:Oracle的逻辑结构由哪些部分组成,它们之间的作用是什么? 一:Oracle数据库服务器 我们说的Oracle数据库是指Oracle数据库服务器(Oracle sever)是由Oracle实例(Oracle Ins…
l  日志表应该以时间做分区,方便清理 一般应用都会有一些表用来记录用户操作日志,数据变更记录,交易流水等日志型的库表.这些表最好按时间字段做分区,这样在迁移或者清理历史记录时会比较方便,借助oracle的分区交换清理特性,效率比delete高很多. l  频繁访问的sequece应该增加cache Oracle在创建序列可以指定cache参数,如果打开这个参数,Oracle就可以预先生成一些sequece,这样应用获取sequece相互争用数据块的概率就会减少,加快获取sequece速度. l…
大家好,我是落落http://blog.csdn.net/robinson1988/ QQ692162374,其实我选择Oracle是一件很神奇的事情,但是现在回想起来又觉得是命中注定.我2006年就读于西南大学软件工程专业,我之所以选择软件工程是因受了电影黑客帝国的影响,依稀还记得某个工程师对着一个黑屏幕,敲击一串代码,然后控制了某个机器,当时觉得好酷. 大一,学校开设VB.NET,全英文授课,还好哥英文很好,当时高中全年级前5名,对于全英文上课自然是无压力,大一上半期结束的时候,我还是会用V…
DateDiff()是计算机函数. 中文名 日期比较函数 外文名 DateDiff() 作    用 得 出两个日期之间的间隔 用    途 返回两个日期之间的差值 允许数据类型 timeinterval表示相隔时间的类型 DATEDIFF 函数计算指定的两个日期中第二个日期与第一个日期的时间差的日期部分.换句话说,它得 出两个日期之间的间隔.结果是等于 date2 - date1 的日期部分的带符号整数值. 函数返回两个日期之间的差值 .   表达式DateDiff(timeinterval,…
从事Dotnet程序开发工作近10年了,从开始的月薪3k的小程序员菜鸟,到现在年薪60w的项目总经理,从战战兢兢的去各个公司应聘,到现在开始面试那些战战兢兢的小程序员,回想起这近十年来的经验,看着还是朝气蓬勃的菜菜们,想谈谈自己对与DotNet程序员的职业规划的看法.先说开发语言         .Net是一个开发框架,包容性也比较强,可以做b/s结构的网站,可以做Windows phone的手机开发,可以做Windows下的桌面软件开发.         其中,b/s结构的软件,又包括了企业级…
SQL 标量函数----->日期函数 day() .month().year().2009年02月23日 星期一 11:30 SQL 标量函数----->日期函数 day() .month().year().DATEADD().ATEDIFF().DATENAME().DATEPART() GETDATE() 执行实例(表:life_unite_product 有createtime时间字段) select day(createtime) from life_unite_product --取…
SQL 语句日期用法及函数 --DAY().MONTH().YEAR()——返回指定日期的天数.月数.年数:select day(cl_s_time) as '日' from class  --返回天select '月'=month(cl_s_time) from class  --返回月select '年'=year(cl_s_time) from class  --返回年 --DATEADD(datepart,number,date)——在日期上增加给定日期类型的数量:select date…
select day(createtime) from life_unite_product     --取时间字段的天值 select month(createtime) from life_unite_product   --取时间字段的月值 select year(createtime) from life_unite_product    --取时间字段的年值 select datepart(yy,createtime) from life_unite_product     --取时间…
原本在9i上可以顺利完成的CTAS脚本,迁移到10g后运行总是报“ORA-1652: unable to extend temp segment by 128 in tablespace TS_HQY1_TEMP “无法扩展临时表空间的错误.应用人员表示该脚本涉及的数据量在迁移前后变化不大,而且令人匪夷所思的是在新的10g库上临时表空间大小已达40多个G,要远大于原9i库.很显然这不是由于临时表空间过小导致的该问题,更多的原因肯定是出在迁移后Oracle不同的行为方式上. 该脚本每月执行一次用以…
(----我错了,以下非php.php用例:FORM_UNIXTIME($time, '%H')取小时数.---) 返回表示指定日期的指定日期部分的整数. 语法 DATEPART ( datepart , date ) 参数 datepart 指定要返回的日期部分的参数.有关详细信息,请参阅本主题后面的“备注”部分. date 返回 datetime 值(或可隐式转换为 datetime 值的值)的表达式.date 参数也可以是日期格式的字符串.datetime 数据类型仅用于 1753 年 1…