随笔分类 -  Oracle

1
摘要:原文链接:Lukas Eder翻译:伯乐在线-水果泡腾片译文链接:http://blog.jobbole.com/55086/很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然对它头疼不已的朋友,所以本文是为了以下读者而特地编写的:1、 在工作中会用到 SQL 但是对它并不完全了解的人。2、 能够熟练使用 SQL 但是并不了解其语法逻辑的人。3、 想 阅读全文
posted @ 2014-01-13 10:03 歌颂者 阅读(155) 评论(0) 推荐(0)
摘要:1:原命令行,dos2:sqlplus,图形界面3:isqlplus,网页版的。(假如自己机器无法安装oracle,可通过别人ip地址去使用oracle,http://ip:5560/isqlplus) 阅读全文
posted @ 2013-12-26 10:52 歌颂者 阅读(351) 评论(0) 推荐(0)
摘要:如列表所示:都是选填字段name age salary weight张三 18 20李四 17王五 21燕小六 15 22 sum(age+salary+weight)这种写法是不能求出这三列的和的,因为在oracle中,18+null的结果还是null,正确写法是:sum(nvl(age,0)+nvl(salary,0)+nvl(weight,0)) 阅读全文
posted @ 2013-09-27 16:15 歌颂者 阅读(3490) 评论(0) 推荐(0)
摘要:是这样的,表格中有几个属性,比如age吧是之一,age是字符类型的数字,select之间由union连接,此时是无法对前面的select语句进行order by的,也就是无法排序,无法达成我要的按age中数字型排序的效果。解决方法:将union改为 union all(union all会完全按照你unoin的先后来显示,而不会按ascii码来进行排序) 阅读全文
posted @ 2013-09-23 16:24 歌颂者 阅读(2027) 评论(0) 推荐(1)
摘要:1:打开net manager:开始->程序->oracle->配置和移植工具->Net Manager2:添加服务器名->名子自定义,一般根据项目自定义,自己知道就行3:TCP/IP(internet协议)->4:主机名:服务器名(ip地址),端口号:1521->5:服务器名:实例名,主要是你连接的对方的哪个数据库6:测试,不能通过可选更换用户,输入用户及密码,再测试。 阅读全文
posted @ 2013-09-18 09:04 歌颂者 阅读(209) 评论(0) 推荐(0)
摘要:参考文献:《Oracle完全学习手册》第11章1.PL/SQL概述PL/SQL(Procedure Language/Structuer Query Language)是Oracle对标准SQL规范的扩展,全面支持SQL的数据操作、事务控制等。PL/SQL完全支持SQL数据类型,减少了在应用程序和数据库之间转换数据的操作。构成PL/SQL程序的基本单位是程序块。程序块由过程、函数和无名块3种形式组成,它们之间可以互相嵌套。PL/SQL的运行工具有:SQL*Plus、PL/SQL developer2.PL/SQL结构2.1PL/SQL程序块PL/SQL程序块分为无名块、命名块两种。无名块指未命 阅读全文
posted @ 2013-08-23 09:37 歌颂者 阅读(416) 评论(0) 推荐(0)
摘要:原文地址:http://www.cnblogs.com/sin90lzc/archive/2012/08/30/2661117.html参考文献:《Oracle完全学习手册》1.概述本文主要介绍PL/SQL中的有名程序块:存储过程、函数、包头/包体及触发器的使用。而这些的基础是PL/SQL无名块的编写,这在PL/SQL之基础篇中已经讲述过了。这四种程序块到底是什么东西呢?存储过程可以认为它是一个无返回值的函数(排除参数返回);函数则是一个带返回值的函数,但函数只能用于表达式中,不能像存储过程那样直接调用;包头/包体与Java中的接口/实现类比较的话,包头就好比接口,而包体就好比实现类。触发器则 阅读全文
posted @ 2013-08-23 09:32 歌颂者 阅读(371) 评论(0) 推荐(0)
摘要:作者:eygle|English【转载时请标明出处和作者信息】|【恩墨学院OCM培训传DBA成功之道】链接:http://www.eygle.com/archives/2006/08/oracle_fundbook_recommand.html站内相关文章|Related Articles《深入浅出Oracle》勘误表几则对于《深入浅出Oracle》的评价China-Pub和Dearbook 谁的销售更厉害?《深入浅出Oracle》一书重印《深入浅出Oracle》两月记很多朋友要我帮忙推荐一下Oracle的入门书籍,能够了解Oracle的基本概念、基本知识的那种。我就免为其难,推荐几本。首先我 阅读全文
posted @ 2013-08-21 10:38 歌颂者 阅读(4266) 评论(0) 推荐(1)
摘要:1:变量的声明2:常用类型变量3:存储过程创建语法:4:已命名的异常:5:注意事项6:%type(v_empno2的类型和emp表的empno的类型保持一致) 阅读全文
posted @ 2013-08-19 16:02 歌颂者 阅读(144) 评论(0) 推荐(0)
摘要:受上级指示,该学学存储过程了,现在开始,每天坚持学,直到学会。1:存储过程和函数的信息是写入数据字典的,所以存储过程可以看作是一个公用模块,用户编写的PL/SQL程序或其他存储过程都可以调用它( 但存储过程和函数不能调用PL/SQL程序) 。一个重复使用的功能,可以设计成为存储过程,比如:显示一张工资统计表,可以设计成为存储过程;一个经常调用的计算,可以设计成为存储函数;根据雇员编号返回雇员的姓名,可以设计成存储函数。2:存储过程和函数的区别: 3:参数部分用于定义多个参数( 如果没有参数,就可以省略) 。参数有三种形式:IN、OUT和IN OUT 。如果没有指明参数的形式,则默认为IN。 . 阅读全文
posted @ 2013-08-19 10:01 歌颂者 阅读(212) 评论(0) 推荐(0)
摘要:1:创建user1表: create table user1( id number, name varchar(20));2:创建sequence(user1_seq): create sequence user1_seq minvalue 1 maxvalue 999999 start with 1 increment by 1 cache 20;3:创建触发器: create or replace trigger user1_tig before insert on user1 for each row begin select to_char(user1_se... 阅读全文
posted @ 2013-03-18 11:52 歌颂者 阅读(3869) 评论(0) 推荐(0)
摘要:原文地址:http://www.cnblogs.com/rootq/archive/2008/09/08/1287150.html数据表的连接有:1、内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现2、外连接: 包括(1)左外连接(左边的表不加限制)(2)右外连接(右边的表不加限制)(3)全外连接(左右两表都不加限制)3、自连接(连接发生在一张基表内)select a.studentno, a.studentname, b.classname from students a, classes b where a.classid(+) = b.classid;STUDENTNO ST 阅读全文
posted @ 2012-12-28 17:08 歌颂者 阅读(169) 评论(0) 推荐(0)
摘要:oracle:多表查询,存储过程,触发器1:创建新的数据库:2:表名和列的命名规则: 必须以字母打头 长度<=30个字符 不能使用oracle的保留字 只能使用如下字符:A-Z,a-z,0-9,$,#等3:oracle的数据类型: 字符型:char:最大字符数为2000,定长的,假使你写的是20,不管你的内容为几位,都统统占用20位,多余的用空格占用。 虽浪费空间,但是查询的效率很高。比如身份证号码或者性别是定长的,所以此时可以将此定义为char型 varchar2:最大字符数为4000,变长的,查询时,先比较第一个,再比较第二个,一次类推,此时就比较慢。 ... 阅读全文
posted @ 2012-12-28 15:21 歌颂者 阅读(150) 评论(0) 推荐(0)
摘要:1:conn 用户名/密码 连接数据库,如果是登陆管理员,则必须要写上as sysdba2:在oracle表中插入数据时要接的commit提交,不然数据没存进去3:如果要删除用户,但是该用户已经创建了表,那么此时必须要带一个参数cascade4:常用数据库的比较:(如图)5:不同用户登陆到数据库实例上时,看到的数据时不一样的,所能操作的表也是有限的。6:用system用户创建新用户xiaoming希望xiaoming用户可以查看scott用户下的emp表:grant select on emp to xiaoming(all代表增删改查,收回权限的话用revoke from)此时应登陆scot 阅读全文
posted @ 2012-12-26 09:30 歌颂者 阅读(171) 评论(0) 推荐(0)
摘要:这几天,boss安排的任务是写几个页面的简单的单表查询,多表查询。公司用的是自己的框架,再加上spring,structs2和ibatis,发现自己的oracle知识很差,幸亏现在写的这语句简单,要是再复杂一点就挂了。要好好复习下oracle的知识,其实除了查询语句之外,还有很多oracle细节的的知识需要掌握,很重要的,比如,svn连接项目和数据库之类的等等都需要去学,有的时候感觉这些小细节的知识都比写查询语句难,可能是因人而异吧,反正我有的时候真的狠纠结。另:人际交往和沟通也需要学习,这是现代社会不可或缺的能力。 阅读全文
posted @ 2012-12-12 16:38 歌颂者 阅读(134) 评论(0) 推荐(0)
摘要:问题:启动tomcat,发布项目,出错。用plsql输入用户名和密码提示没有监听程序,但是我去服务里面看,明明都是启动了的。公司的网络都是用的代理,每个人有固定的属于自己的ip。解决办法:打开oracle的安装文件夹,这是我的安装路径:E:\oracle\product\10.2.0\db_1\NETWORK\ADMIN在该文件夹下找tnsnames.ora和listener.ora文件,用记事本打开,找host,然后将host等号后面的改为:本机正在用的ip地址,还要注意,修改项目里的jdbc.properties文件里面的url,重新启动服务里面的oracle那两个服务(监听和servic 阅读全文
posted @ 2012-12-04 13:05 歌颂者 阅读(326) 评论(0) 推荐(0)
摘要:1:oracle的id自动增长一般是通过序列实现的,跟建表的语句没有关系!比如你要建一张person表,属性有id,name,age。此时你想把id设置为自增长。create sequence emp_idminvalue 1maxvalue 999999999999999999999999999start with 1increment by 1nocache;然后每次insert的时候insert into person values(person_id.nextval, ...) 就实现了自动增长相关:http://www.cnblogs.com/foura/archive/2010/1 阅读全文
posted @ 2012-12-03 13:28 歌颂者 阅读(196) 评论(0) 推荐(0)
摘要:我刚才犯了一个很白痴的问题呀:在配置jdbc.properties时竟然忘写1521这么关键的几个数字,真对自己无语,还一个劲的说,,,,,,,,,,,,结论:一定要细心,认真检查。往往最简单的就把你坑的最惨,,,,,,,,,,,,,,Windows平台(以8080为例)--进程对应PID如图:输入netatat -aon|findstr "8080",然后回车,可以看到下面两行,这表明2500占用了8080端口。如想进一步查看是哪个程序,输入:tasklist|findstr "2500",则看到是javaw.exe该程序占用了8080端口。如果你想杀 阅读全文
posted @ 2012-11-29 10:36 歌颂者 阅读(252) 评论(0) 推荐(0)
摘要:1:安装oracle,这个不用说,大家基本都会,但是在我安装的过程中,遇到过一个问题,就是安装好了之后只能连接他人的数据库,无法连接自己的数据库,重新安装了多次仍然无效,在网上搜了很多解决的办法,但是最后还是不行,还让老师帮忙了下都没搞定,最终无厘头的解决办法是:拔掉网线,关掉无线,再次安装oracle,终于好了。2:oracle安装好之后,比如你要用自己本地的数据库,这时候,应该先创建一个用户,然后给该用户授权‘授权代码如下:(加入你创建了一个用户aa)Grantexecuteondbms_pipetoaa;Grantconnect,resourcetoaa;Grantunlimitedta 阅读全文
posted @ 2012-11-29 10:21 歌颂者 阅读(348) 评论(0) 推荐(0)
摘要:原文地址:http://www.cnblogs.com/zfc2201/archive/2012/01/14/2322147.htmloraclehttp://www.cnblogs.com/lich/archive/2011/12/04/2275317.html ibatis 阅读全文
posted @ 2012-11-28 15:17 歌颂者 阅读(137) 评论(0) 推荐(0)

1