十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
begin之前好像只可以定义,不可以执行select,再就是declare后面结束时,是用分号,不是逗号。
创新互联建站主要从事网站设计、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务龙岗,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
还有就是好像没有to_date(t,'yyyy-mm-dd')
clock
to_date(m,'yyyy-mm-dd');
这种写法,必须得分开写
to_date(t,'yyyy-mm-dd')
clock
and
to_date(m,'yyyy-mm-dd')
设置环境变量(修改PATH和TNS_ADMIN环境变量):
对于NLS_LANG环境变量, 最好设置成和数据库端一致, 首先从数据库端查询字符集信息:
如图,以system普通用户登陆就好,进去后新建一个SQL WINDOW,输入
SQL select userenv('language') nls_lang from dual;
我的电脑结果为
NLS_LANG
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
右击"我的电脑" - "属性" - "高级" - "环境变量" - "系统环境变量":(win8.1系统,自己上网查怎么找出高级中的系统变量)
1.选择"Path" - 点击"编辑", 把 "D:\app\orcl\product\instantclient_12_1;" 加入;
2.点击"新建", 变量名设置为"TNS_ADMIN", 变量值设置为"D:\app\orcl\product\instantclient_12_1;", 点击"确定";
3.点击"新建", 变量名设置为"NLS_LANG", 变量值设置为"AMERICAN_AMERICA.ZHS16GBK", 点击"确定";
最后点击"确定"退出.
这样就全部结束了。
存储过程或者plsql程序段中?
plsql程序段:
declare
va number(10);
vb varchar(20);
create or replace procedure p_insert
(a varchar2(8))
as
begin
insert into table1 select * from table2 where "date"=a;
commit;
end;
上边是创建
执行时
begin
p_insert('20110101') ;
end;
说一下,你这个a和表2里的类型必须都一致,都要是字符型,如果不是的话,输入参数a不可以变,你可以在表2里用to_char函数将日期转成这个格式
还有你表2里的字段叫date,这个是关键字,所以加了双引号