1

我是 SQL 新手,现在正在尝试学习如何使用存储过程。我需要制作一个可以将人员添加到表中的存储过程。该表包含的值是姓名、姓氏、年龄和性别。

一个如何做到的例子?

4

3 回答 3

0

在 MySQL 中,您可以像这样通过 phpMyAdmin 创建一个过程:

DELIMITER //
CREATE PROCEDURE InsertPerson(IN Name VARCHAR(50), IN Last_Name VARCHAR(50), IN Age   INT(3), IN Sex INT(1))
BEGIN
    INSERT INTO PERSONS (Name, Last_Name, Age, Sex) values (Name, Last_Name, Age, Sex);
END //
DELIMITER ;

您可以通过以下方式使用该程序:

CALL InsertPerson('Ralph', 'Wiggum', 8, 1);

如果您在程序中出现问题,您可以通过以下方式放弃:

drop procedure InsertPerson;
于 2013-05-26T15:10:40.813 回答
0

存储过程因一个 DBMS 而异(与几乎通用的 SQL 不同)。如果您指的是 Oracle 的 PL/SQL,它类似于:

create or replace procedure MY_PROC is
begin
  insert into PERSON(NAME,LASTNAME,AGE,SEX) values ('Bruce', 'Wayne', 30,'M');
end MY_PROC;
/
于 2013-05-26T15:06:30.753 回答
0

由于未指定 SQL 供应商:

-- SQL SERVER

CREATE PROC InsertValues(
@Name nvarchar(50),
@LastName nvarchar(50),
@Age int
@Sex bit
)
AS
BEGIN
  INSERT INTO YourTable VALUES (@Name, @LastName, @Age, @Sex)
END
于 2013-05-26T14:59:43.540 回答