Heim >Datenbank >MySQL-Tutorial >Der MySQL-Cursor kann kein Datenproblem und keine Lösung finden

Der MySQL-Cursor kann kein Datenproblem und keine Lösung finden

零下一度
零下一度Original
2017-05-12 11:04:412890Durchsuche

Vor ein paar Tagen bin ich auf das Problem gestoßen, dass der MySQL-Cursor keine Daten finden konnte. Dieses Problem hat mich zwei Tage lang gestört, und jetzt habe ich es endlich gelöst .

Dies ist eine Anweisung zur Tabellenerstellung. Fügen Sie zwei Datenzeilen ein

drop table如果存在testinfo;
创建表testinfo
(
name varchar(10)not null,
年龄int
);
truncate table testinfo;
插入testinfo()值('你',15);
插入testinfo()值('me',20);

Fragen Sie die Tabellendaten von

mysql> select name,age from testinfo; 
+ ------ + ------ + 
| 名称| 年龄| 
+ ------ + ------ + 
| 你| 15 | 
| 我| 20 | 
+ ------ + ------ + 
这是使用游标的存储过程 
drop procedure if exists test_proc;
分隔符//
创建过程test_proc()
开始
DECLARE done int default false;
DECLARE一个char(10);
DECLARE b int;
DECLARE cur1游标用于选择名称,age from testinfo;
DECLARE继续处理SQLSTATE'02000'set done = true;
打开cur1;
read_loop:loop
        FETCh cur1进入a,b;
        如果这样做了
                离开read_loop
        万一;
        选择@ a,@ b;
        插入testinfo值(@ a,@ b);
端环;
关闭cur1;
结束
//
分隔符
调用test_proc();
ab

Das Ausführungsergebnis ist wie folgt

mysql> \。/opt/mysql/test_proc.sql 
查询行,受影响的0行,1个警告(0.00秒) 
查询行,受影响(0.02秒)0行 
+ ------ + ------ + 
| @a | @b | 
+ ------ + ------ + 
| NULL | NULL | 
+ ------ + ------ + 
1行集(0.00秒)

Da ist ein Fehler oben: 1048 (23000): Spalte „Name“ darf nicht leer sein

Ich weiß nicht Ich weiß nicht, wo der Fehler liegt. Warum nimmst du
Keine Daten? Es sind zwei Tage vergangen und jetzt weiß ich es endlich. Es sollte wie folgt geändert werden:

Fügen Sie den Testinfo-Wert ein (@a, @b); ändern Sie ihn, um den Testinfo-Wert einzufügen (a, b); das ist es Die Variablen a, b und dann passieren Der Cursor weist ihm einen Wert zu, aber er weist @ a, @ b keinen Wert zu ...

Wenn Sie also auf ein Problem stoßen, kann dies leicht der Fall sein gelöst, wenn man genau hinschaut.

[Verwandte Empfehlungen]

1.

Kostenloses MySQL-Online-Video-Tutorial

2.

Neuestes MySQL-Handbuch-Tutorial

3.

Dinge zum Datenbankdesign

Das obige ist der detaillierte Inhalt vonDer MySQL-Cursor kann kein Datenproblem und keine Lösung finden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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