Re: Umstellung von MySQL auf PostgreSQL

From: Andreas Kretschmer <akretschmer(at)spamfence(dot)net>
To: pgsql-de-allgemein(at)postgresql(dot)org
Subject: Re: Umstellung von MySQL auf PostgreSQL
Date: 2012-07-15 13:24:15
Message-ID: 20120715132415.GA31719@tux
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Guenther Boelter <gboelter(at)gmail(dot)com> wrote:

> Moin,
>
> ich habe heute mit der Umstellung einer von mir geschriebenen Anwendung von
> MySQL auf PostgreSQL begonnen. Vor hatte ich's schon lange, aber ihr wisst ja
> vermutlich selbst, wie das immer so ist mit der Zeit, insbesondere wenn man(n)
> aelter wird! Aber egal, da muss ich jetzt durch ...

Zuerst einmal: Viel Erfolg!

>
> Und leider stellen sich da auch gleich ein paar Fragen, die mir hoffentlich
> hier - trotz Urlaubszeit - jemand beantworten kann und mag:
>
>
> 1. Unter MySQL habe ich fuer meine Anwendung eine Datenbank namens 'erpel'
> 'sozusagen' fuer die Verwaltung und dann je eine Datenbank pro Mandant.
> Dieses Konzept will ich dem Grunde nach auch beigehalten, daher hierzu
> folgende Frage:
>
> Wenn ich eine database mit Namen 'davaosoft' anlege und darunter dann
> jeweils ein schema pro Mandant, also Mandant01, Mandant02 etc. Sollte ich
> dann auch ein eigenes Schema fuer 'erpel' anlegen, oder kann ich fuer diese
> Daten auch das Schema 'public' benutzen? Es geht bei 'erpel' letztlich nur
> um 2 tables mit zusammen ca. 12 Spalten.

Geschmackssache, Dir überlassen.

>
> 2. Nach einigen kleineren Korrekturen in meiner MySQL-Database kann ich diese
> nun mit mysql2psql problemlos nach PostgreSQL exportieren. Nicht so schoen
> ist allerdings, dass ich bei meinen Feldnamen bisher Gross-/Kleinschreibung
> verwendet habe, also in der Art von 'dbName, dbMandant' etc.. Wenn ich es
> richtig sehe, dann habe ich hier zwei Moeglichkeiten. Entweder ich setze
> alle Feldnamen in meinen Abfragen in Anfuehrungszeichen oder aber ich
> aendere alle Feldnamen konsequent auf Kleinschreibung um. Gibt's da noch
> eine bessere Moeglichkeit oder wie wuerdet ihr verfahren?

Die Groß-Kleinschreibung ist IMHO eher nur kosmetisch, oder? Bleib
einfach bei Klein, und gut ist.

>
> 3. Und die - zumindest vorlaeufig - letzte Frage: Ein 'USE DATABASE irgenwas'
> gibt es ja unter PostgreSQL nicht. Wie kann ich dennoch ein Feld in einer
> Abfrage ansprechen, ohne jeweils den Namen des Schemas voranzustellen. Also
> 'SELECT name ....' statt 'SELECT mandant.name ...'?

Du kannst den search_path passend setzen, also das entsprechende Schema
in den search_path. Das geht per User zu setzten, z.B., könntest das
also je Mandant passend setzen.

>
>
> Schon mal vielen Dank im voraus.
>
> Guenther
> Davao City, Philippines, Planet Earth, 29.0 °C
>
>
> --
> DavaoSOFT, the home of ERPel
> ERPel, das deutsche Warenwirtschaftssystem fuer LINUX
> http://www.davaosoft.com
>

Andreas
--
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect. (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly." (unknown)
Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889°

In response to

Responses

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Andreas Kretschmer 2012-07-15 15:02:40 Re: Umstellung von MySQL auf PostgreSQL
Previous Message Guenther Boelter 2012-07-15 12:55:19 Umstellung von MySQL auf PostgreSQL