Heim Datenbank MySQL-Tutorial 数据库中的书签游标

数据库中的书签游标

Jun 07, 2016 pm 03:00 PM
Lesezeichen 引入 Zustand 数据库 标的 游标 Ergebnis 解决

游标的引入 为解决在多条结果集的情况下,要逐一读取每一条记录所带来的麻烦。游标为我们提供了一种较好的解决方案。 游标的组成 每一个游标必须有四个组成部分。且必须符合下面的顺序。 1,declare游标(用来声明游标) 2,open游标 3,从一个游标中fetch信


游标的引入

       为解决在多条结果集的情况下,要逐一读取每一条记录所带来的麻烦。游标为我们提供了一种较好的解决方案。

游标的组成

       每一个游标必须有四个组成部分。且必须符合下面的顺序。

1,             declare游标(用来声明游标)

2,             open游标

3,             从一个游标中fetch信息

4,             Close或deallocate游标

游标的声明

       声明游标主要包含以下内容:游标名字,数据来源表和列,选取条件,属性仅读或可修改

       其语法格式如下:

       Declare 游标名称 cursor

       [local|glocal]                 指定游标的作用域是局部的还是全局的

       [forward_only|scroll]    选择forward_only则游标只能从第一行滚动到最后一行。Scroll表明所有的提取操作都可用,如果不使用该保留字则只能进行next操作。

       [read_only]                  表明不允许游标内的数据被更新

       For 选择语句               是定义结果集的select语句,应该注意的是在游标中不能使用compute等语句。

       [for[update[of 字段名称1,字段名称2…]]]   定义在游标中可被修改的列

打开游标

       游标声明以后,如果要从游标中读取数据,必须打开游标,使用open命令,语法格式如下:

Open 游标名称

读取游标中的数据——fetch

       Fetch

       [[next|prior|first|last|absolute{n|@nvar}|relative{n|@nvar}]from]cursor_name

       [into  @variable_name1,@variable_name2…]

       Next:返回结果集中当前行的下一行,并增加当前行数为返回行行数,如果fetchnext是第一次读取游标中数据则返回结果集中的是第一行而不是第二行

       Prior:返回结果集中当前行的前一行并减少当前行数为返回行行数。如果fetchprior是第一次读取游标中数据则无数据记录返回并把游标位置设为第一行。

       First:返回游标中第一行

       Last:返回游标中的最后一行

       Absolute{n|@nvar}:如果n或者@nvar为正数,则表示从游标中返回的数据行数。如果n@nvar为负数,则返回游标内从最后一行数据算起的第n@nvar行数据。

n@nvar超过游标的数据子集范畴,则@@fetch_stars返回-1。在该情况下,如果n@nvar为负数,则执行fetchnext命令会得到第一行数据,如果为正值,执行fetch prior命令则会得到最后一行数据。n@nvar可以是一固定值,也可以是一smallint,tinyintint类型的变量。

       Relative {n|@nvar}:n@nvar为正数,则读取游标当前位置起向后的第n@nvar行数据。如果为负数,则读取游标当前位置起向前的第n或@nvar行数据。若n@nvar超过游标的数据子集范畴,则@@fetch_stars返回-1.在该情况下,如果n@nvar为负数,则执行fetchnext命令则会得到第一行数据,如果为正值,执行fetch prior命令则会得到最后一行数据。n@nvar可以是一固定值,也可以是一smallint,tinyintint类型的变量。

       Into@variable_name[,…n]:允许将使用fetch命令读取的数据存放在多个变量中,在变量行中的每个变量必须与游标结果集中相应的列相对应,每一变量的数据类型也要与游标中数据列的数据类型相匹配。

检查游标状态

       @@fetch_status:全局变量,返回上次执行fetch命令的状态。在每次用fetch从游标中读取数据时,都应检查该变量以确定上次fetch操作是否成功,来决定如何进行下一步处理。@@fetch_status变量有三种不同的返回值。

0:表示成功取出了一行。

-1:表示未取到数据,因为所要求游标位置超出了结果集

-2:表示返回的行已经不再是结果集的一个成员。这种情况只有在游标不是insensitive的情况下出现,即其他进程已删除了行或改变了游标打开的关键值

编辑当前游标行

       进行定位修改或删除游标中数据的语法规则为:

Update table_name                     updatedelete的表名

