php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 29-01-2009, 15:20
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard Indizes kopieren

Hallo,

ich arbeite an einem Projekt, bei dem ich, neben einer zentralen Datenbank, pro Kunden eine Datenbank erstelle.

Das Erstellen eines neuen Kunden ist ja nicht wirklich problematisch, schwieriger wird es, wenn ich die bestehenden Tabellen mit dem Prototypen der Kundendatenbank abgleichen will.

Ich bin derzeit so weit, das Tabellen, deren Eigenschaften, deren Spalten und deren Eigenschaften übertragen werden (neue Tabellen hinzugefügt, wenn ich eine Tabelle aus dem Prototypen lösche, löscht das PHPSkript auch die entsprechende Tabelle in den Slave-Systemen.


Meine Daten hole ich mir mit:

SHOW TABLE STATUS FROM master_db;

SHOW FULL FIELDS FROM master_db.table;

und halt


SHOW INDEX FROM master_db.table;


Und da ist dann auch mein Problem: habe ich einen Key, der über mehrere Spalten geht, müsste ich mein Skript umbauen.

Gibt es eine Möglichkeit (Abfrage) die mir so etwas wie :

Code:
Key          Field                  Indextype
-----------------------------------------
PRIMARY      tabelle_id             BTREE
text         feld_1(4), feld_2(5)   BTREE
zurückgibt?
Mit Zitat antworten
  #2 (permalink)  
Alt 29-01-2009, 15:24
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

http://dev.mysql.com/doc/refman/5.1/en/show.html

z.B. SHOW INDEX usw.
Mit Zitat antworten
  #3 (permalink)  
Alt 29-01-2009, 15:27
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Indizes kopieren

Zitat:
Original geschrieben von Lennynero
ich arbeite an einem Projekt, bei dem ich, neben einer zentralen Datenbank, pro Kunden eine Datenbank erstelle.
Gibt es eine verflixt gute Begruendung fuer ein solches Vorgehen?

Normalerweise gehoeren Daten gleicher Struktur auch in die gleiche Tabelle.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #4 (permalink)  
Alt 29-01-2009, 15:32
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi,

danke für die schnelle Antwort, aber SHOW INDEX FROM (bzw. die Aliase) hatte ich schon gefunden.

Ein Problem des Ergebnisses dort ist, das ein Index, der über mehrere Spalten geht über mehrere Zeilen verteilt ist:

Code:
Table	Non_unique	Key_name	        Seq_in_index	Column_name	Collation	Cardinality	Index_type
tbl_kategorie	0	PRIMARY	                1	        kategorie_id	A	        15		BTREE
tbl_kategorie	1	kategorie_SRLR	        1	        kategorie_rt_id	A	        5	        BTREE
tbl_kategorie	1	kategorie_SRLR	        2	        kategorie_lft	A	        15		BTREE
tbl_kategorie	1	kategorie_SRLR	        3	        kategorie_rgt	A	        15		BTREE

EDIT: den Rest vergessen


Code:
Table	Keyname	Columns
tbl_kategorie	PRIMARY	kategorie_id
tbl_kategorie	kategorie_SRLR	kategorie_root_id, kategorie_lft, kategorie_rgt
Wäre quasi optimal
Mit Zitat antworten
  #5 (permalink)  
Alt 29-01-2009, 15:35
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard Re: Re: Indizes kopieren

Zitat:
Original geschrieben von wahsaga
Gibt es eine verflixt gute Begruendung fuer ein solches Vorgehen?

Normalerweise gehoeren Daten gleicher Struktur auch in die gleiche Tabelle.
Performanceunterschied: alle Tabellen in einer DB oder verteilt auf mehrere DBs?
Mit Zitat antworten
  #6 (permalink)  
Alt 29-01-2009, 21:14
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mit dem Zugriff auf die Datenbank "information_schema" geht so einiges:

Code:
SELECT
INDEX_NAME,
(SELECT GROUP_CONCAT(IF(SUB_PART IS  NULL, COLUMN_NAME, CONCAT(COLUMN_NAME, '(', SUB_PART , ')')) SEPARATOR  ', ')
FROM information_schema.STATISTICS D
WHERE D.INDEX_NAME = S.INDEX_NAME AND
TABLE_SCHEMA = 'prototyp'
AND TABLE_NAME = 'tbl_kategorie' ORDER BY SEQ_IN_INDEX) AS Index_Columns
,INDEX_TYPE
FROM information_schema.STATISTICS S
WHERE TABLE_SCHEMA = 'prototyp'
AND TABLE_NAME = 'tbl_kategorie'

#ALTER TABLE table ADD INDEX [index]([column1],[column2])
Erbringt mir die Zeilen, die quasi genau die von mir benötigten Infos haben

Geändert von Lennynero (29-01-2009 um 21:39 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

EJS TreeGrid ansehen EJS TreeGrid

EJS TreeGrid is DHTML component written in pure JavaScript to display and edit data in table, grid, tree view or grid with tree on HTML page

09.04.2019 coqsoft@ | Kategorie: JAVASCRIPT/ Components
Suchmaschine redaktionell, Branchenportal zum Geld verdienen

Programmbeschreibung Die Bezahl-Suchmaschine ist in Perl und PHP programmiert (eigenes CGI-Verzeichnis notwendig), benötigt PHP aber keine MySQL-Datenbank. Webmaster haben mit dieser Suchmaschine neben der normalen kostenlosen Registrierung von Lin

06.04.2019 skripte@ | Kategorie: PHP/ Suchmaschinen
Oog Photo-Video-Gallery

Mit Oog Photo-Gallery können Sie einfach und stilvoll Bilder (auch Video & Audio) auf Ihrem PHP5-Webserver veröffentlichen und verwalten. Lizenz: GNU GPL v2

06.04.2019 trottbrand@ | Kategorie: PHP/ Bilder
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:50 Uhr.