Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Primärschlüsselfehler bei insert Statement

Frage Entwicklung Datenbanken

Mitglied: dax4fun

dax4fun (Level 1) - Jetzt verbinden

26.02.2015, aktualisiert 02.03.2015, 647 Aufrufe, 6 Kommentare

Hi liebe Leute,

info: habe bei einer DB per select die gewünschten Daten abgefragt und in eine csv gesichert.
Habe zur Probe eine Zeile zurück schreiben wollen, dann kam das Problem mit dem Primärschlüssel

Ich muss wahrscheinlich etwas ändern damit es geht aber was???
01.
INSERT INTO "WORK" ("UID", ...) VALUES ('C776CCAB70188444805687530AA209DB', ...);
bei Metadata hab ich das gefunden
01.
CONSTRAINT "PK_WORK" PRIMARY KEY ("UID") 
02.
;
Interbase 6.0
Mit freundlichen Grüßen

Mitglied: AndreasHoster
26.02.2015 um 16:59 Uhr
UID sollte eindeutig sein.
Erneut dieselbe UID reinschreiben ist nicht zulässig.
Bitte warten ..
Mitglied: dax4fun
26.02.2015 um 17:13 Uhr
hi @AndreasHoster

Ist mir Klar, aber wie kann ich einen neuen PS generieren ?? gibts da einen sql befehl der einen neuen PS generiert weil die DB ist Leer wo ich die Daten versuche zu kopieren (Struktur ist vorhanden).

hmm
Bitte warten ..
Mitglied: Gersen
27.02.2015, aktualisiert um 12:37 Uhr
Hallo,

in der Regel wird der Primary Key per "Autoincrement"-Generator angelegt. D.h., die Datenbank vergibt den Wert selbst beim Einfügen eines Datensatzes (s.a. hier und hier).
Versuch doch mal Deinen INSERT-Befehl ohne das Feld "UID" und den Wert (alternativ: mit Feld "UID" und Wert 0).

Gruß,
Gersen
Bitte warten ..
Mitglied: dax4fun
27.02.2015, aktualisiert um 20:45 Uhr
Hi Gersten,
Hab ich Versucht ohne UID und ohne Wert -> error (noch nicht probiert UID mit wert 0 wird das funktionieren wenn Feld NOT NULL ist ) werd ich noch versuchen...

Ich hab ein wenig rekursiv gedacht und eine andere Lösung gefunden brauche aber eine Bestätigung ob es ok ist :

Idee 1 wO. : DB voll -> gebrauchte Daten speichern -> neue DB ----> Daten zurück

Idee 2 : DB voll -> nicht gebrauchte Daten löschen -> Backup -> Restore

Ist Idee 2 genau so wie eine Neue DB, da alle Daten die älter als 7 Tage gelöscht werden und durch Restore die DB optimiert wird ????

Mit freundlichen Grüßen
dax
Bitte warten ..
Mitglied: Gersen
LÖSUNG 02.03.2015, aktualisiert um 21:50 Uhr
Hallo,

Idee 1 ist n.m.M. keine Lösung, da eine DB erzeugt wird, die ebenso voll ist, oder?
Idee 2 ist für wichtige Produktiv-Daten gefährlich - geht beim Löschen etwas schief, ist Feierabend. Sicherer wäre:

DB --> Backup1 --> nicht gebrauchte Daten löschen --> Backup2 --> Restore aus Backup2. Bei Fehlern kann man immer noch Backup1 "restorieren".

Gruß,
Gersen
Bitte warten ..
Mitglied: dax4fun
02.03.2015 um 21:50 Uhr
Hallo Gersen,

Stimmt, Idee 2 ist ein wenig gefährlich aber ich mach ja sowieso ein Backup auf Dateiebene, ohne das etwas geändert wird somit hab ich alle Daten. Bei der Weiterverarbeitung geschiet alles auf der tempDB.

Und ich bin ja auch noch da

Viel Spass noch und Danke dir für deine Unterstützung

Mit freundlichen Grüßen dax
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Datenbanken
TSQL - Tabellen Export als Insert Statement (3)

Frage von ooAlbert zum Thema Datenbanken ...

Datenbanken
gelöst SQL Statement auseinandernehmen Like (20)

Frage von H41mSh1C0R zum Thema Datenbanken ...

Microsoft Office
Access 2013 - Beispiel für mehrfach Update und Insert (2)

Frage von evolution zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...