Oracle performance optimization cursor and SQL, these SQL statements are strictly unable to share the cursor (that is, share the execution plan), but the execution plans required for these statements are
Oracle performance optimization cursor and
DECLARE @ OldId varchar (50) DECLARE @ CustomerID varchar (50) DECLARE My_Cursor CURSOR -- Define the cursor for (select CustomerID, oldid from Customer where Area = 'bj ') -- locate the desired set and put it in the cursor OPEN M
SQL Cursor example filters data from another table based on data from one tableDECLARE @MID nvarchar (20)DECLARE @UTime datetimeDECLARE @TBL_Temp Table(MID nvarchar (20),Uptime datetime,Chat nvarchar (20))--get UserDECLARE my_cursor Cursor--Defining cursorsFor (SELECT distinct MID, Uptime from Tlinktest)OPEN My_cursorF
-- Start transaction
Begin tran
-- Do Not Display count Information
Set nocount on
Declare @ userid varchar (512)
Declare @ A int
Set @ A = 10000
-- Declare a cursor
Declare crmpscontact_cursor cursor
Select [userid] from [gmcc
Copy Code code as follows:
Create Trigger Tri_wk_csvhead_history on Wk_csvhead_history
--Declares a tri_wk_csvhead_history trigger,
The instead of INSERT---insert operation is substituted for the following action
As
Begin
DECLARE YB cursor--Declares a cursor
For
Select Noteno from inserted--the Noteno here to match the following
Open YB
SQL often uses loops, and here's a look at common loops and cursor loops1, first need a test table data student2. Normal circulation1) Cycle 5 times to modify student table information--Looping through modification records--DECLARE @i intSet @i=0While @iBeginUpdate Student Set demo = @i+5 where [email protected]Set @[email protected] +1End--View Results--SELECT *
Method
Open Method
Recordset. Open Source, ActiveConnection, CursorType, LockType, Options
Source
The Recordset object can be connected to the Command object through the Source attribute. The Source parameter can be a Command object name, an SQL Command, a specified data table name, or a Stored
Procedure. If this parameter is omitted, the system uses the Source attribute of the Recordset object.
ActiveConnection
The Recordset object can be connect
Code highlighting produced byActipro codehighlighter (freeware) http://Www.CodeHighlighter.com/--> 1 table1 structure as followsIdintnamevarchar( -)Declare @id intDeclare @name varchar( -)DeclareCursor1cursor for --Defining Cursors Cursor1Select * fromTable1--objects using cursors (fill in select text as required)OpenCursor1--Open CursorFetch Next fromCursor1 into @id,@name --move the cursor dow
purchase, that is, to obtain a view, as shown below:
Serial number
Name
Item Summary
1
Zhang San
Print paper, computer
2
Li Si
Clothes, mobile phones
Because you want to get a view, you cannot display it in the storage process. You only need to use functions. Of course, you can also query the purchased items one by one on the client based on the query results, however, multiple round-trips to the C/S end will affect the speed of creating a vie
Recently I have seen a headache with cursor problems. Refresh the cursor.
1 declare @ id varchar (50 );2 declare @ Title varchar (50 );3 declare @ Director varchar (50 );4 declare @ DateReleased varchar (50 );56
Copy codeThe Code is as follows: Create trigger tri_wk_CSVHead_History on wk_CSVHead_History
-- Declare a tri_wk_CSVHead_History trigger,
Instead of insert --- the insert operation is replaced by the following Operation
As
Begin
Declare YB cursor -- declare a cursor
Fo
Declare flag cursor scroll dynamic/* scroll indicates that the cursor pointer can be moved freely (otherwise, the cursor can only be moved forward), and dynamic indicates that the cursor can be read and written (otherwise, the cursor
declare cursor o isselect distinct to_char(report_date,'yyyymmdd') report_date from My_test_DAY_REPORT where report_date >=to_date(20130501,'yyyymmdd') order by 1; riqi o%rowtype;begin open o; loop fetch o into riqi; exit when o%notfound;dbms_output.put_line(riqi.report_date); delete from tmp_no_rijie where run_date=to_date(riqi.report_date, 'yyyymmdd'); commit; insert into tmp_no_rijie select
The cursor select operation will not perform any lock settings on the row being processed, so that other sessions connected to the database can change the selected data, using the for update clause, A mutex lock is added to the corresponding row of the previous active set returned by open. These locks prevent other sessions from modifying the rows in the active set. Until the entire transaction is committed.
Example:
1, first need a test table data student2. Normal circulation1) Cycle 5 times to modify student table information--Looping through modification records--DECLARE @i intSet @i=0While @iBeginUpdate Student Set demo = @i+5 where [email protected]Set @[email protected] +1End--View Results--SELECT * FROM Student2) query results after execution3. Cursor loop (no transaction)1) Modify the information according to th
Declare @ SS varchar (300)
Declare @ CSR cursor
Set @ CSR = cursor
Select statpartno from catalog where flag = 2
Open @ CSR
Fetch next from @ CSR
-- Print @ fetch_status
While @ fetch_status = 0
Begin
Fetch next from @ CSR into @ SS
Print @ SS + '|'
-- ============================================
Consider the following PL/SQL code to generate a matrix-style report in XML format:
Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->Declare
Rochelle count integer;
Begin
Dbms_output.put_line ('-- Generate matrix of parts by country
For part in (select id, description from parts order by description) loop
Dbms_output.put_line ('Dbms_output.put_line ('For coun
--Releasing Cursors--ThirdSelectOrdernum,username,moneytotal into#t fromforders PODECLARE @n int,@error int--Set @n=1Set @error=0 BEGIN TRAN --Declaration of Business Declare @tmp varchar( -),@userN varchar( -)--temporary variable to hold the cursor value DeclareY_currcursor for --declare that the cursor
/************************************************************ * Code formatted by SETYG * TIME:2014/7/29 10:04:44
/CREATE PROC handleemailrepeat as DECLARE email CURSOR For SELECT E.email, E.orderno, E.trackingno from Email20140725 as e WHERE e.[status] = 0 Order by E.email, E.orderno, E.trackingno BEGIN DECLARE @ @email VARCHAR, @firstEmail VARCHAR, @First
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.