oracle学习体会

        2月28号进了公司实习,除了知道自己以后要做关于oracle的项目其他都一无所知。第一天进公司先是签署了保密协议之类,然后是和PM见面,了解oracle的相关要培训的东西。公司的前辈细细的介绍了公司的历史和文化。3月初就开始为期一个月的oracle的基础知识培训。    全英文的教材,第一个礼拜的sql基础知识,和大学里面学过的大致相同,但是多了许多开发中会使用的函数,比如nvl,decode,一个礼拜5本全英文的书对我们来说还是太吃力了,尽管sql语句有基础但是还是很难。   

        数据字典和表结构不再是概念上的东西,表结构对于关联性的建表有很重要的作用。Desc  User_tables ,来查看数据字典。Desc tablename来查看表的结构,  2月28号进了IBM ISSC上海实习,除了知道自己以后要做关于oracle的项目其他都一无所知。第一天进公司先是签署了保密协议之类,然后是和PM见面,了解oracle的相关要培训的东西。接下来就是YOUR IBM,公司的前辈细细的介绍了公司的历史和文化。3月初就开始到神州数码开始为期一个月的oracle的基础知识培训。   

       全英文的教材,第一个礼拜的sql基础知识,和大学里面学过的大致相同,但是多了许多开发中会使用的函数,比如nvl,decode,一个礼拜5本全英文的书对我们来说还是太吃力了,尽管sql语句有基础但是还是很难。   

        数据字典和表结构不再是概念上的东西,表结构对于关联性的建表有很重要的作用。Desc  User_tables ,来查看数据字典。Desc tablename来查看表的结构,对于不同权限的用户可以查看不同的表。    第二个礼拜的pl/sql的学习,主要是用来批量的处理sql语句取出来的数据,和怎样程序化的有条件的取出数据。pl/sql对于整个开发是至关重要的,pl/sql的程序块主要分为两种,一种是匿名的,一种是命名的。其中命名的程序块又分为function和procedure,function主要通过return来返回值,而procedure主要是通过out参数来传回值,而procedure和function通常都是封装在package中,这和java非常像。但是比较容易让人泛嘀咕的是cursor的使用,cursor在大学数据库里面学的时候只一带而过,但是,在开发中cursor是频繁使用来取值,通常都是一个select 语句,通过 for loop,fech loop等语句来打开cursor,然后获取select取出的每行值,开发的话,trigger用的比较少,因为这个会造成很多的不性能的不稳定,程序块之间的相关性过大,不容易修改和维护。在这个学习中对于exception的学习,可以感觉到老师花的精力也很大,exception主要分为用户自定义型的和系统处理型,写的语句只是把系统报错进行输出。   

       用户自定义型的用的语句是raise application,其中用户要自定义一个异常的参数,用来标识异常,当出现错误时,可以对应找出。系统处理型的通常是在主程序里定义两个变量,一个是errorcode和errormessage一个用来获取sqlcode的值,一个用来获取sqlerrm的值。通常是使用dbms_output.put_line 输出这两个值,但是输出是在后台,很像java中main函数使用的输出语句,多数是用来做测试用。开发中多使用fnd_file.put_line对日志进行写入。对于不同权限的用户可以查看不同的表。   

        第二个礼拜的pl/sql的学习,主要是用来批量的处理sql语句取出来的数据,和怎样程序化的有条件的取出数据。pl/sql对于整个开发是至关重要的,pl/sql的程序块主要分为两种,一种是匿名的,一种是命名的。其中命名的程序块又分为function和procedure,function主要通过return来返回值,而procedure主要是通过out参数来传回值,而procedure和function通常都是封装在package中,这和java非常像。但是比较容易让人泛嘀咕的是cursor的使用,cursor在大学数据库里面学的时候只一带而过,但是,在开发中cursor是频繁使用用来取值,通常都是一个select 语句,通过 for loop,fech loop等语句来打开cursor,然后获取select取出的每行值,开发的话,trigger用的比较少,因为这个会造成很多的不性能的不稳定,程序块之间的相关性过大,不容易修改和维护。在这个学习中对于exception的学习,可以感觉到老师花的精力也很大,exception主要分为用户自定义型的和系统处理型,写的语句只是把系统报错进行输出。    用户自定义型的用的语句是raise application,其中用户要自定义一个异常的参数,用来标识异常,当出现错误时,可以对应找出。系统处理型的通常是在主程序里定义两个变量,一个是errorcode和errormessage一个用来获取sqlcode的值,一个用来获取sqlerrm的值。通常是使用dbms_output.put_line 输出这两个值,但是输出是在后台,很像java中main函数使用的输出语句,多数是用来做测试用。开发中多使用fnd_file.put_line对日志进行写入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值