Announcement

Collapse
No announcement yet.

Zwei Fragen zu ALTER XXX

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zwei Fragen zu ALTER XXX

    Hallo NG

    Ich kommte einfach nicht wirklich weiter.

    1.
    Ich sollte anhand einer Template MDB Tabellen in einer anderen Access DB erstellen.
    Dazu lese ich die Schemainformationen des OleDb Provider's aus.
    [...]
    DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new Object[]{null, null, tablename});
    [...]
    Damit wird ein CREATE TABLE erstellt und ausgeführt. Funktioniert wunderbar.
    Jetzt musste ich aber feststellen, dass das Schema keine Infos über den Primärschlüssel enthält. Blöd.
    Wie soll ich ein Schema synchronisieren wenn ich den Primärschlüssel auch brauche?

    2.
    Problem 1 würde sich erledigen wenn ich den Feldtyp in einer Tabelle ändern könnte. Mit ALTER TABLE XXX ALTER COLUMN und dann die neuen Angaben klappt es nicht. Feldlänge ist kein Problem. Feldtyp schmeisst einen Fehler.
    Zudem bekomme ich es auch nicht hin [NOT NULL] zu setzen b.z.w. zu ändern.

    Hat jemand eine Idee?

    Ich kann eigentlich schon fast alles machen bis auf den Feldtyp ändern und das [NOT NULL] ändern.
    MfG
    Roland Schumacher
    http://blog.geniali.ch/

  • #2
    Also ich würde ja erst "ADD COLUMN neu_spalte" machen, dann die Daten übernehmen, dann "DROP COLUMN alt_Spalte". Anschließend kannst du die Neu_Spalte ja noch umbenennen..

    Gruß,

    Thomas

    Comment


    • #3
      Originally posted by tede1408 View Post
      Also ich würde ja erst "ADD COLUMN neu_spalte" machen, dann die Daten übernehmen, dann "DROP COLUMN alt_Spalte". Anschließend kannst du die Neu_Spalte ja noch umbenennen..
      Hi Thomas

      Genau auf das läuft es in zwischen aus. Der SQL Server erstellt sogar zuerst eine neue DB, kopiert alles dort rein, löscht die Alte und bennent die Neue um.

      Danke für die Antwort.
      MfG
      Roland Schumacher
      http://blog.geniali.ch/

      Comment

      Working...
      X