如果表名是一个变量,sql语句该如何写? 20
有变量“:p_year”.select*from:p_year提示表名有错误。请问该如何处理?环境是OracleApplicationExpress。...
有变量“:p_year ”.
select * from :p_year 提示表名有错误。请问该如何处理?
环境是Oracle Application Express。 展开
select * from :p_year 提示表名有错误。请问该如何处理?
环境是Oracle Application Express。 展开
3个回答
展开全部
你这个select肯定要into的吧,否则没意义;
定义一个变量v_id;
execute immediate 'select id into v_id from ' || p_year;
定义一个变量v_id;
execute immediate 'select id into v_id from ' || p_year;
更多追问追答
追问
只能填充查询语句。其它的都不可以。
追答
不是在存储过程中么?
上面的我写错了,应该为
execute immediate 'select id into' || v_id || ' from ' || p_year;
只填充查询语句?不知道你要实现实现什么功能呀
execute immediate 'select * from ' || p_year;
展开全部
就把变量的标示符 当做表明 字符串拼装啊!
更多追问追答
追问
程序中输入sql查询语句后会自动出现查询结果,没有字符串拼接的步骤。
追答
拼装是在程序里实现的 最终还是一个整窜的string
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以用动态sql实现
execute immediate 'select * from aaa'
'select * from aaa' 你可以用你自己拼得字符串替代
execute immediate 'select * from aaa'
'select * from aaa' 你可以用你自己拼得字符串替代
追问
不能定义字符串,只让填充查询语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询