ホームページ php教程 PHP开发 SQL でのカーソルの使用

SQL でのカーソルの使用

Dec 14, 2016 am 11:20 AM

通常、SELECT クエリ ステートメントを使用する場合、それらはすべて 1 行のレコードに対して行われます。
クエリ アナライザーで複数行のレコード (つまり、レコードセット) を読み取りたい場合は、カーソル Or WHILE およびその他のループを使用する必要があります。


カーソルの種類:
1. 静的カーソル (データ行の変更を検出しません)
2. 動的カーソル (すべてのデータ行の変更を反映します)
3. 前方専用カーソル (スクロールをサポートしません)
4.キーセット カーソル (変更は反映できますが、挿入と削除を正確に反映することはできません)

カーソルの使用順序:
1. カーソルを定義します
2. カーソルを開きます
3. カーソルを使用します
4. カーソルを閉じる
5.カーソルを解放します

Transact-SQL:

カーソル名カーソル [LOCAL | GLOBAL][FORWARD_ONLY][STATIC KEYSET | READ_ONLY]
for update[, 列name]]
注: LOCAL ローカル カーソル GLOBAL グローバル カーソル
FORWARD_ONLY 前方スクロールのみ
STATIC 静的 KEYSET キーセット DYNAMIC 動的
READ_ONLY 読み取り専用 SCROLL_LOCKS カーソルの現在の行をロック

カーソルのデータを取得

FETCH PRI [ [NEXT | FIRST |
ABSOLUTE { n | @nvar | ]
カーソル名 [変数へ]
次の行 FIRST 最初の行
line ABSOLUTE n Line n
RELATIVE n 現在位置
からn番目の行を変数に代入 現在行の各フィールドの値を変数

に代入 カーソル状態変数:

@@fetch_status カーソル状態

行数
N Number of rows - 1 カーソルは動的です 0 空のセットカーソル
カーソルの現在の行:
カーソル名の現在

例 1: カーソルを使用してクエリされたデータセットを走査します

pubs を使用します

go

declare @auid char (12),@aulname varchar(20),@aufname varchar(20), @st char(2),@auinfo varchar(50)

auth_cur カーソルを宣言

select au_id、au_lname、au_fname、state

から著者

open auth_cur

fetch next from auth_cur into @auid,@aulname,@aufname, @st

while (@@fetch_status=0)

begin

print '著者番号: ' +@auid

print '作成者名: '+@aulname+','+@aufname

print '状態: '+@st

print '------------- --------- --'

fetch next from auth_cur into @auid,@aulname,@aufname, @st

end

close auth_cur

deallocate auth_cur

例 2: カーソルを使用して変更、データを削除

auth_cur カーソル スクロールを宣言for

au_lname の更新のために作成者から au_id、au_lname、au_fname、state

を選択します

open auth_cur

declare @rowcount int

set @rowcount = 6

auth_cur から絶対 @rowcount を取得 -- 識別された行を設定します変数 @rowcount を現在の行として使用します

-- 次の行はカーソルを使用して変更されます

update authors set au_lname='Zhang' where current of auth_cur -- カーソル内の現在の行を変更します

-- 以下この行は、カーソルを使用して削除操作を実行することです

auth_cur の現在の作者から削除します

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)