2009-08-26 47 views
0

您能否指点我一个开始使用Oracle存储过程语法/用法的好地方?我似乎无法在那里找到任何好地方。我非常精通(java,C/C++)编程,并且我现在对我的需求知道足够的SQL,但我建议使用存储过程来完成我的业务,​​即:Oracle SQL Developer上的存储过程

取得结果从一个查询(2列),并将它们逐行插入到另一个表中,以及从第三个表中取值的递增键。当然,这最后一个值必须每行增加一次。我有查询做第一部分(提取要插入的数据)和第二部分(用增量键插入数据到表中,然后增加keygenerator表上的键),我现在需要的是结合两个,所以我可以批量插入6000行左右的行。

谢谢大家。

回答

1

Oracle为其存储过程使用PL/SQL编程语言。这里是关于PL/SQL的信息wiki

This也是一个很好的来源。

甲骨文提供了很多工具,使程序员的生活更轻松,但我的建议是开始,你可以得到熟悉的语言那么简单..

和... Stored Procedures in PL/SQL

0

作为初学者,你可以点击以下链接经历,它包含与程序的所有基本知识。 link

0

关于存储过程的基本语法是:

-- The REPLACE keyword is optional. Without it the CREATE statement 
-- will fail if there there is already a procedure with the same name 
CREATE [OR REPLACE] PROCEDURE procedure_name AS|IS 
-- Variable declarations 
BEGIN 
    -- Stored procedure body 

-- Optional exception block 
[EXCEPTION] 
    -- Exception handlers 
END [procedure_name]; 
/

-- The procedure_name after the END statement is optional, used 
-- mostly for readability 

的编程语言是PL/SQL默认,但Oracle还允许你用Java编写存储过程。您也可以通过创建外部过程来调用外部C代码(或任何可以生成C链接对象库的语言),这些外部过程引用操作系统中的共享库。

PL/SQL类似于pascal和Delphi。它基于以帕斯卡为基础的Ada语言。 PL代表“程序语言”,但它也允许面向对象的编程范例。

要获得更完整的语法参考,我特别喜欢关于语法和用法提示的PSOUG(http://psoug.org)参考库。这里有很好的起动两个环节:

http://psoug.org/definition/procedure.htm
http://psoug.org/reference/procedures.html