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

Oracle 10g Constraint Problem

Frage Entwicklung Datenbanken

Mitglied: inspiration-is-gone

inspiration-is-gone (Level 1) - Jetzt verbinden

29.06.2009, aktualisiert 12:14 Uhr, 6504 Aufrufe, 5 Kommentare

Hallo zusammen!

Habe ein kleines Problem auf einer Oracle 10g Datenbank, hoffe mir kann hier jemand weiterhelfen oder einen Tipp geben.

Eine Tabelle "TAB" besteht aus 6 Feldern, wobei die ersten 4 Felder den Primärschlüssel (PK) ausmachen:
"DOCID" (PK), "MANDANT" (PK), "OBJEKT" (PK), "NORMKEY" (PK), "TEXTFELD" und "TABPHYSSEQ".

Hole ich mir jetzt aus dieser Tabelle alle Einträge für Mandant 1 heraus und möchte diese wieder mit Mandant=3 wegschreiben, erhalte ich die Fehlermeldung:
"Unique Constraint 'TAB2PHYSSEQ' verletzt".

Das SQL hierzu ist sehr überschaubar:
insert into TAB ( "DOCID", "MANDANT, "OBJEKT", "NORMKEY", "TEXTFELD", "TABPHYSSEQ")
select "DOCID", 3 as "MANDANT", "OBJEKT", "NORMKEY", "TEXTFELD", "TABPHYSSEQ"
where "MANDANT" = 1;

Die Rahmenbedingungen:
- Für Mandant 3 gibt es bislang noch keinen Eintrag
- In der Ergebnismenge gibt es keinen einzigen doppelten Wert, der Primärschlüssel ist definitiv nicht verletzt
- Ein Fremdschlüssel auf diese Tabelle scheint nicht vorhanden zu sein
- Auch wenn die Abfrage auf die ersten 4 Felder beschränkt wird, kommt diese Meldung
- Eine Constraint 'TAB2PHYSSEQ' ist zu dieser Tabelle nicht angelegt, auch solches Feld gibt es in der Tabelle nicht

Danke & Gruß,
Nils
Mitglied: inspiration-is-gone
29.06.2009 um 12:56 Uhr
Ok, habe es vorläufig gelöst. Auf das Feld TABPHYSSEQ war eine Unique Constraint gelegt (obwohl ich die nirgends angezeigt bekommen habe). Kann mir jemand sagen, ob evtl von Oracle selbst solche Constraints vergeben werden und wo man diese dann ggf findet?
Bitte warten ..
Mitglied: Biber
29.06.2009 um 13:03 Uhr
Moin inspiration_is_gone,

a) fehlt in Deinem SQL nicht auch noch die FROM-Klausel?
b) Constraints bekommst Du in der View USERS_CONSTRAINTS angezeigt.
01.
SELECT * FROM USER_CONSTRAINTS  
02.
WHERE table_name ='DEINETABELLE';
Grüße
Biber
Bitte warten ..
Mitglied: inspiration-is-gone
29.06.2009 um 13:19 Uhr
Hi Biber,

ja hast Recht, die From-Klausel habe ich in dem Beispiel mal grosszügigerweise übergangen *hüstel

Interessanterweise gibt es keine Eintragungen in der USER_CONSTRAINTS Tabelle zu entsprechender Tabelle, aber Danke für den Tip!

Gruß
Bitte warten ..
Mitglied: Bolle97
29.06.2009 um 15:06 Uhr
Hallo,

wie bekomme ich Constraints, Indizes, Tabellen, etc. angezeigt?

1. Enterprise Manager Console
oder
2. DBConsole
oder
3. SQL-Developer
oder
4. aus den DBA-/Userviews (wie Biber schon bemerkte)

Ein Index auf eine Tabelle (unique oder auch nicht) muss nicht immer ein Constraint sein, also auch mal "DBA(USER)(ALL)_INDEXES" schauen.

Gruß René
Bitte warten ..
Mitglied: inspiration-is-gone
29.06.2009 um 15:40 Uhr
Hallo Bolle,

das wars, das war ein Index und kein Constraint. Habe mal in All_Indexes nachgeschaut und wurde fündig. Danke für den Tipp! ;)

Gruß,
Nils
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Windows Netzwerk
Problem mit PSexec64 von Sysinternals (2)

Frage von MaxMoritz6 zum Thema Windows Netzwerk ...

Windows Server
gelöst Problem nach DC-Installation unter Server 2012 R2 (9)

Frage von manuel1985 zum Thema Windows Server ...

Windows 10
Problem: einzige Konto gesperrt + Bitlocker aktiv (12)

Frage von Windows11 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...