Re: mysqldump und VIEW
- From: Axel Schwenke <axel.schwenke@xxxxxx>
- Date: Mon, 11 Feb 2008 12:13:21 +0100
Stefan+Usenet@xxxxxxxxxxxxxxxxx (Stefan Froehlich) wrote:
ich habe (mehrere) Datenbanken, denen der gleiche Aufbau zugrunde
liegt. Gelegentlich (z.B. fuer debugging) kopiere ich auch gerne
komplette Datenbestaende von einem Rechner auf einen anderen -
mysqldump tut da gute Dienste.
Nun habe ich im Lauf einer Systemerweiterung VIEWs eingefuehrt, die
es mir erlauben, kleine, gemeinsam genutzte Tabellen um spezifische
Eintraege zu erweitern:
| CREATE OR REPLACE VIEW aTable AS
| (SELECT * FROM common.aTable)
| UNION
| (SELECT * FROM aTable)
| ;
ERROR 1347 (HY000): 'aTable' is not VIEW
Du kannst einen View nicht so nennen, wie eine bereits
existierende Tabelle.
Auch das tut soweit gute Dienste. Allerdings versagt nun mysqldump,
was den oben angesprochenen Einsatzzweck betrifft, denn:
| /*!50001 VIEW `aDatabase`.`aTable` AS (select
| `common`.`aTable`.`aField` AS `aField`,
| `common`.`aTable`.`a2ndField` AS `a2ndField`, [...]
| ) union (select
| `aDatabase`.`aTable`.`aField` AS `aField`,
| `aDatabase`.`aTable`.`a2ndField` AS `a2ndField`, [...]
| ) */;
Dummerweise wird hier auch fuer die "lokale" Datenbank jeweils der
volle Name eingetragen. Damit kann ich den Dump nur noch unter dem
originalen Namen einspielen (oder mit sed nachbearbeiten, was aber
bei gaengigen Bezeichnern nicht ganz unriskant ist).
Wenn du in CREATE VIEW einen unqualifizierten Tabellennamen
benutzt, wird er sofort aufgelöst und in der Definition des
VIEW als qualifizierter Name abgelegt. Die Daten stehen also
bereits so in der Datenbank. mysqldump hat damit nichts zu tun.
Kann man dieses Verhalten denn nicht irgendwo abschalten?
Nein. Wäre IMHO auch nicht sinnvoll, wenn Objektreferenzen
erst zur Laufzeit aufgelöst werden würden.
XL
.
- Follow-Ups:
- Re: mysqldump und VIEW
- From: Stefan Froehlich
- Re: mysqldump und VIEW
- References:
- mysqldump und VIEW
- From: Stefan Froehlich
- mysqldump und VIEW
- Prev by Date: Re: Daten werden nicht auf Platte geschieben
- Next by Date: Re: mysqldump und VIEW
- Previous by thread: mysqldump und VIEW
- Next by thread: Re: mysqldump und VIEW
- Index(es):
Relevant Pages
|