検索
ホームページphp教程PHP开发sqlserver カーソルを使用する手順の例 (カーソルの作成、カーソルのクローズ)

カーソルは DBMS サーバーに保存されるデータベース クエリであり、SELECT ステートメントではなく、ステートメントによって取得される結果セットです。カーソルが保存されると、アプリケーションは必要に応じてカーソル内のデータをスクロールまたは参照できます。

カーソルの使用

カーソルを使用する手順:

カーソルを使用する前に、カーソルを宣言 (定義) する必要があります。このプロシージャは実際にデータを取得するのではなく、使用する SELECT ステートメントとカーソル オプションを定義するだけです。

宣言したら、使用するにはカーソルを開く必要があります。このプロセスでは、前に定義した SELECT ステートメントを使用して、実際にデータを取得します。

データが入力されたカーソルの場合は、必要に応じて行をフェッチ (取得) します。

カーソルの使用を終了するときは、カーソルを閉じ、可能であればカーソルを解放する必要があります (特定の DBMS によって異なります)。

カーソルを宣言した後は、必要に応じて何度でも開いたり閉じたりできます。カーソルが開いている間は、フェッチ操作を必要なだけ頻繁に実行できます。

カーソルを作成します

SQL Server で DECLARE を使用してカーソルに名前を付け、必要に応じて WHERE およびその他の句を使用して対応する SELECT ステートメントを定義します。 例は次のとおりです。

コードは次のとおりです。

DECLARE CustCursor CURSOR
FOR
SELECT * FROM Customers
WHERE cust_email IS NULL

を使用します。カーソル

OPEN CURSOR ステートメントを使用するカーソルを開き、FETCH ステートメントを使用してカーソル データにアクセスします。 FETCH は、取得する行、取得する場所、およびそれらを (変数名として) 配置する場所を示します。 SQL Server でのカーソルの使用例は次のとおりです。

コードは次のとおりです。

DECLARE @cust_id CHAR(10),
@cust_name CHAR(50),
@cust_address CHAR(50),
@cust_city CHAR(50),
@cust_state CHAR(5),
@cust_zip CHAR(10),
@cust_country CHAR(50),
@cust_contact CHAR(50),
@cust_email CHAR(255)
OPEN CustCursor
FETCH NEXT FROM CustCursor
INTO @cust_id, @cust_name, @cust_address,
@cust_city, @cust_state, @cust_zip,
@cust_country, @cust_contact, @cust_email
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM CustCursor
INTO @cust_id, @cust_name, @cust_address,
@cust_city, @cust_state, @cust_zip,
@cust_country, @cust_contact, @cust_email
...
END
CLOSE CustCursor

この例では、 each 取得した列ごとに変数を宣言し、FETCH ステートメントで行を取得し、値をこれらの変数に保存します。 WHILE ループを使用して各行を処理します。 WHILE @@FETCH_STATUS = 0 の条件は、これ以上行をフェッチできなくなると処理を終了します (ループを終了します)。この例では特定の処理を実行しません。実際のコードでは、... プレースホルダーを特定の処理コードに置き換える必要があります。

カーソルを閉じる

SQL Server でカーソルを閉じます:

コードは次のとおりです:

CLOSE CustCursor
DEALLOCATE CURSOR CustCursor

CLOSE ステートメントは、カーソルを閉じるために使用されます。一度カーソルを閉じると、再度開かないと使用できません。 2回目に使うときは改めて宣言する必要はなく、OPENで開くだけです。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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ヘンタイを無料で生成します。

ホットツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

メモ帳++7.3.1

メモ帳++7.3.1

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

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。