helmuthelmut2000
Goto Top

Mit sql eine Zeile einfügen, select und feste Werte

Hallo,

Ich möchte folgendes machen:
Ich möchte an einer SQL DB in einer Tabelle Zeilen hinzu machen.

Ich möchte bei jedem Vor und Nachnamen eine Jahreszahl hinzu machen.
Die Tabelle meist Spieler und hat eine Spalte die meist Vorname und eine Spalte die meist Nachname
dann noch eine Spalte mit Jahr und eine Spalte mit Zahlen eine Spalte mit Sonderzahlen und eine Spalte mit Nummer.

Jetzt möchte ich mit einem insert into Befehle, das bei jedem Vor und Nachname eine Zeile mit der neuen Jahreszahl
dazu kommt. Dabei sollte sich in der Spalte mit Nummer die Zahlen automatisch um eines erhöhen, und in der Spalte mit
Sonderzahlen sollte eine 1 eingefügt werden.

Muss ich doch das VALUES und den Select in eine Abfrage bringen.
Oder was gibt es da für Möglichkeiten?

Gruß
HELMUT

Content-ID: 317273

Url: https://administrator.de/forum/mit-sql-eine-zeile-einfuegen-select-und-feste-werte-317273.html

Ausgedruckt am: 23.12.2024 um 04:12 Uhr

Pjordorf
Pjordorf 08.10.2016 um 17:19:49 Uhr
Goto Top
Hallo,

Zitat von @helmuthelmut2000:
Ich möchte an einer SQL DB in einer Tabelle Zeilen hinzu machen.
http://www.w3schools.com/sql/sql_insert.asp
https://www.mssqltips.com/sqlservertutorial/2516/simple-sql-server-inser ...
https://technet.microsoft.com/de-de/library/dd776381(v=sql.105).aspx
http://www.datenbank-sql.de/insert.htm
http://www.sqlcourse.com/insert.html

Ich möchte ... da für Möglichkeiten?
Habe ich nichts von Verstanden.

Und so wie es verschiedene Autos gibt, gibt es auch verschiedene SQL Versionen und Hersteller und alle haben ihren Dialekt. Was hast du?

Gruß,
Peter
Biber
Biber 08.10.2016 um 17:46:56 Uhr
Goto Top
Moin helmuthelmut2000,

An welcher Stelle hapert es denn?
Wenn die Spalte namens Nummer ein Autowert ist wie ich annehme, dann kannst du die in der Feld- und Valueliste weglassen.
Das aktuelle Jahr bekommst du mit Year (getdate ()) bei MSSQL.
Was fehlt?

Grüße
Biber
helmuthelmut2000
helmuthelmut2000 08.10.2016 um 21:46:57 Uhr
Goto Top
Ja,
Aber wie bekommt man das mit der Spalte Sonderzahlen hin?
Da sollte immer eine 1hinzu kommen.

Gruß
Pjordorf
Pjordorf 08.10.2016 um 22:15:28 Uhr
Goto Top
Hallo,

Zitat von @helmuthelmut2000:
Aber wie bekommt man das mit der Spalte Sonderzahlen hin?
Ist die Spalte als Zahl definiert? Welche maximale Zahl soll denn aufgenommen werden? Darf die Zahl auch doppelt vorkommen? Sollen gelöschte Zeilen (und damit die Sonderzahl) eine fehlende Zahl in der Liste bekommen oder sollen die Grundsätzlich einfach weiterzählen?

Da sollte immer eine 1hinzu kommen.
Eine Spalte als Autoi Inkrement festlegen und dort auch festlegen mit welcher Schrittweite (hier 1) erhöht werden soll. Dann wird diese Spalte automatisch beim hinzufügen einer neuen Zeile Automatisch hinzugefügt und der Wert entsprechend erhöht Inkrement. Mehr braucht es nicht.

Gruß,
Peter
Biber
Biber 09.10.2016 um 12:16:51 Uhr
Goto Top
Moin helmuthelmut2000,


vielen Dank für das Lesen unserer Kommentare und das geduldige Beantworten unserer Rückfragen.

Du schreibst doch oben, in die Spalte Sonderzahlen soll bei jedem neuen Datensatz eine 1 eingefügt werden.
Diese Regel wird im Normalfall mit einem Defaultwert in der Tabledefinition abgefackelt und dann dieses Feld in der Feld- und Valuesliste auch ausgelassen.

Wenn das zu professionell wirkt, dann halt explizit mit angeben und als Value eine 1 übergeben.

Grüße
Biber
helmuthelmut2000
helmuthelmut2000 09.10.2016 um 12:24:09 Uhr
Goto Top
Hallo,

Das ist mein Problem,
Wie mach ich das mit dem Value übergeben, wenn
ich schon einen select habe?
Geht das überhaupt?

Gruß
SeaStorm
SeaStorm 09.10.2016 aktualisiert um 12:43:07 Uhr
Goto Top
Hi

dir ist klar, das SELECT keine Daten einfügt oder ändert, ja?

Geb uns doch mal ein ordentliches Beispiel deiner Tabellen (oder erstelle sie in Google Sheets o.Ä) und beschreibe (Ohne massig Tipp-, Rechtschreib- und Punktuationsfehler) klar was welche Spalte bedeutet, was der Sinn der jeweiligen addition sein soll etc.

Klare Frage, klare Antwort.
Das, was in deinem Eröffnungspost steht ist bestenfalls Kauderwelsch, das man auch nach dem 3. mal lesen nicht versteht
Biber
Biber 09.10.2016 um 17:21:27 Uhr
Goto Top
Also gut,

Letzter Versuch in endlicher Zeit voranzukommen...

Bitte schreibe uns doch den sinngemäßen Inhalt von zwei Datensätzen hier hin plus einen dritten, wie er nach dem Insert aussehen soll.

Alles wäre vollkommen ausreichend in je einer Textzeile mit Semikolon getrennt.

Ohne Beispiel kann hier keiner nachvollziehen, watt du mit deinem Select meinst.

Grüße
Biber
ukulele-7
ukulele-7 10.10.2016 um 11:09:34 Uhr
Goto Top
Du suchst sinngemäß in etwa
INSERT INTO tabelle(spalte1,spalte2,spalten)
SELECT spalt1,spalte2,spalten
FROM tabelle
Alles Andere ist bei der Beschreibung rätselraten. Tabellendefinition und Beispieldatensätze wären gut.