Set column_name1={expression1|null(select_statement)}

[,column_name2={expression2|null(select_statement)}]     update的列名

Where current of cursor_name

Delete from table_name

Where current of cursor_name    游标名

举例:更新authors表中的au_lnameau_fname

        首先声明一个游标

        Declare authors_cur scroll cursor

        For

        Select*from authors

        for update of au_lname,au_fname

        更新

        Update authors

        Set au_lname=’china’,au_fname=’asia’

        Where current of authors_cur

关闭游标

       使用close命令关闭游标,在处理完游标中数据之后,必须关闭游标来释放数据结果集合定位于数据记录上的锁,close语句关闭游标但不释放游标占用的数据结构。语法规则为:close游标名称

释放游标

       在使用游标时,各种针对游标的操作或者引用游标名或者引用指向游标的游标变量,当close命令关闭游标时并没有释放游标占用的数据结构,因此常使用deallocate命令删除掉游标的游标名或游标变量之间的联系,并且释放游标占用的所用系统资源。语法:deallocate游标名称

注:当若真的完成释放游标的操作,再次使用时,则需重新声明



Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie implementiert die Go-Sprache die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank? Wie implementiert die Go-Sprache die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank? Mar 27, 2024 pm 09:39 PM

Die Go-Sprache ist eine effiziente, prägnante und leicht zu erlernende Programmiersprache. Sie wird von Entwicklern aufgrund ihrer Vorteile bei der gleichzeitigen Programmierung und Netzwerkprogrammierung bevorzugt. In der tatsächlichen Entwicklung sind Datenbankoperationen ein unverzichtbarer Bestandteil. In diesem Artikel wird erläutert, wie die Go-Sprache zum Implementieren von Datenbank-Hinzufügungs-, Lösch-, Änderungs- und Abfrageoperationen verwendet wird. In der Go-Sprache verwenden wir normalerweise Bibliotheken von Drittanbietern, um Datenbanken zu betreiben, z. B. häufig verwendete SQL-Pakete, Gorm usw. Hier nehmen wir das SQL-Paket als Beispiel, um vorzustellen, wie die Hinzufügungs-, Lösch-, Änderungs- und Abfragevorgänge der Datenbank implementiert werden. Angenommen, wir verwenden eine MySQL-Datenbank.

Einfache Schritte: Lösen Sie das Problem, dass die chinesische Schnittstelle von VSCode nicht angezeigt werden kann Einfache Schritte: Lösen Sie das Problem, dass die chinesische Schnittstelle von VSCode nicht angezeigt werden kann Mar 25, 2024 am 11:57 AM

Meine Schritte sind wie folgt: Lösen Sie das Problem, dass die chinesische Benutzeroberfläche von VSCode nicht angezeigt werden kann. Nach der Installation von VSCode stellten einige Leute fest, dass die Benutzeroberfläche unabhängig von der eingestellten Sprache immer als Kästchen oder verstümmelte Zeichen angezeigt wurde, was sehr problematisch war. Dies wird häufig durch fehlende Sprachunterstützungspakete oder Schriftartenprobleme auf dem System verursacht. Im Folgenden werde ich einige einfache Lösungsschritte vorstellen, die Ihnen bei der Behebung des Problems helfen, dass die chinesische Benutzeroberfläche von VSCode nicht angezeigt werden kann. Schritt 1: Installieren Sie das chinesische Sprachpaket. Zuerst müssen wir das chinesische Sprachpaket für VSCode installieren. Öffnen Sie VSCode und klicken Sie auf die untere linke Ecke

Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Jun 04, 2024 pm 01:42 PM

So verwenden Sie MySQLi zum Herstellen einer Datenbankverbindung in PHP: MySQLi-Erweiterung einbinden (require_once) Verbindungsfunktion erstellen (functionconnect_to_db) Verbindungsfunktion aufrufen ($conn=connect_to_db()) Abfrage ausführen ($result=$conn->query()) Schließen Verbindung ( $conn->close())

Wie implementiert Hibernate polymorphe Zuordnung? Wie implementiert Hibernate polymorphe Zuordnung? Apr 17, 2024 pm 12:09 PM

