Update daten in Datenbank

Django, Flask, Bottle, WSGI, CGI…
Antworten
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

Hallo zusammen,

in meiner Datenbank gibt es eine spalte mit folgenden Werten:
"200E1";"Lampe";"100";"100";"";"";"0"

Nun will ich Lampe auf Kronleuchter updaten

kann mir jemand sagen wie man sowas macht?
ich kann doch nicht immer die ganze spalte updaten oder?

Code: Alles auswählen

test=Database(control_cabinet = "200E1",typ = 'Lampe',Xcoordinate = '100', Ycoordinate ='100', starttime=None, endtime=None, state = "1")
        test.save()
mein Model sieht wie folgt aus:

Code: Alles auswählen

class Database(models.Model):
    control_cabinet = models.CharField(primary_key=True, max_length=30)
    typ = models.CharField(max_length=30)
    Xcoordinate = models.CharField(max_length=30)
    Ycoordinate = models.CharField(max_length=30)
    starttime = models.DateTimeField(null=True)
    endtime = models.DateTimeField(null=True)
    state = models.CharField(max_length=30, null=True)
vielen Dank im voraus
BlackJack

@erdmulch: Das ist keine Spalte sondern eine Zeile/ein Datensatz. Und wie man einzelne Werte in einem Datensatz ändert solltest Du eigentlich wissen. Du hast ja schon Code gezeigt der genau so etwas tut. Also wo genau liegt hier das konkrete Problem?

Warum sind die Koordinaten Zeichenketten?
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

@erdmulch: neben dem was BlackJack sagt ist Database auch ein seltsamer Name für ein Model das Geräte und Zeiten enthält. Warum ist state eine Zeichenkette?
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

Das Problem ist, dass ich immer alle Daten updaten muss.
Ich will aber nur den "typ" updaten und alle anderen Daten so lassen wie sie sind.

Wenn ich nur typ abändere, dann wird ein neuer Datensatz angelegt. Es wird zwar der typ upgedatet aber die anderen daten enthalten lauter "". Hat dies was mit dem primäry key zu tun?

Code: Alles auswählen

test=Database(control_cabinet = "200E1",typ = 'Lampe',Xcoordinate = '100', Ycoordinate ='100', starttime=None, endtime=None, state = "1")
        test.save()
Ich will aber nur einen Datensatz updaten.
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

@erdmulch: Dann zeig doch mal den Code, der den Datensatz updatet und nicht den, der ihn erzeugt.
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

Das ist ja das Problem. Ich leg den Datensatz an. aber ich will ihn updaten und weiß nicht wie das geht...
BlackJack

@erdmulch: Du hast hier bei einem anderen Thema schon Quelltext gezeigt bei dem Du Datensätze aktualisierst. Wieso kannst Du das dort, hier aber plötzlich nicht mehr? Ich habe langsam den Verdacht das Du gar nicht weisst was Du da tust und uns hier stückchenweise Dein Programm für Dich schreiben lässt in dem Du uns Codeschnippsel aus der Nase ziehst und ”blind” Beispiele die Du nicht verstehst zusammenbastelst bis ungefähr das heraus kommt was Du brauchst. So funktioniert programmieren nicht.
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

Nein, ich werfe euch nicht schnippsel hin um so zu meinem fertigen programm zu kommen.
Um eine programmiersprache erlenen zu können bedarf es eben sehr viel praxis und da gehört eben auch ausprobieren sowie das suchen von geeigneten "programm Schnippsel" im Internet dazu.
In der Vergangenheit, habe ich viel aus Büchern gemacht und diese dann angepasst. Bei Problemen habe ich mich dann hier ans forum gewendet.
Im mom arbeite ich selbst an einem kleineren Projekt um das gelernte aus Büchern, Internet und auch von diesem Forum praktisch mit einzubringen.
Dazu kommt, dass ich leider keine Erfahrung in der Webintwicklung habe, diese aber hier erlernen möchte.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

erdmulch hat geschrieben:Um eine programmiersprache erlenen zu können bedarf es eben sehr viel praxis und da gehört eben auch ausprobieren sowie das suchen von geeigneten "programm Schnippsel" im Internet dazu.
Das suchen von geeigneten Schnipseln gehört eigentlich nicht zum Lernen dazu, schon gar nicht sich daraus Lösungen zu basteln. Beispiele suchen ist ja in Ordnung, dann musst du diese aber auch verstehen und, besonders wichtig, die Dinge in der Dokumentation im Detail nachlesen und einordnen. Das scheint bei dir noch ein wenig zu fehlen.
Das Leben ist wie ein Tennisball.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

...zumal CRUD-Operation in jeder Datenbank Doku garantiert drin stehen - das sind ja die Basics :-) Und in der Django-Doku steht es naütrlich auch drin: https://docs.djangoproject.com/en/1.7/t ... b/queries/.

Gruß, noisefloor
Antworten