Lokale Datenbank Updaten Lokale Datenbank Updaten
Danke Danke:  0
Ergebnis 1 bis 11 von 11
  1. Hallo Zusammen
    Wenn ich eine Lokale Datenbank für eine künftige Version ändere, muss ich ja beim Start des Programmes die bestehende Datenbank updaten (Tabellen oder FK hinzufügen z.B.). Gibt es eine andere Variante dies zu bewerkstelligen als die komplette Datenbank neu zu erstellen und alle so in die neue Datenbank zu übernehmen?

    Oder wie geht ihr da vor?

    Gruss
    Nemoc
    0
     

  2. Diese Frage hab ich mir so ähnlich auch schonma gestellt, da ich geplant hatte, meine Apps mit ner SQLite DB auszustatten.
    Ich wäre allerdings auch nicht wirklich anders vorgegangen als die DB neu zu erstellen oder so.
    Alternativ wäre ja möglich, ne Version in der DB zu hinterlegen und dann abzufragen und sollte sie niedriger sein als die aktuelle, einfach ne .sql auszuführen oder so, die dann alles updated.

    Andere Möglichkeit wäre halt einfach das Profil bzw die DB zu laden, die neuen Dinge mit Standardwerten zu versehen und beim speichern dann ins neue Format zu überführen.

    Aber das sind alles Dinge, die aus selbe hinauslaufen, daher schließe ich mich mal an, denn ich würde vll auch gerne ma wissen, wie man das am besten machen sollte/könnte
    0
     

  3. 10.10.2011, 14:23
    #3
    Am Desktop habt ihr bei Datenbanken auch nichtwirklich eine andere Möglichkeit als die Datenbankversion zu erkennen und dann mit Change/Create Table die DB zu verändern. Ist so sicher gescheiter als ne neue anzulegen und die Daten rüberzuschaufeln.
    Mit der kostenlosen PocketPC.ch App von meinem OMNIA7 aus geschrieben.
    0
     

  4. Also wäre die Frage ob es diese Möglichkeit auf der Lokalen Datenbank gibt. Oder besser gesagt wie man diese Möglichkeit genau nutz.
    Werde heute Abend mal schauen ob ich etwas dazu finde, wenn mir niemand zuvor kommt.
    0
     

  5. Also ich würde dann ganz einfach hingehen und mir ne Art Version in der DB speichern und diese auslesen und vergleichen.
    Wenn die DB dann älter ist, als die App erwartet, würde ich die DB dann updaten (kann man ja zB im Ladescreen direkt nach start der App machen) oder einfach halt mit der alten Version weiterarbeiten und dann beim Save ins neue Format überführen.
    0
     

  6. Also einfach damit weiterarbeiten wird wohl nicht möglich sein. Oder zumindest in meinem Falle. Ich lese die Daten in Observable Collections aus und arbeite mit diesen. Und wenn die Tabelle nicht mit dem Schema übereinstimmt dann stürzt das Programm ab wenn es die Daten in die Collection laden will. Vermutlich weil die beiden Schemas nicht übereinstimmen.

    Anhand einer Versionsnummer validieren ob die entsprechenden Tabellen auf dem aktuellsten Stand sind, bietet sich insofern sehr an. Die Frage ist jetzt nur wie man eine entsprechende Tabelle aktualisieren kann. Dafür habe ich bisher noch keine Möglichkeit gefunden, abgesehen von die Tabelle neu erstellen ( was wir ja schon weiter oben mehr oderweniger abhacken wollten ).
    0
     

  7. ZUm Daten auslesen sagte ich ja, dass man da das neue halt erstma mit Standardwerten füllen müsste und dann beim Speichern eben ins neue Format überführen.
    Auf jeden Fall aber würde ich hingehen und evtl dem Benutzer mitteilen, dass das Ding konvertiert bzw upgraded werden muss, so dass es eben nich zu Überraschungen kommt.
    Irgendwie wirds ja immerhin gehen^^
    Ansonsten, nutz doch SQLite, da haste auf jeden Fall Möglichkeiten, Tabellen zu upgraden soweit ich informiert bin.

    Notfalls lieferste (falls möglich) mit der App quasi ne Standard-DB mit (die neuste) und validierst die vorhandene DB.
    Sollte die vorhandene DB älter sein, so lieste die Daten aus, löscht die alte DB (bzw kopierst die als Backup iwo hin, sicher is sicher) und fügst an den Platz deine neue DB ein, danach setzte die Daten wieder in die DB ein und fährst danach mit dem normalen Programmablauf fort (somit ist das ne Variante, die zum Appstart geschehen muss, da aber am besten den Benutzer benachrichtigen und auch ne Möglichkeit evtl anbieten, das Backup wiederherzustellen, falls mal was schiefging)

    Andernfalls, falls möglich, einfach benachrichtigen, dass ein Update der DB anstehen würde und dem Benutzer die Entscheidung zu lassen, wann er upgraded (er kann halt nicht alles neue nutzen, aber diese version wäre auch Benutzerfreundlicher, da nicht immer jeder gleich updaten will)
    0
     

  8. Das Problem sind nicht leere Werte, sondern wenn andere (zum Beispiel weniger) Werte kommen. Ausser man man macht verschiedene Observable Collections, was ich etwas umständliche fände.
    SQLite kann man soweit ich weiss nicht nutzen. Nur schonmal weil diese kein Linq to SQL unterstützen.
    Das Ausliefern einer Standartdatenbank wäre wohl nur per Download möglich. Sprich wenn man die von einem Server herunterlädt, was aber eher ungünstig ist für ein Offline Programm.

    Habe bisher leider noch nichts entdeckt wie ich das mit C# respektive Silverlight oder Linq to SQL lösen kann.
    0
     

  9. Also für SQLite gibt es afaik auch ne LINQ Unterstützung, bin mir aber nich sicher.
    Ansonsten gibts für SQLite auch komfortable Möglichkeiten, musst halt dann normales SQL benutzen, was aber auch nicht schlimm wäre.
    Jedenfalls, ausliefern einer StandardDB wäre möglich, indem du die DB einfach schon gleich ins .xap einbaust, zB in ner .resx
    Aber das ist Sache, die im Auge des Betrachters liegt.

    Jedenfalls wären die Schritte zum Updaten in etwa so:

    1. DB-Version prüfen
    2. Wenn Update nötig, dann:
    2.1 Entweder auslesen und weiterarbeiten (fehlende bzw ungültige Werte durch den Standard ersetzen, der gebraucht wird)
    2.2 Direkt updaten (da muss auch halt eben auf fehlende Werte geprüft werden)
    2.3 DB austauschen (mit Backup) und die vorhandenen Daten dann einspielen (auch wieder fehlende Werte durch Standard ersetzen oder so)
    3. DB sollte hier dann fertig sein

    Alternativ müssteste auf XML-Dateien ausweichen, die lassen sich glaube ich leichter updaten, sind aber auch bissl unflexibel (Pro Datensatz zB eine Datei oder so wäre irgendwann zu viel)
    0
     

  10. Datasets werden von WP7 nicht unterstützt. Insofern dürfte auch die Unterstützung von anderen Datenbanken ins Wasser fallen.

    Über die Schritte sind wir uns einig. Das eigentliche Problem ist jetzt ob man konkret ob man eine Tabelle über den C# Code update kann (was eigentlich die schöne Variante wäre IMHO) oder ob man das mit total austausch machen muss.

    Die IsolatedStorageSettings wären noch eine einfach updatebare Variante, jedoch bin ich erst gerade von diesen auf die Datenbank umgestiegen, insofern möchte ich nicht unbedingt gleich wieder zurück wenn es sich vermeiden lässt ^^
    0
     

  11. Also für SQLite gibts keine offizielle Lösung aber Lösungen von anderen Entwicklern, die das halt eben machen.
    Offiziell unterstützt WP7 ja nur eine MS SQL DB
    Wenn du SQLite über eine der angebotenen Lösungen nutzen würdest, könntest du afaik auf jeden Fall im Code dein Zeug updaten, da SQL ja auch Update Anweisungen beinhaltet (bin nich genau sicher, ob UPDATE auch in SQLite so implementiert is, wie zB bei MySQL)
    Ein Totalaustausch wäre aber effektiv evtl auch ne Möglichkeit.

    Es bleiben dir ja immernoch XML Dateien und so, die kann man ja gut austauschen, aber da wirds mitunter wohl später zu umständlich und so
    0
     

