SQL语句可以直接写变量吗?

oN5GrzoN 2016-05-19 05:05:15
DECLARE
v_test VARCHAR2(10):='1234';
BEGIN
SELECT * from "student";
--UPDATE "student" set comment='123' where id=1;
--UPDATE student set comment=&v_test where id=3;
END;

上面声明了个变量,一开始测试两个update,不成功,注释掉了,再测试select,都不成功,难道这只能放存储过程里吗?不能直接当SQL语句执行?我记得是可以的呀。
...全文
497 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangwuji156 2016-05-19
  • 打赏
  • 举报
回复
select 需要 into 剩下 列名全部需要加引号
oN5GrzoN 2016-05-19
  • 打赏
  • 举报
回复
引用 2 楼 wmxcn2000 的回复:
表名不可以用变量,必须写出来;或者动态语句;
我没弄表名啊,我只是想修改某个字段的值,后来,干脆写了个最简单的select语句,都不行"student"是个表名
卖水果的net 2016-05-19
  • 打赏
  • 举报
回复
表名不可以用变量,必须写出来;或者动态语句;
js14982 2016-05-19
  • 打赏
  • 举报
回复
sql语句可以直接写变量,你的报错肯定不是报你的变量错误。

3,499

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