Вставка Oracle с многозначным столбцом - PullRequest
0 голосов
/ 14 июля 2010

Эй, я новичок в Oracle SQL, и я пытаюсь создать триггер, который имеет вставку, зависящую от столбцов, полученных из запроса выбора.

У меня есть базовое фэнтезийное приложение для бейсбола, и я пытаюсьобновить таблицу, которая соотносит игрока с командой, в которой он играл за один день.Основная идея, которую я хочу сделать, - обновить дату каждой команды, в которой играл игрок, при смене таблицы batterStat.Так, например (все статические переменные просто: новые значения из триггера на batterStat).

insert into onTeam(date, player, teamName) values ('newDate','Matt Holliday',(select teamName from onTeam where player = 'Matt Holliday'))

Так что все было бы хорошо, если бы Мэтт Холлидей не играл более чем за одну команду, поэтому есть ли способ сделать так, чтобы он вставлялся для каждого значения, возвращенного из этого вложенного выбора, вместе с двумя статическимипеременные?

Ответы [ 2 ]

3 голосов
/ 14 июля 2010

Попробуйте что-то вроде этого:

insert into onTeam(date, player, teamName) 
select 'newDate','Matt Holliday', teamName 
from onTeam where player = 'Matt Holliday'
0 голосов
/ 14 июля 2010

Это приведет к ошибке "триггерный триггер" (попытка DML для той же таблицы, в которой он определен) и не должен быть реализован как триггер.Он должен быть реализован как оператор SQL на уровне ваших предпочтений (пакет PL / SQL или код приложения).

Исходя из вашего описания логики, может потребоваться также редизайн таблицы onTeam.

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