PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mySQL-Neuling braucht etwas Hilfe



McFraggle
17.11.2005, 09:43
Hallo mySQL-Kenner, ich habe ein (wohl kleines) Problem beim Umgang mit der Datenbank. Ich möchte ein Zeiterfassungstool namens "OpenTimetool" bei mir einrichten, welches mit mySQL arbeitet.
In den Instalationsanweisungen steht:

- create DB openTimetool
Hab ich sogar hinbekommen! :)

- import the mysql.sql in the DB openTimetool that you have created in the step before
Und hier haben wir das Problem. Was wollen die mir damit sagen? Abgesehen davon, dass ich keine Ahnung habe, wie man Tabellen in eine DB importiert, sieht mir der Inhalt des Files nicht nach einer Tabelle, sondern nach einer Menge SQL-Anweisungen aus. 8o
Was tun??

Bin dankbar für jede Hilfe!

zyon
17.11.2005, 09:53
Hallo mySQL-Kenner, ich habe ein (wohl kleines) Problem beim Umgang mit der Datenbank. Ich möchte ein Zeiterfassungstool namens "OpenTimetool" bei mir einrichten, welches mit mySQL arbeitet.
In den Instalationsanweisungen steht:

- create DB openTimetool
Hab ich sogar hinbekommen! :)

- import the mysql.sql in the DB openTimetool that you have created in the step before
Und hier haben wir das Problem. Was wollen die mir damit sagen? Abgesehen davon, dass ich keine Ahnung habe, wie man Tabellen in eine DB importiert, sieht mir der Inhalt des Files nicht nach einer Tabelle, sondern nach einer Menge SQL-Anweisungen aus. 8o
Was tun??

Bin dankbar für jede Hilfe!

Poste mal die mysql.sql hier rein, wird aber wohl ganz einfach sein.

Öffne dein mysql-cleint.(einfahc in die Console „mysql“)tippen dann gibst du :

„use openTimetool“ und dann tippst du nach und nach deine mysql befehle die in der mysql.sql steh ein und lässt sie aus führen. Dann ist die Datenbank eingerichtet.

Gruß

Zy0n

Kuli
17.11.2005, 10:08
...und dann tippst du nach und nach deine mysql befehle die in der mysql.sql steh ein und lässt sie aus führen. Dann ist die Datenbank eingerichtet....

Ähh... das soll ein Witz sein, oder? :think: Wahlweise könnte er ja ein C64-Asembler-Listing von 1984 abtippen. Da gab's wenigstens eine Prüfsumme pro Zeile. :D

Nein, im ernst, so'n Quatsch machst Du natürlich nicht. Du gibst auf der Kommandozeile ein:

mysql -u dbuser --pass=dbpasswort openTimetool < mysql.sql

Oder Du fürst einfach obigen Befehl zum Starten des MySQL-Client ohne die Eingabeumleitung aus und gibst in der MySQL-Konsole ein:


source mysql.sql;

Das war's.

-Kuli

zyon
17.11.2005, 10:12
source mysql.sql;


gut, genau das wusste ich unter mysql nicht unter Oracle geht das einfahc mit nem @ ! auch wieder was gelernt. Aber die mysql.sql sollte er sich trotzdem anschauen. vielleicht lernt ja er jas was bei wer es eingebit und schuat was passiert !

Wolfgang
17.11.2005, 10:25
Hallo
Die Anweisung
mysql -u dbuser --pass=dbpasswort openTimetool < mysql.sql

hat auch weniger mit mysql als mit redirect unter der shell zu tun!
Mann könnte da z.B. statt den o.g. SQL-Statements - die wohl die Tabellen und Grundwerte erstellen - auch ein Abfrage-Statement so abschicken, und die Ausgabe gleich wieder in eine Datei oder Pipe umleiten.


mysql -u dbuser --pass=dbpasswort openTimetool < mysql_select_string_mit _return.sql >ergebnis

Gruß Wolfgang

McFraggle
17.11.2005, 11:03
Vielen Dank für die Antworten!
Ich glaube, es hat gefunzt. mysql gab mir jedenfalls viele "Query OK" aus.:))
"Importieren" und "Ausführen" sind aber schon ein wenig was anderes, meint ihr nicht? Da hätten sich die Jungs ruhig etwas anders ausdrücken können. Oder ich habe einfach noch zu wenig Verständnis für DB's.

Nun ja, noch mals Danke! Ich werde mich dann mal an dem Rest der openTimetool-Installation versuchen...

Kuli
17.11.2005, 11:19
Hallo
Die Anweisung
mysql -u dbuser --pass=dbpasswort openTimetool < mysql.sql

hat auch weniger mit mysql als mit redirect unter der shell zu tun!

Korrekt! Ändert aber natürlich nichts daran, daß es funktioniert. :))


Mann könnte da z.B. statt den o.g. SQL-Statements - die wohl die Tabellen und Grundwerte erstellen - auch ein Abfrage-Statement so abschicken, und die Ausgabe gleich wieder in eine Datei oder Pipe umleiten.

Oder dann gleich einzelne Statements als Batch-Datei (oder sogar als Alias) abschicken:

echo "update x set a:=1, b:=2; select count(*) from y;" | mysql -u sepp --pass=durian dbname

-Kuli