как вызвать несколько столбцов в хранимой процедуре - PullRequest
1 голос
/ 08 февраля 2012

Я новичок в хранимой процедуре и мало что знаю.Я тестирую на примере.Не могли бы вы помочь мне?Вот моя хранимая процедура

РАЗДЕЛИТЕЛЬ $$

ПРОЦЕДУРА УДАЛЕНИЯ, ЕСЛИ СУЩЕСТВУЕТ словарная таблица $$

ПРОЦЕДУРА СОЗДАНИЯ dictionarytable (id VARCHAR (20), имя VARCHAR(20), работа VARCHAR (20), место VARCHAR (20), мобильно VARCHAR (20), велосипед VARCHAR (20), автомобиль VARCHAR (20), homeno VARCHAR (20), словарь типа VARCHAR (20), то есть VARCHAR (20)), предложение VARCHAR (20), антоним VARCHAR (20), синоним VARCHAR (20))

BEGIN

выберите идентификатор, имя, работу, место, мобильно, велосипед, автомобиль, homeno,dictionaytype, значение, предложение, антоним, синоним из словаря INTO Dictionarytable;КОНЕЦ $$

РАЗДЕЛИТЕЛЬ;Я хотел, чтобы id, name, 13 столбцов из словаря (таблицы) вызывались в хранимой процедуре dictionaryable. Запрос в Begin неверен. Вы можете указать запрос для отображения всех 13 столбцов

1 Ответ

1 голос
/ 08 февраля 2012

Вы не можете передавать значения полей в процедуру, вы можете передавать их в пользовательские переменные, объявленные переменные или параметры OUT. Обратите внимание, что при использовании предложения INTO может быть передана только одна запись. Например:

SET @var1 = NULL;
SELECT column1 INTO @var1 FROM table;

Если вы хотите скопировать более одной записи, вы можете использовать оператор INSERT INTO ... SELECT , чтобы скопировать набор данных во вторую таблицу. Например:

INSERT INTO table2 SELECT column1 FROM table;

Кроме того, если вы хотите использовать переменные или параметры в качестве идентификаторов (имена полей в вашем случае), то вам следует использовать подготовленные операторы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...