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, 6511 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
Mac OS X
MAC-Problem an einer W2k8 R2 Domain

Frage von Leo-le zum Thema Mac OS X ...

PHP
PHP PDO Problem (1)

Frage von Tiggr1994 zum Thema PHP ...

Microsoft Office
gelöst Mal wieder ein Excel-Problem (4)

Frage von Yannosch zum Thema Microsoft Office ...

Batch & Shell
Problem Mapping von Sharepoint Links als Netzlaufwerk

Frage von chaos2go zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Google Android
gelöst Android-Handy versehentlich (dauerhaft) gesperrt? (19)

Frage von FA-jka zum Thema Google Android ...

Batch & Shell
gelöst Ordner und Datei Name gleich (BATCH) (12)

Frage von clragon zum Thema Batch & Shell ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

DSL, VDSL
gelöst DSL 200m verlängern (11)

Frage von Angela44 zum Thema DSL, VDSL ...