• 18.07.2025, 01:10
  • Register
  • Login
  • You are not logged in.

 

iNFiNiTE

God

python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 3:54pm

moin,

ich möchte zbsp jeden tag/monat einen bestimmten wert in eine sql tabelle schreiben, und das zbsp über jahre hinweg..
wie löse ich das am besten ?

mach ich direkt ne tabelle, die zbsp jeden tag/monat bis 2010 schon drin hat (was eine arbeit von hier bis hinten wäre), oder gibts da ne möglichkeit, jeden tag/monat an die tabelle eben noch ne spalte dranzuhängen, und dort den wert einzufüllen ?
oder gibts ne andere/bessere möglichkeit das aufzulösen ?

messi

biddschedabber

Senior Member

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 3:56pm

Wenn es ein Linux-Server ist:

Kleines Script schreiben, welches den tagesaktuellen Eintrag in die DB erledigt und das dann jeden Tag per crontab laufen lassen.

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 3:59pm

das ich das mit nem script machen muss ist mir klar.. der crontab is ne gute idee, wird denke ich auch so umgesetzt, anders wüsste ich ned wie das laufen sollte..

aber wie hänge ich an eine bestehende tabelle spalten dran ? muss man das mit nem create table statement machen ? hab da irgendwie keine zündende idee..

messi

biddschedabber

Senior Member

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:00pm

Was Du brauchst ist der "alter table"-Befehl. ;)

Und Du bist sicher, dass Du jeden Tag eine Spalte(!) an die Tabelle hängen willst?

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:05pm

ok, befrage mal google bzgl alter table..

bzgl der spalte.. ja ich denke schon..
sollte in etwa so aussehen:

name | 04-06 | 05-06 | 06-06 | ..... |
-------------------------------------------------
bla | 23,3 | 34,1 | 27,1 | ..... |

wenns ne bessere möglichkeit gibt, sag es mir ;)

edit: das wäre jetz die darstellung für monate..
wie soll man das denn sonst machen, wenn man sich zbsp ne statistik für das letzte ganze jahr in monaten/tagen anzeigen lassen will (zbsp in nem graphen) ?

messi

biddschedabber

Senior Member

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:26pm

Ich würd eine Tabelle "user" machen und eine Tabelle "statistik" (oder wie auch immer die heißen mag).

Der user in der user-Tabelle bekommt eine eindeutige user_id.

Source code

1
2
3
4
user_id  |  user_name |  blablabla....
--------------------------------------
  01      |  Peter Pan   |   .......
  02      |  Robin Hood  |   .......


Die statistik-Tabelle würd bei mir so aussehen:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
user_id|  datum           |
-------------------------
    01    |  01.01.2006   | 
    01    |  01.02.2006   | 
    01    |  01.03.2006   | 
    01    |  01.04.2006   | 
    01    |  01.05.2006   | 
    01    |  01.06.2006   | 
    01    |  01.07.2006   | 
    01    |  01.08.2006   | 
    01    |  01.09.2006   | 
    01    |  01.10.2006   | 
    01    |  01.11.2006   | 
    01    |  01.12.2006   | 
    02    |  01.01.2006   | 
    02    |  01.02.2006   | 
    02    |  01.03.2006   | 
    02    |  01.04.2006   | 
    02    |  01.05.2006   | 
    02    |  01.06.2006   | 
    02    |  01.07.2006   | 
    02    |  01.08.2006   | 
    02    |  01.09.2006   | 
    02    |  01.10.2006   | 
    02    |  01.11.2006   | 
    02    |  01.12.2006   |


Deine Idee mit der Spalte zum dranhängen ist zwar nicht ganz blöd, aber wenn Deine Tabelle irgendwann mal richtig viele Einträge haben sollte, dann dauert es ewigst eine Spalte anzuhängen... außerdem könntest Du auch Probleme mit Log-Segmenten (einfach ausgedrückt: Plattenplatz) der Datenbank bekommen, die laufen bei solchen Aktionen gerne mal voll.

Nur so aus Neugier... von welchem Datenbanksystem reden wir? MySQL, Oracle, Sybase, DB2 ?

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:31pm

ja ne, das trifft aber ned ganz was ich will..

ich will ja ned, dass der user in relation zu nem datum steht..
bei mir gehts eher um folgendes:

sagen wir es handelt sich um "reis",dann will ich pro tag den wert von "reis" speichern, sodass man sich nachher ne kurve anzeigen lassen bzw die werte in ner (html) tabelle auslesen kann mit dem wert von "reis".

biddschedabber

Senior Member

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:34pm

Dann tausche halt meine "user"-Tabelle gegen eine Tabelle "produkt" und die "user_id" gegen "produkt_id" sowie "user" gegen "produkt" und hänge an meine "statistik"-Tabelle von mir aus noch ein Feld "menge" an.

Wo ist das Problem ???

Produkt:

Source code

1
2
3
4
produkt_id  |  produkt      |  blablabla....
--------------------------------------
  01           |  Reis          |   .......
  02           |  Nudeln       |   .......


Statistik:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
produkt_id|  datum      |  menge| 
---------------------------------
    01    |  01.01.2006   |  1000  |
    01    |  01.02.2006   |   500   |
    01    |  01.03.2006   |   500   |
    01    |  01.04.2006   |   800   | 
    01    |  01.05.2006   |   500   | 
    01    |  01.06.2006   |   500   | 
    01    |  01.07.2006   |   700   | 
    01    |  01.08.2006   |   500   | 
    01    |  01.09.2006   |   500   | 
    01    |  01.10.2006   |  1500  | 
    01    |  01.11.2006   |   100   | 
    01    |  01.12.2006   |   500   | 
    02    |  01.01.2006   |   300   | 
    02    |  01.02.2006   |   500   | 
    02    |  01.03.2006   |   400   | 
    02    |  01.04.2006   |   500   | 
    02    |  01.05.2006   |   600   | 
    02    |  01.06.2006   |   700   | 
    02    |  01.07.2006   |   800   | 
    02    |  01.08.2006   |   900   | 
    02    |  01.09.2006   |  1200  | 
    02    |  01.10.2006   |   550   | 
    02    |  01.11.2006   |   100   | 
    02    |  01.12.2006   |   500   |

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:38pm

ah jetz seh ichs..

ja das is natürlich die beste lösung, weil ne reihe reinsetzen ja sehr easy wäre :) ok danke, ich werd mal an meiner db weiterschrauben..

messi

biddschedabber

Senior Member

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 4:55pm

Kein Problem. :)

Du bist mir noch die Antwort auf die Frage nach der verwendeten Datenbank schuldig. ;D

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 5:31pm

ich dachte eigtl an mysql.. hab bis jetz nur erfahrungen gemacht mit borland interbase, aber ich denke für meine zwecke reicht mysql mehr als aus.

messi

Max_Payne

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 7:51pm

Wie bereits gesagt wurde kannst du solche Aufgaben per Crontab machen. Bei mir macht z.B. ein Perl-Script immer automatisch ein Datenbank-Backup...

Sollte aber mit so ziemlich jeder Programmiersprache gehen, im Prinzip reicht eine PHP-Datei, die du per Cron-Tab einfach öffnest / ausführst...



Gruß Max Payne

Y0Gi

God

Re: python/sql: datenbank dynamisch erweitern ?

Wednesday, March 15th 2006, 8:05pm

Messi: Ein Datenbank-Schema solltest du nach Möglichkeit nur einmal erstellen und nie ändern (in der Praxis werden natürlich - hin und wieder - an die aktuelle Situation anpassende Änderungen erforderlich). Um regelmäßig ergänzt/geändert zu werden, sind die Datensätze da.

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Thursday, March 16th 2006, 8:57am

Quoted from "Y0Gi"

Messi: Ein Datenbank-Schema solltest du nach Möglichkeit nur einmal erstellen und nie ändern (in der Praxis werden natürlich - hin und wieder - an die aktuelle Situation anpassende Änderungen erforderlich). Um regelmäßig ergänzt/geändert zu werden, sind die Datensätze da.



das is mir schon bewusst, ich bastel ned ohne grund schon seit ner woche an meinem schema.. nur wusste ich eben ned, wie ich das mit der statistik da unterbringen kann..

aber ich denke, dass ich per crontab einfach n python script ausführen lasse, der die betreffenden teile in die db schreibt.

vorallem muss man bei bidschedabbers methode die db ja nicht ständig erweitern, sie bekommt eben nur mehr inhalt ;D

messi

Y0Gi

God

Re: python/sql: datenbank dynamisch erweitern ?

Thursday, March 16th 2006, 3:35pm

Quoted from "messi@planung"

vorallem muss man bei bidschedabbers methode die db ja nicht ständig erweitern, sie bekommt eben nur mehr inhalt ;D

Das ist ja auch der Sinn bei der Arbeit mit Datenbanken ;)

iNFiNiTE

God

Re: python/sql: datenbank dynamisch erweitern ?

Friday, March 17th 2006, 12:23am

Quoted from "Y0Gi"


Das ist ja auch der Sinn bei der Arbeit mit Datenbanken ;)


ja ich weiß.. steinigt mich ;D

/me überreicht sich selbst feierlich den goldenen döner für extreme blindheit