MySQL:插入一行并获取内容?

为了插入一行并获取内容,您需要使用存储过程,首先,需要创建一个表。之后,您需要创建一个存储过程,该存储过程将插入一行并将内容提供给最终用户。

为了完成上述任务,让我们首先创建一个表。创建表的查询如下:

mysql> create table InsertRecord_SelectTable
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(20),
   -> PRIMARY KEY(Id)
   -> );

现在创建一个存储过程,该存储过程在上表中插入一条记录,并在调用该存储过程后立即从表中获取结果。创建存储过程的查询如下:

mysql> DELIMITER //
mysql> create procedure Insert_select
   -> (
   -> In tempName varchar(40)
   -> )
   -> begin
   -> declare tempId int unsigned;
   -> insert into InsertRecord_SelectTable(Name) values (tempName);
   -> set tempId = last_insert_id();
   -> select *from InsertRecord_SelectTable where Id= tempId;
   -> END //
mysql> DELIMITER ;

调用存储过程以查看,插入一行并获取内容。调用存储过程的查询如下:

CALL yourStoredProcedureName;

现在,您可以调用存储过程了:

mysql> call Insert_select('John');

以下是输出:

+----+------+
| Id | Name |
+----+------+
| 1  | John |
+----+------+
1 row in set (0.12 sec)