pb动态sql语句格式一中使用变量出错?解决思路

pb动态sql语句格式一中使用变量出错?
如果不设置变量,运行就没问题,如下:
string st1
st1='select * into #table1 from table '
execute immediate :st1 using sqlca;

如果设置一个变量作为上面语句的检索条件就出错,如下:
string hzrq
hzrq=ddlb_1.text
string st1
st1=''select * into #table1 from table  where fsrq<=:hzrq'
execute immediate :st1 using sqlca;

程序运行时提示如下:
incorrect syntax near ':'

请问这里的变量前用冒号有错吗?什么原因出错?



------解决思路----------------------
str1属于字符串,
st1="select * into #table1 from table  where fsrq<='"+hzrq+"' "
要写成这样