Auswahl Aktion im Forum Suche Kontakt Für Mitglieder Mathematisch für Anfänger Wer ist Online | |
| Autor |
SQL - SELECT geht, VIEW nicht |
|
HotBlackDesiato
Aktiv  Dabei seit: 22.12.2008 Mitteilungen: 101
Aus: Wien, Österreich
 |     Themenstart: 2012-07-16 17:18
|
Hallo liebe Planetarier!
Ich bin ratlos bei diesem Problem:
Diese Selectabfrage liefert ein korrektes Ergebnis:
SELECT
a,
(CASE
WHEN EXISTS
(SELECT * FROM `table2` WHERE `table2`.`a` = `table1`.`a`) THEN 'in table2'
WHEN EXISTS
(SELECT * FROM `table3` WHERE `table3`.`a` = `table1`.`a`) THEN 'in table3'
ELSE 'weder noch' END) `b`
FROM `table1`;
Wenn ich die Selectabfrage in einen View packe...
CREATE VIEW `view` AS (
SELECT
a,
(CASE
WHEN EXISTS
(SELECT * FROM `table2` WHERE `table2`.`a` = `table1`.`a`) THEN 'in table2'
WHEN EXISTS
(SELECT * FROM `table3` WHERE `table3`.`a` = `table1`.`a`) THEN 'in table3'
ELSE 'weder noch' END) `b`
FROM `table1`);
...und dann...
SELECT * FROM `view`;
...eingebe, kommt folgende Fehlermeldung:
SQL Error (6): Error on delete of 'C:\xampp\tmp\#sql134c_5_47.MYD' (Errcode: 13)
Wie kann das sein, dass die Selectabfrage funktionniert, aber der View nicht?
mfg Kr!i
----------------- Wir haben diese Welt von unseren Banken nur geliehen.
|
Profil
Quote
Link |
Otis
Senior  Dabei seit: 06.10.2007 Mitteilungen: 907
Aus: München
 |     Beitrag No.1, eingetragen 2012-07-16 17:29
|
Hi,
also das sieht nach fehlenden Rechten im Temp-Dir aus. Darf MYSQL dort löschen?
mfg Otis
----------------- A bus station is where busses stop.
A train station is where trains stop.
On my desk there is a workstation...
Never argue with an idiot. They bring you down to their level and beat you with experience.
[ Nachricht wurde editiert von Otis am 16.07.2012 17:31:46 ]
|
Profil
Quote
Link |
HotBlackDesiato
Aktiv  Dabei seit: 22.12.2008 Mitteilungen: 101
Aus: Wien, Österreich
 |     Beitrag No.2, vom Themenstarter, eingetragen 2012-07-16 18:15
|
Hmm...
Kann schon sein. Wie finde ich das raus? (Benutze Windows 7)
|
Profil
Quote
Link |
Otis
Senior  Dabei seit: 06.10.2007 Mitteilungen: 907
Aus: München
 |     Beitrag No.3, eingetragen 2012-07-16 20:46
|
Hi,
im explorer mal Rechtsklick auf C:\xampp\tmp und da im Tab Sicherheit nachschauen und ggf. etwas ändern. Oder einfach mal mysql oder xampp als Administrator starten.
Oder du änderst in der \mysql\bin\my.ini den Eintrag tmpdir unter [mysqld] so ab, dass er auf ein Verzeichnis zeigt, in dem der ausführende Nutzer auch löschen darf.
mfg Otis
----------------- A bus station is where busses stop.
A train station is where trains stop.
On my desk there is a workstation...
Never argue with an idiot. They bring you down to their level and beat you with experience.
[ Nachricht wurde editiert von Otis am 16.07.2012 20:48:44 ]
|
Profil
Quote
Link |
HotBlackDesiato hat die Antworten auf ihre/seine Frage gesehen. HotBlackDesiato hat selbst das Ok-Häkchen gesetzt. | |
| [Neues Thema] [Druckversion] |
|