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

Inserts in MS-SQL Datenbank für Relationen, die nicht erfüllt sind

Frage Entwicklung Datenbanken

Mitglied: diwaffm

diwaffm (Level 2) - Jetzt verbinden

24.11.2011, aktualisiert 18.10.2012, 3500 Aufrufe, 2 Kommentare

In 2 habe ich nach der Suche nach Datensätzen gefragt, die in einer verknüpften Datenbank NICHT vorkommen:

Ich habe 2 verknüpfte Tabellen (in Tabelle a wird mittels des Feldes ID_b auf Tabelle b verwiesen).
Es sollen alle Einträge in Tabelle b selektieren werden, auf die nicht von Tabelle a aus verwiesen wird...

Gelöst wurde das dann durch

select * from TabelleB where ID not in (select ID_b from TabelleA)

Nun stehe ich vor dem Problem, dass ich in Tabelle a Einträge für diese in Tabelle B existierenden Datensätze erstellen will.


Also etwas in der Art:

Insert into TabelleB (id) values (TabelleA.id_b) where ID not in (select ID_b from TabelleA)

Doch hier bekomme ich als Fehlermeldung immer nur "Fehlendes Semikolon am Ende der SQL-Anweisung" - und "where" ist markiert...

Ciao

dirk
Mitglied: Indrador
24.11.2011, aktualisiert 18.10.2012
Zitat von diwaffm:
In 3 habe ich nach der Suche nach Datensätzen gefragt, die in einer
verknüpften Datenbank NICHT vorkommen:

Ich habe 2 verknüpfte Tabellen (in Tabelle a wird mittels des Feldes ID_b auf Tabelle b verwiesen).
Es sollen alle Einträge in Tabelle b selektieren werden, auf die nicht von Tabelle a aus verwiesen wird...

Gelöst wurde das dann durch

select * from TabelleB where ID not in (select ID_b from TabelleA)

Nun stehe ich vor dem Problem, dass ich in Tabelle a Einträge für diese in Tabelle B existierenden Datensätze
erstellen will.


Also etwas in der Art:

Insert into TabelleB (id) values (TabelleA.id_b) where ID not in (select ID_b from TabelleA)

Doch hier bekomme ich als Fehlermeldung immer nur "Fehlendes Semikolon am Ende der SQL-Anweisung" - und
"where" ist markiert...

Ciao

dirk


Insert into TabelleA (ID_B)
select id from TabelleB where ID not in (select ID_b from TabelleA);

Das funktioniert aber nur, wenn in Tabelle A alle anderen Felder NULL sein dürfen bzw. Autoincrement sind z.B. PK
Da in Thema 1 kein Wort von deiner Datenstruktur steht, setzte ich ein bisschen
Kenntnis beim Auffüllen von Pflichtfeldern voraus.

Gruß
Bitte warten ..
Mitglied: diwaffm
24.11.2011 um 15:53 Uhr
Insert into TabelleA (ID_B)
select id from TabelleB where ID not in (select ID_b from TabelleA);

Das funktioniert aber nur, wenn in Tabelle A alle anderen Felder NULL sein dürfen bzw. Autoincrement sind z.B. PK
Da in Thema 1 kein Wort von deiner Datenstruktur steht, setzte ich ein bisschen
Kenntnis beim Auffüllen von Pflichtfeldern voraus.

Merci, das funktioniert.
ID ist das einzige Feld, das nicht NULL sein darf - von daher klappt das.

Ciao

dirk
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Festplatten, SSD, Raid
Vergleich zweier SSD-Typen im Raid-10 für den Anwendungsfall SQL-Datenbank (8)

Frage von DerWoWusste zum Thema Festplatten, SSD, Raid ...

Datenbanken
MS-SQL-Server + T-SQL+Batch (4)

Frage von kallewirsch zum Thema Datenbanken ...

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 ...