Getting Started with PL/SQL Table Functions: Pipelined Table Functions
Vložit
- čas přidán 26. 08. 2018
- Pipelined table functions are table functions in which rows are returned or "piped" back to the calling query before the function has completed, avoiding the blocking behavior of normal PL/SQL functions and reduce PGA consumption.
This video is part of the Oracle Dev Gym class "Getting Started with Table Functions". You can watch it independent of the class, but then you miss out on the tutorials and quizzes! So visit devgym.oracle.com/pls/apex/dg... and register for the class!
========================================
Practically Perfect PL/SQL with Steven Feuerstein
Copyright © 2018 Oracle and/or its affiliates. Oracle is a registered trademark of Oracle and/or its affiliates. All rights reserved. Other names may be registered trademarks of their respective owners. Oracle disclaims any warranties or representations as to the accuracy or completeness of this recording, demonstration, and/or written materials (the “Materials”). The Materials are provided “as is” without any warranty of any kind, either express or implied, including without limitation warranties or merchantability, fitness for a particular purpose, and non-infringement. - Věda a technologie
Awesome Steven loved it!!!! What a powerful feature !!
Steven Sir can we create object types inside a package specification for use as return type on pipelined table function?
Awesome video
Awesome !! Then is there a real advantage using non pipelined functions, should we always using pipelined functions?
Thanks for this video, Steven! Quick question. When I create my table do I have to specify the number of rows? I want to try using a pipelined table to populate a table when I gather multiple columns from two separate tables. I’ve tried using CTEs and an inner join, which was almost successfully until I started to get multiple rows with duplicate data returned when I only needed the one row. I did try a select distinct to remove the duplicate rows but that proved futile of an effort. I’ve recently signed up for Dev Gym and watching your videos has given me some other ideas to try
Terri, glad to hear you are diving in! When you create a table you cannot specify a number of rows. I am not sure what might be going wrong. Here's a suggestion: go to livesql.oracle.com, and create an unlisted script, then send me the link: Steven.feuerstein@oracle.com, and I will take a look.
Practically Perfect PL/SQL with Steven Feuerstein sounds good, will do 👌🏽
Hi Steven , I have a question . As you mentioned in the "rownum
Great question! In that, I am not sure. :-) There is certainly going to be some amount of switching going on, but I expect it is engineered to keep to a minimum. Generally Oracle doesn't give out lots of internal details, partly because those details change or can with a new version. Also, pipelined table functions offer unique functionality. If you need that, you will take the performance you get, right? :-)
Akash jain awesome question bro !!
You don't need to open the cursor rows_in before fetch then ?
I have one question , I tried many time used cursor variable with return type inside package specification but
it got failed . It shows pls-00994 error
your a genuis