merge into card f using ( select e.card_status,e.issue_date,c.id id,e.card_no card_no,e.maincard_flag maincard_flag,e.new_flag new_flag,e.suspend_times suspend_times from etl_custcard e,customer c where e.new_flag='1' And e.sys_date='20070904' and e.cust_no=c.id_no ) b on (f.card_number=b.card_no) when matched then update set CUSTOMER_ID =b.id, MAINCARD_FLAG =b.maincard_flag, NEW_FLAG =b.new_flag, SUSPEND_TIMES = nvl(b.suspend_times,0),f.state=b.card_status,f.open_date=b.issue_date when not matched then insert ( ID, CARD_LIMIT,MONTHLY_PAY,LIMIT_USE_PECENT_HY,TIMES_HY,AMOUNT_HY,CORRECT_AMOUNT_HY,CORRECT_PERCENT_HY,DAILY_BALANCE_HY,LIMIT_USE_PECENT_Y, TIMES_Y,AMOUNT_Y,CORRECT_AMOUNT_Y,CORRECT_PERCENT_Y,DAILY_BALANCE_Y ,DISTRUSTFUL_AMOUNT,DISTRUSTFUL_TIMES,OWE_TIMES,ACCOUNT_LIMIT, OWE_AMOUNT, CUSTOMER_ID,CARD_NUMBER,MAINCARD_FLAG,NEW_FLAG,SUSPEND_TIMES,record_date,state,open_date ) values( hibernate_sequence.nextval,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0, 0, b.id,b.card_no, b.maincard_flag,b.new_flag,nvl(b.suspend_times,0),sysdate,b.card_status,b.issue_date );
这条语句在pl/sql dev中执行没有问题
但是 用shell 调用sqlplus 却报错说:
SQL> 2 ag,nvl(b.suspend_times,0),sysdate,b.card_status,b.issue_date )
*
ERROR at line 2:
ORA-00917: missing comma
折腾良久 发现:select e.card_status,e.issue_date,c.id id ...
前面两个字段没有加别名。加上别名就好了。
分享到:
相关推荐
PL/SQL Developer中文语言包Chinese.lang及注册文件aalf.dat Tag: PlSQLDev 中文语言包 Chinese.... 重新启动(restart) Pl/sqldeveloper应用程序。 注册文件aalf.dat: 装完后 把aalf.dat 拷贝到plsql的根目录下面
PL/SQL developer 12.07 注册码,亲测有效 PL/SQL developer 12.07 注册码,亲测有效 PL/SQL developer 12.07 注册码,亲测有效
instantclient-sdk-windows.x64-12.1.0.2.0.zip和instantclient-sqlplus-windows.x64-12.1.0.2.0.zip和instantclient-basic-windows.x64-12.1.0.2.0.zip 配置Oracle client必备。
1.练习利用SQL*Plus编写、执行PL/SQL程序的命令。 2.记录执行命令和操作过程中遇到的问题及解决方法,注意从原理上解释原因。 3.练习利用PLSQL Developer编写和管理存储过程、存储函数和触发器等。
PL/SQL Developer 连接远程 Oracle 数据库的步骤和解决方案 PL/SQL Developer 是一个功能强大的 Oracle 数据库开发和管理工具,但是在连接远程 Oracle 数据库时,可能会遇到一些问题。本文将详细介绍如何使用 PL/...
在pl/sql developer中右击某表,显示的就是该语句,这样做不会将该表锁住。 想修改某几个字段也没有问题select num,name,t.rowid from student t。 您可能感兴趣的文章:oracle sqlplus 常用命令大全plsql连接oracle...
之前用PL/SQL DEVELOPER和SQLPLUS 登录数据库都没有问题,就是应用程序通过JDBC连接Oracle时无法成功连接,出现ORA-12505错误listener does not currently know of SID given in connect descriptor
5、下载并安装PL.SQL.Developer配置应用 配置tools->preferences->connection Oracle Home D:/instantclient_11_2 OCI library D:/instantclient_11_2/oci.dll 中文的PL/SQL Developer就是 工具-->首选项--&...
2010-10-23 12:45 <DIR> 01美河提供Pl.SQL 2010-10-23 13:15 <DIR> 02SQLPLUS_Help 2010-10-23 13:15 <DIR> 02自己写的一些试验脚本 2006-12-27 14:25 873,213 MySQL的最详细帮助文件.chm 2006-06-05 02:08 1,741,...
3、要求使用sqlplus,pl/sql或developer建立存储过程,触发器和程序包等代码,其中要求用到游标,异常,各种语句等对表中数据进行处理; 4、使用自己熟悉的开发语言,加入界面,连接数据库; 5、报告要有操作截图...
支持PL/SQL Developer。 由于客户端一般不需要使用Sqlplus所以为封装, 需要的话可以自行复制进去就行。 也可以用于BDE模式发布, 不过BDE中需要自行设置OCI.DLL为本客户端目录下OCI.DLL文件 PS: 由于CSDN上传...
支持PL/SQL Developer。 由于客户端一般不需要使用Sqlplus所以为封装, 需要的话可以自行复制进去就行。 也可以用于BDE模式发布, 不过BDE中需要自行设置OCI.DLL为本客户端目录下OCI.DLL文件 PS: 由于CSDN上传...
plsql导出数据到excel常用的三种方法,(1)直接导出;(2)转换导出方式;(3)导出后转换格式;
4、下载并安装PL.SQL.Developer配置应用 貌似把环境变量Path添加了instantclient就可以了,不需要具体的设置。 配置tools->preferences->connection Oracle Home D:/instantclient_11_2 OCI library D:/instant...
basic 和 sqlplus windows64位环境下,使用InstantClient,PL/SQL Developer连接Oracle,InstantClient文件下载
在开发过程中,大量使用Toad和PL/SQL Developer。因此,Oracle客户端安装盘,仅仅是被作为一个驱动而需要,根本没必要装那么大的空间。这是一个精简的 Oracle11g-client客户端连接工具,同时可以兼容oracle10g,本...
通过Toad或PL/SQL Developer对语句的性能进行和索引的使用情况进行分析 对Oracle缺省的优化不满意可以强制使用Hint,但一般不推荐使用 对Flag等只存储是或否信息的字段,一般不推荐建立索引。必要可以采用位图...
为减小软件体积,没有对PL/SQL Developer打包,请用户自行下载。 ------------------------------------ >移除了OLE DB/ODBC相关的几个文件, 相应的注册表也一并移除 >加入OCCI相关的DLL文件,以支持occi程序的...
为减小软件体积,没有对PL/SQL Developer打包,请用户自行下载。 ------------------------------------ >移除了OLE DB/ODBC相关的几个文件, 相应的注册表也一并移除 >加入OCCI相关的DLL文件,以支持occi程序的...
要是使用PL/SQL Developer等第三方工具的话,OracleOraDb11g_home1TNSListener也要开启 --普通账户登陆,@orcl可以不加,代表要访问的数据库。当只有一个时可以不输入 conn scott/tiger@orcl --sys正常登陆,也必须要...