日期:2014-05-17  浏览次数:21271 次

存储过程中给表增加一个字段并赋值 。。出错了


顺便问一下
在A表中获取满足条件A.status=10的记录,若在B表中存在该记录,则改变A.status(其中A表的部分字段在B表中存在但status字段在B表中没有)
这个我用left join实现,还有没有更好的方法
存储 增加字段

------解决方案--------------------
你这个得用动态sql。
execute immediate 'ALTER TABLE ...ADD .....';
------解决方案--------------------
引用:
Quote: 引用:

你这个得用动态sql。
execute immediate 'ALTER TABLE ...ADD .....';

后来想到了 可是赋值我懂怎么赋值


你这完全没搞明白pl/sql的语法。。。
里面错误百出啊。

------解决方案--------------------
引用:
Quote: 引用:

你这个得用动态sql。
execute immediate 'ALTER TABLE ...ADD .....';

后来想到了 可是赋值我懂怎么赋值

新增的字段就当变量来用了啊,上面的那句是要找到相同就更新日期么
------解决方案--------------------
先不说问题,把Alter之类的DDL语句写到SP里面本身是不合理的。

如果以后有人运行这个SP,岂不是会一直出错下去,因为第一次运行之后该列已经在表中存在了。

建议重新修改你的设计。