Ähnliche Themen

  1. Google Maps lokale Suche?
    Von pocketpcnutzer im Forum Windows Phone 7 Allgemein
    Antworten: 2
    Letzter Beitrag: 15.06.2011, 17:13
  2. Lokale Suchergebnisse in Bing Maps
    Von apachelance im Forum Windows Phone 7 Allgemein
    Antworten: 7
    Letzter Beitrag: 12.02.2011, 12:12
  3. wie lokale HTML-Dateien mit Browser aufrufen?
    Von Bertram im Forum HTC Desire Sonstiges
    Antworten: 1
    Letzter Beitrag: 19.09.2010, 13:14
  4. Lokale Suche
    Von Unregistriert im Forum HTC Touch Diamond 2
    Antworten: 1
    Letzter Beitrag: 16.01.2010, 07:13
  5. Widcomm Bluetooth keine lokale Dienste
    Von gondwana im Forum Plauderecke
    Antworten: 7
    Letzter Beitrag: 22.11.2003, 17:09

Besucher haben diese Seite mit folgenden Suchbegriffen gefunden:

windows phone 7 datenbank

wp7 database update

windows phone datenbank

winphone datenbank datensatz updaten

mysql datenbank

windows phone 7 keine lokale datenbank

windows phone lokale db

windows phone 7 lokale datenbank

lokale datenbank windows phone 7

.xap ausliefern

silverlight phone linq update datensatz

datenbank für windows phone 7

wp7 datenbank tabelle auslesen

wp7 schema update

sqlite mit standartwerten füllen

datenbank windows phone laden start

windows phone datenbanktabelle

wp7 lokale datenbanken

wp7 db update

wp7 Datenbank

windows phone silverlight ein Datensatz pro seite

datenbanken updaten

datenbanken windows phone

1and1 database wp7 sqlite

wp7 datnbank anlegen

Stichworte