Здравствуйте добрые люди.
Interbase 7
Тут такая проблемка по не знанию, честно искал, но видимо для моего простого понятия ничего не нашлось..
Вообщем проблема в следующем: Есть 2 таблицы:
1)В первую нужно вставить 2 значений, имя и сколько лет.
2)Во вторую вставить 3 значения.
Написал Хп.
CREATE PROCEDURE INS_VED5 (sname char(50), sage integer, sid_horses integer, sid_matchs integer, sid_marks integer)
AS
DECLARE VARIABLE ID_H INTEGER;
DECLARE VARIABLE ID_R INTEGER;
BEGIN
IF (NOT EXISTS (SELECT * FROM Thorse WHERE Name = :sname AND Age = :sAge))
THEN
INSERT INTO Thorse(Name, Age) VALUES (:sname, :sAge);
SELECT ID_Horse FROM Thorse WHERE Name=:sName and Age=:sAge INTO :id_H;
IF (NOT EXISTS (SELECT * FROM Treitings WHERE Id_Horses = :sid_horses AND id_Matchs = :sid_matchs and id_Marks = :sid_marks))
THEN
INSERT INTO Treitings(Id_Horses, id_Matchs, id_Marks) VALUES (:sid_horses, :sid_matchs, :sid_marks);
SELECT ID_Reitings FROM Treitings WHERE Id_Horses = :sid_horses AND id_Matchs = :sid_matchs and id_Marks = :sid_marks INTO :id_R;
end
Не знаю, как зывать эту хп, чтоб все что мне нужно вставилось в две таблицы, пытался так:
execute procedure ins_ved5 ('nnn', 12, 2, 2, 2)
Но не работает, пишет ошибка в параметрах. Как вот правильно ее вызвать?.
И второй вопрос:
Возможно ли создать хп с 2-мя счетчиками. Точнее сказать Мне нужно, что бы вторая таблица в первом поле была, как счетчик, и второе поле так же, а третее и четвертое я уже сам заполняю вызовом хп.
Или что бы вторая таблица, первое поле счетчик, а второе поле брала значений из первое таблицы (в котором первое поле счетчик). Ну т.е. Поле второй таблицы = первому полю первой таблицы. Например вызываю я хп: Она добавляет в первое поле первой таблицы значение '1' и второе поле второй таблицы тоже брала значение 1 и т.д... Как то так..)) Помогите пожалуйста)