[ cesare @ 05.05.2014. 12:59 ] @
Pozdrav svima !!!

U bazi postoje tri tabele "tblkorisnik", "tblopcije" i "tblstanjeopcija". Prva sadrži spisak korisnika aplikacije sa njihovim Id oznakama i nazivima. Druga sadrži spisak opcija aplikacije sa njihovim Id oznakama i nazivima. U trećoj tabeli su povezani korsnici i opcije preko svojih Id oznaka, a njeno polje "StanjeOpcije" je vrednosti "N" i "D" u zavisnosti da li određeni korisnik nema ili ima pristup određenoj opciji. Pitanje je da li je moguće jednim, upitom kada se unese nova opcija, uneti u tabelu "tblstanjeopcija" više redova, tako da za sve korisnike iz tabele "tblkorisnik" za tu novu opciju dodeli svima vrednost "N" kao "StanjeOpcije". Tj. da prilikom unosa novog korisnika, jednim upitom doda u tabelu "tblstanjeopcija" sve opcije tom korisniku sa stanjem "N".

Code:


SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `tblkorisnik`
-- ----------------------------
DROP TABLE IF EXISTS `tblkorisnik`;
CREATE TABLE `tblkorisnik` (
  `Id` char(3) COLLATE utf8_slovenian_ci NOT NULL,
  `Naziv` char(10) COLLATE utf8_slovenian_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci;

-- ----------------------------
-- Records of tblkorisnik
-- ----------------------------

-- ----------------------------
-- Table structure for `tblopcije`
-- ----------------------------
DROP TABLE IF EXISTS `tblopcije`;
CREATE TABLE `tblopcije` (
  `Id` char(3) COLLATE utf8_slovenian_ci NOT NULL,
  `Oznaka` char(10) COLLATE utf8_slovenian_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci;

-- ----------------------------
-- Records of tblopcije
-- ----------------------------

-- ----------------------------
-- Table structure for `tblstanjeopcija`
-- ----------------------------
DROP TABLE IF EXISTS `tblstanjeopcija`;
CREATE TABLE `tblstanjeopcija` (
  `IdOpcije` char(3) COLLATE utf8_slovenian_ci NOT NULL,
  `IdKorisnika` char(3) COLLATE utf8_slovenian_ci NOT NULL,
  `StanjeOpcije` char(1) COLLATE utf8_slovenian_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci;

-- ----------------------------
-- Records of tblstanjeopcija
-- ----------------------------





Unapred hvala...
[ Dexxxl @ 07.05.2014. 17:34 ] @
u tabeli KorisnikOpcije za stanje opcije postavi default='N'

u tabeli tblKorisnik postavi triger na after insert
Code:

Insert into KorisnikOpcije (IdKorisnik, idOpcije) (select new.IdKorisnik, idopcije from tblOpcije);


u tabeli tblOpcije postavi triger na after insert
Code:

Insert into KorisnikOpcije (IdKorisnik, idOpcije) (select IdKorisnik, new.idopcije from tblKorisnik)