2013-02-22 13 views
5

私は以下のようにテーブルを作成しました:phpmyadminのテーブルにデータを挿入する手続きを書く方法は?

student: 
+----+------+-----------+--------+ 
|uid | name | user_name | branch | 
+----+------+-----------+--------+ 
| |  |   |  | 
+----+------+-----------+--------+ 

私は手順を使用して、テーブルにデータを挿入します。

私が書いた手順は次のとおりです。

create procedure add(in_name varchar(50),in_user_name varchar(50),in_branch varchar(50))
begin
insert into student (name,user_name,branch) values (in_name ,in_user_name,in_branch);
end;

答えて

11

はthis-

CREATE PROCEDURE simpleproc (IN name varchar(50),IN user_name varchar(50),IN branch varchar(50)) 
BEGIN 
    insert into student (name,user_name,branch) values (in_name ,in_user_name,in_branch); 
END 
+0

感謝を試してみて、そのはうまく機能。電話の時に 私はちょうど値を渡す必要がありますか? exmp: 'call simpleproc( 'hatjeet'、 'jadeja'、 'i.s.e')' –

+0

はい、あなたは正しいです。 –

+0

しかし、私がそれを試しているときにエラーが発生します: '#1054 - 'フィールドリスト'の 'in_name'列が不明です –

2
# Switch delimiter to //, so phpMyAdmin will not execute it line by line. 
DELIMITER // 
CREATE PROCEDURE usp_rateChapter12 

(IN numRating_Chapter INT(11) UNSIGNED, 

IN txtRating_Chapter VARCHAR(250), 

IN chapterName VARCHAR(250), 

IN addedBy VARCHAR(250) 

) 

BEGIN 
DECLARE numRating_Chapter INT; 

DECLARE txtRating_Chapter VARCHAR(250); 

DECLARE chapterName1 VARCHAR(250); 

DECLARE addedBy1 VARCHAR(250); 

DECLARE chapterId INT; 

DECLARE studentId INT; 

SET chapterName1 = chapterName; 
SET addedBy1 = addedBy; 

SET chapterId = (SELECT chapterId 
        FROM chapters 
        WHERE chaptername = chapterName1); 

SET studentId = (SELECT Id 
        FROM students 
        WHERE email = addedBy1); 

SELECT chapterId; 
SELECT studentId; 

INSERT INTO ratechapter (rateBy, rateText, rateLevel, chapterRated) 
VALUES (studentId, txtRating_Chapter, numRating_Chapter,chapterId); 

END // 

//DELIMITER; 
関連する問題