Avatar billede kama Nybegynder
21. januar 2001 - 18:50 Der er 2 kommentarer og
1 løsning

DELETE fra relaterede tabeller

Jeg har et problem med at få slettet en historie samt de tilhørende kommentarer.

Fra PHP gør jeg følgende:

mysql_query (\"DELETE FROM kommentar WHERE kommentarnr IN (SELECT kommentarnr FROM historiekommentar WHERE historienr=\'$historienr\')\");
mysql_query (\"DELETE FROM historiekommentar WHERE historienr=\'$historienr\'\");
mysql_query (\"DELETE FROM historie WHERE historienr=\'$historienr\'\");

Det er den første DELETE der ikke virker - har jeg drukket af natpotten eller hva\'?

Nedenfor ses mine tabeller:

CREATE TABLE historie (
  historienr int(11) DEFAULT \'0\' NOT NULL auto_increment,
  titel varchar(50),
  forfatter varchar(50),
  forfatteremail varchar(50),
  indhold longtext,
  dato varchar(10),
  kategorinr int(11),
  billede varchar(50),
  online char(3) DEFAULT \'nej\' NOT NULL,
  PRIMARY KEY (historienr)
);

CREATE TABLE kommentar (
  kommentarnr int(11) DEFAULT \'0\' NOT NULL auto_increment,
  indhold longtext,
  karakter int(11),
  hvem varchar(30) DEFAULT \'Anonym\',
  PRIMARY KEY (kommentarnr)
);

CREATE TABLE historiekommentar (
  historienr int(11) DEFAULT \'0\' NOT NULL,
  kommentarnr int(11) DEFAULT \'0\' NOT NULL,
  PRIMARY KEY (historienr, kommentarnr)
);

/kama
Avatar billede erikjacobsen Ekspert
21. januar 2001 - 19:35 #1
Hvad du har drukket af, skal jeg ikke kunne sige, men
MySql i din version understøtter ikke sub-selects. Jeg skal ikke
lige kunne sige om der er en nyere version der gør, men du skal
formentlig løse det ved først at lave en select, og for hver post i
den fyre en DELETE af. Ja, det er lidt dumt ... ;-)
Avatar billede kama Nybegynder
21. januar 2001 - 21:28 #2
Det var da bare pisse-irriterende!!!!
Tak for dit svar.
Avatar billede erikjacobsen Ekspert
21. januar 2001 - 22:50 #3
Så\'n er livet... MS-Sql er dyrt og kan det hele, Mysql er billigt/gratis
og kan det meste.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester