Zum Inhalt springen

SQL insert Befehl via VS08 C#


Kosinator

Empfohlene Beiträge

Hallo,

ich habe zwie Tabellen in einer DatenBank, eine davon ist leer und soll mit werten der anderen gefüllt werden, doch nicht alle Spalten sollen übernommen werden. Desweiteren sollte die id (ist eine int, kleine Tabelle) für referierungszwecke gleich bleiben.

nennen wir die tabellen tbErste und tbZweite, die leben beide in "dbo", Spalten sind:

"Bereich" (int, schlüssel) "Kurz" (string(30)) in der tbErste und

"idNum" (int, schlüssel) "Bezeichnung" (string(30)) in der tbZweite

Sollte mein sql-Statement etwa so aussehen? (Korekkturlauf)

string[] sSQLArr = new string[]

{

"INSERT INTO [dbo].[tbZweite]([idNum],[bezeichnung])" +

"VALUES ([dbo].[tbErste].[bereich],[dbo].[tbErste].[Kurz])",

};

return KonvertSQLArray(connection, sSQLArr, 3);

Das Problem ist, dass ich mir nicht sicher sein kann, dass tbErste.Kurz immer existiert und ich nicht weiß ob mir das nicht die Reihenfolge zerstört,

Plus, meine SQL-Kenntnisse sind, sagen wir, nicht gut und daher bin ich mir nicht mal sicher, ob ich nicht erst über ALTER TABLE [dbo].[tbZweite] die Tabelle "Aufmachen" muss, und ich bin nicht syntaxsicher.

Bitte wirklich um konstruktive Hilfe und nicht soetwas wie "google doch" oder "schau mal beim MSDN", versuche ich zeitgleich türlich auch. Aber Hier sind ja die wirklichen Profis :)

Danke für die mühen, Kosi

p.s.: Habe die Forensuche angestrengt, leider nicht das gefunden war mir explizit weiterhilft...

Link zu diesem Kommentar
Auf anderen Seiten teilen

string[] sSQLArr = new string[]

{

"INSERT INTO [dbo].[tbZweite]([idNum],[bezeichnung])" +

"SELECT [idNum]" +

"FROM [dbo].[tbErste].[bereich]" +

"SELECT [bezeichnung]" +

"FROM [dbo].[tbErste].[Kurz]",

};

Oder bekomme ich dann Probleme, da erstens SELECT und FROM zwimal auftauchen,

zweitens ich gar keine VALUE angaben gemacht habe... ??

oder ist ein WHERE [tbErste].[bereich] == [tbZweite].[idNum]

wobei == nicht klappen dürfte, und idNum in tbZweite noch gar nicht existiert...

Oder besser über anderen weg wie etwa Merge (wenns das gibt),

danke nochmak, Kosi

Link zu diesem Kommentar
Auf anderen Seiten teilen

laut Insert (SQL - Wikipedia, the free encyclopedia) könnte das klappen

string[] sSQLArr = new string[]

{

"INSERT INTO [dbo].[tbZweite]([idNum],[bezeichnung])" +

"SELECT [bereich],[Kurz]" +

"FROM [dbo].[tbErste]",

};

Klappt das auch mit Nullwerten (habe gehört diese seinen besonders böse), und fliegt mir da nicht etwas um die Ohren, falls in der tbZweite bereits Daten sind?

Kann das leider nicht ausprobieren, da ich damit nicht (nur) meine Daten verändere, sondern auch woanders...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...