AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Primärschlüssel Datentyp ändern

Primärschlüssel Datentyp ändern

Ein Thema von lxo · begonnen am 6. Jul 2020 · letzter Beitrag vom 6. Jul 2020
Antwort Antwort
lxo

Registriert seit: 30. Nov 2017
257 Beiträge
 
Delphi 12 Athens
 
#1

Primärschlüssel Datentyp ändern

  Alt 6. Jul 2020, 21:19
Datenbank: Firebird • Version: 3.0.6 • Zugriff über: UniDAC / IBExpert
Hallo,

hat jemand ein Tipp wie man am angenehmsten ein Primärschlüssel, sowie die dazugehörigen Fremdschlüssel von Integer auf BigInt umstellen kann.

Vorgehensweise ist mir bekannt, aber vielleicht gibt es da ja Tipps wie das angenehm geht ohne alles manuell zusammenzubauen.

Ich könnte mir vorstellen in IBExpert gibt es was, finde aber leider nichts passendes um mir das wirklich zu vereinfachen.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.269 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Primärschlüssel Datentyp ändern

  Alt 6. Jul 2020, 22:36
Hallo,
wenn er noch keine Foreign Keys hat, sollte es doch über
Alter Table Alter Type gehen?

Oops gerade Fremdschlüssel gelesen ...

Das geht dann doch alles per SQL:
Drop FK's
Obiger Befehl für den PK
Und die FKs wieder anlegen
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
642 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Primärschlüssel Datentyp ändern

  Alt 6. Jul 2020, 23:25
gibt verschiedene Varianten, am einfachsten aber abhängig von der Datenbankgröße
ist Tools Extract metadata inklusive daten und alles objekte, in dem Script
dann (hab ich auch in videos erklärt) dann einfach per suchen/ersetzen zB integer
durch bigint und dann script ausführen.

Das ist für sehr große Datenbank aber evtl ein wenig langsam

Alternative einfach mal auf eine pk feld in Table Editor gehen, dann unten auf die Seite
Field Dependencies umschalten, da siehst du was ggf alles davon abhängig ist.

Abhängigkeiten Problem kann vielfältig sein, allein irgendwo eine declare ... type of column ...
kann schon reichen, das es nicht so einfach geht.

Wenn du aber alle dependencies weg hast, inkl alle pk/fk constraints etc dann sollte der
alter table alter type funktionieren (trigger und sp abhängigkeiten kannst du sehr einfach
in ibexpert mit deactivate/active trg bzw sp auf dem rechten mausklick ab/anschalten
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz