请帮忙解答笫3题,要oracle存储过程面试题

写oracle存储过程,然后需要从A,B,C三张表中查询一个字段,然后将这三张表中查询的字段拼接起来,然后跟新到D表的字段上,问题在于,我在写处理过程时,怎么用if判断怎么去处理如果A中字段为空,或者B字段为空,或者D字段为空,那么将会照成拼接起来会多一个逗号,怎么通过判断去除逗号,求大神,解决小问题,在线等,谢谢。下面就是我写的,但是没处理好去除逗号问题。





当前的登录用户为A,创建以下存储过程:

A用户没有权限操作B用户下的表,需要在B用户下显示地给A用户授权!

用B用户登录,执行以下操作:

在ORACLE中,单引号有两个作用,一是字符串是由单引号引用,二是转义。单引号的使用是就近配对,即就近原则。而在单引号充当转义角色时相对不好理解

2、连接符‘||’导致了新一轮的转义:连接符号‘||’左右的单引号没有任何的关系,除非‘||’是作为字符串的一部分(这在动态SQL中很常见)。

举几个简单例子: 一个单引号,是最正常的情况,比如:'asdfas',这代表一个字符串,显示的内容是 asdfas ; 两个单引号,一般成对出现在一个单引号之内,表示一个单引号之内的单引号,比如 'sdfs''123''dfsdf',这种字符串显示的时候就是 sdfs'123'dfsdf 三个或四个单引号的情况是在一个和两个的情况之上发展出来的,比如'asd'''||输入值||'''',它显示的时候内容就是: asd'输入值'。 (把一对两个单引号分开了,一部分在||之前,一部分在||之后) (后面四个单引号分开看,中间两个是一对--代表一对单引号之内的一个单引号,外边两个是一对--代表一对单引号)

。。。。一般类似跟数据库相关的都尽量使用单引号

我要回帖

更多关于 请帮忙解答 英文 的文章

 

随机推荐