- Beiträge: 4
Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
- Stefan Gawert
- Autor
- Offline
- Benutzer
Weniger
Mehr
1 Jahr 10 Monate her - 1 Jahr 10 Monate her #4734
von Stefan Gawert
Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle wurde erstellt von Stefan Gawert
Hallo,
Ich habe eine Tabelle mit ID Artikelnummer und Preisen sowie Preisnummer.
ID automatisch immer eine andere. Preisnummer von 1 bis 8 also je Acht Datensätze mit gleicher Artikelnummer. Ich möchte nun den Preis vom Datensatz mit Preisnummer 1 in den Datensatz mit Preisnummer 2 Schreiben lassen.
Wie gehe ich da am besten vor?
Dank im voraus,
Stefan
Ich habe eine Tabelle mit ID Artikelnummer und Preisen sowie Preisnummer.
ID automatisch immer eine andere. Preisnummer von 1 bis 8 also je Acht Datensätze mit gleicher Artikelnummer. Ich möchte nun den Preis vom Datensatz mit Preisnummer 1 in den Datensatz mit Preisnummer 2 Schreiben lassen.
Wie gehe ich da am besten vor?
Dank im voraus,
Stefan
Letzte Änderung: 1 Jahr 10 Monate her von Stefan Gawert.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 10 Monate her #4735
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
Hallo Herr Gawert,
folgendes Vorgehen könnte ich mir vorstellen.
Im Anhang finden Sie ein kleines Beispiel dazu. Das Beispiel verwendet den Access Adapter (inkl. mdb Datenbank), kann aber 1:1 auch für den SQL Server Adapter verwendet werden.
folgendes Vorgehen könnte ich mir vorstellen.
- READ Seite anhand eines SELECTs einschränken, so dass nur Datensätze mit Preisnummer = 1 gelesen werden
z.B. select * from [t_Preise] where Preisnummer = 1
- Die WRITE Seite so konfigurieren, dass nur Datensätze aktualisiert (UPDATES) werden. Zusätzlich muss der PrimaryKey (im FlowHeater) auf Artikelnummer und Preisnummer geändert werden. Siehe Screenshot
- Damit jetzt die Datensätze mit Preisnummer = 2 geändert werden muss für Preisnummer ein statischer Wert (über den X-Value Heater ) verwendet werden.
Im Anhang finden Sie ein kleines Beispiel dazu. Das Beispiel verwendet den Access Adapter (inkl. mdb Datenbank), kann aber 1:1 auch für den SQL Server Adapter verwendet werden.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Stefan Gawert
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 4
1 Jahr 10 Monate her #4737
von Stefan Gawert
Stefan Gawert antwortete auf Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
Hallo Herr Stark,
vielen Dank für die Richtungsweisung. In der Theorie funktioniret der Weg, nur leider in der Praxis nicht ganz.
Das SQL-Skript sieht folgendermaßen aus: (nur zur Darstellung 1. Zeile)
update dbo.[ARPRE] set [Zuschlag] = 118.7857, [Preis] = 7.39495798319328, [StueckPreis] = 0.756302521008403 where [ArtID] = 1668 and [PrNr] = N'3'
FH meldet alle Datensätze korrekt geschrieben, in der DB passiert allerdings nichts.
Ich habe dies mal als Ansatz genommen um weiter zu probieren und in SSMS das Skript laufen lassen dort bekomme ich als Rückmeldung 0 Datensätze betroffen. wenn ich and [PrNr] = N'3' in and [PrNr] = '3' ändere funktioniert es einwandfrei. Woher kommt dieses N und wie bekomme ich es weg?
mit Dank im voraus
Stefan Gawert
vielen Dank für die Richtungsweisung. In der Theorie funktioniret der Weg, nur leider in der Praxis nicht ganz.
Das SQL-Skript sieht folgendermaßen aus: (nur zur Darstellung 1. Zeile)
update dbo.[ARPRE] set [Zuschlag] = 118.7857, [Preis] = 7.39495798319328, [StueckPreis] = 0.756302521008403 where [ArtID] = 1668 and [PrNr] = N'3'
FH meldet alle Datensätze korrekt geschrieben, in der DB passiert allerdings nichts.
Ich habe dies mal als Ansatz genommen um weiter zu probieren und in SSMS das Skript laufen lassen dort bekomme ich als Rückmeldung 0 Datensätze betroffen. wenn ich and [PrNr] = N'3' in and [PrNr] = '3' ändere funktioniert es einwandfrei. Woher kommt dieses N und wie bekomme ich es weg?
mit Dank im voraus
Stefan Gawert
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Stefan Gawert
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 4
1 Jahr 10 Monate her #4738
von Stefan Gawert
Stefan Gawert antwortete auf Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
Klappt jetzt das N kam von Unicode
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 10 Monate her #4739
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
Hallo Herr Gawert,
das ist komisch Hiermit wird lediglich angegeben, dass es sich bei der Zeichenfolge um eine Unicode Zeichenfolge handelt. Der SQL Server wandelt das dann automatisch in die richtige Codepage um, die zum abspeichern verwendet werden soll. Wenn Sie NCHAR bzw. NVARCHAR Datentypen verwenden, werden diese nicht weiter umgewandelt, sondern direkt als Unicode Zeichenfolgen abgelegt.
Eigentlich sollte das auch bei Zeichenfolgen im WHERE Ausdruck egal sein. Welche SQL Server Version setzen Sie denn ein?
PS: Das „N“ vor Zeichenfolgen können Sie in dem Erweiterten Einstellungen im SQL Server Adapter ändern bzw. unterdrücken, siehe Screenshot.
das ist komisch Hiermit wird lediglich angegeben, dass es sich bei der Zeichenfolge um eine Unicode Zeichenfolge handelt. Der SQL Server wandelt das dann automatisch in die richtige Codepage um, die zum abspeichern verwendet werden soll. Wenn Sie NCHAR bzw. NVARCHAR Datentypen verwenden, werden diese nicht weiter umgewandelt, sondern direkt als Unicode Zeichenfolgen abgelegt.
Eigentlich sollte das auch bei Zeichenfolgen im WHERE Ausdruck egal sein. Welche SQL Server Version setzen Sie denn ein?
PS: Das „N“ vor Zeichenfolgen können Sie in dem Erweiterten Einstellungen im SQL Server Adapter ändern bzw. unterdrücken, siehe Screenshot.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Stefan Gawert
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 4
1 Jahr 10 Monate her #4740
von Stefan Gawert
Stefan Gawert antwortete auf Daten einer Spalte einer tabelle in einen anderen Datensatz der selben Tabelle
Funktioniert bestens.
Danke
Danke
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.291 Sekunden