Die polymorphe Hibernate-Zuordnung kann geerbte Klassen der Datenbank zuordnen und bietet die folgenden Zuordnungstypen: Joined-Subclass: Erstellen Sie eine separate Tabelle für die Unterklasse, einschließlich aller Spalten der übergeordneten Klasse. Tabelle pro Klasse: Erstellen Sie eine separate Tabelle für Unterklassen, die nur unterklassenspezifische Spalten enthält. Union-Unterklasse: ähnelt der verbundenen Unterklasse, aber die Tabelle der übergeordneten Klasse vereint alle Spalten der Unterklasse.

iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen Jul 18, 2024 am 05:48 AM

Apples neueste Versionen der iOS18-, iPadOS18- und macOS Sequoia-Systeme haben der Fotoanwendung eine wichtige Funktion hinzugefügt, die Benutzern dabei helfen soll, aus verschiedenen Gründen verlorene oder beschädigte Fotos und Videos einfach wiederherzustellen. Mit der neuen Funktion wird im Abschnitt „Extras“ der Fotos-App ein Album mit dem Namen „Wiederhergestellt“ eingeführt, das automatisch angezeigt wird, wenn ein Benutzer Bilder oder Videos auf seinem Gerät hat, die nicht Teil seiner Fotobibliothek sind. Das Aufkommen des Albums „Wiederhergestellt“ bietet eine Lösung für Fotos und Videos, die aufgrund einer Datenbankbeschädigung verloren gehen, die Kameraanwendung nicht korrekt in der Fotobibliothek speichert oder eine Drittanbieteranwendung die Fotobibliothek verwaltet. Benutzer benötigen nur wenige einfache Schritte

Was soll ich tun, wenn ich mein Passwort auf meinem Win8-Computer vergesse? Einfache Lösung! Was soll ich tun, wenn ich mein Passwort auf meinem Win8-Computer vergesse? Einfache Lösung! Mar 27, 2024 pm 05:12 PM

Was soll ich tun, wenn ich mein Passwort auf meinem Win8-Computer vergesse? Einfache Lösung! Im täglichen Leben kommt es häufig vor, dass wir unsere Passwörter vergessen, insbesondere wenn das Passwort zum Anmelden an einem Computer verwendet wird, den wir häufig verwenden. Diese Situation kommt noch häufiger vor. Insbesondere für Computerbenutzer, die das Betriebssystem Windows 8 verwenden, kann das Vergessen des Passworts einige Probleme verursachen, aber tatsächlich ist das Vergessen des Passworts des Win8-Computers kein schwer zu lösendes Problem. In diesem Artikel stellen wir einige Methoden zur Lösung des Problems vergessener Passwörter auf einem Win8-Computer vor, damit Sie leichter damit umgehen können.

Eine ausführliche Analyse, wie HTML die Datenbank liest Eine ausführliche Analyse, wie HTML die Datenbank liest Apr 09, 2024 pm 12:36 PM

HTML kann die Datenbank nicht direkt lesen, dies kann jedoch über JavaScript und AJAX erreicht werden. Zu den Schritten gehören das Herstellen einer Datenbankverbindung, das Senden einer Abfrage, das Verarbeiten der Antwort und das Aktualisieren der Seite. Dieser Artikel bietet ein praktisches Beispiel für die Verwendung von JavaScript, AJAX und PHP zum Lesen von Daten aus einer MySQL-Datenbank und zeigt, wie Abfrageergebnisse dynamisch auf einer HTML-Seite angezeigt werden. In diesem Beispiel wird XMLHttpRequest verwendet, um eine Datenbankverbindung herzustellen, eine Abfrage zu senden und die Antwort zu verarbeiten. Dadurch werden Daten in Seitenelemente gefüllt und die Funktion des HTML-Lesens der Datenbank realisiert.

Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems Mar 25, 2024 pm 12:42 PM

Analyse der Grundprinzipien des MySQL-Datenbankverwaltungssystems MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem, das eine strukturierte Abfragesprache (SQL) zur Datenspeicherung und -verwaltung verwendet. In diesem Artikel werden die Grundprinzipien des MySQL-Datenbankverwaltungssystems vorgestellt, einschließlich Datenbankerstellung, Datentabellenentwurf, Datenhinzufügung, -löschung, -änderung und anderer Vorgänge, und spezifische Codebeispiele bereitgestellt. 1. Datenbankerstellung In MySQL müssen Sie zunächst eine Datenbankinstanz zum Speichern von Daten erstellen. Der folgende Code kann eine Datei mit dem Namen „my

See all articles