MYSQL网站制作之Sqlplus中调试带cursor的存储历程
表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。存储历程存储历程createorreplacepackagepkg_testastypet_cursorisrefcursor;
proceduresp_get_catalogs(p_useridinnumber,cur_catalogsoutt_cursor);
end;createorreplacepackagebodypkg_testas
proceduresp_get_catalogs(p_useridinnumber,cur_catalogsoutt_cursor)is
v_sqlvarchar2(500);
begin
ifp_userid=0then
opencur_catalogsfor
selectuserid,loginid,namefromtuser;
else
v_sql:=selectuserid,loginid,namefromtuserwhereuserid=:w_userid;
opencur_catalogsforv_sql
usingp_userid;
endif;
exception
whenothersthen
dbms_output.put_line(otherexception);
endsp_get_catalogs;
endpkg_test;Sqlplus调试代码variablev_currefcursor;
variablev_useridnumber;
setautoprintoff;
begin
:v_userid:=-9222229;
end;
/
executepkg_test.sp_get_catalogs(:v_userid,:v_cur);
printv_cur;总结pl/sqldeveloper里的CommandWindow内里输出(Sqlplus调试代码)调试存储历程会呈现“refcursordontsupported!“的毛病,换到sqlplus内里调试统统一般。参考文档SQL*PlusUsersGuideandReferenceRelease9.2
尽管DBaaS模式有缺点,但它还是适合某些客户群体,这为解决方案提供商提供了新的商机。鉴于云服务的增长,解决方案提供商除了拥抱这些技术还有什么选择呢?如果他们不这样做,他们就会冒着被竞争对手击败的风险。但他们不能只想到如何把DBaaS的利润率与企业内部系统相比较。 总感觉自己还是不会SQL 另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程); 我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过! 你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。 groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。 如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。 对递归类的树遍历很有帮助。个人感觉这个真是太棒了!阅读清晰,非常有时代感。
页:
[1]