Forum - Beitrag anzeigen

Datenbanken/SQL - Re: Zeile aus Tabelle in die selbige kopieren mit einer neuen ID ?

Icon Pfeil Startseite Icon Pfeil Kategorie Icon Pfeil Suche

Icon Forum Beitrag vom 06.12.2007 11:32 (1036 Aufrufe)
Name: Thomas S
Titel: Re: Zeile aus Tabelle in die selbige kopieren mit einer neuen ID ?
Inhalt: Hallo Frank,

bei einer cfquery kannst du die Spaltennamen abfragen (queryName.columnList), das könnte dir hilfreich sein:

<cfquery name="ZZZ" datasource="_EU" dbtype="ODBC" debug>
Insert into TABELLE
(
<cfloop index="colName" list="#xxx.columnList#">
#colName#<cfif listGetAt(xxx.columnList,ListLen(xxx.columnList)) neq colName>,</cfif>
</cfloop>
)
Values
(
<cfloop index="colName" list="#xxx.columnList#">
<cfif colName neq "ID">
'#evaluate("xxx." & colName)#'<cfif listGetAt(xxx.columnList,ListLen(xxx.columnList)) neq colName>,</cfif>
<cfelse>
"deine neue ID",
</cfif>
</cfloop>

</cfquery>

Weiß nicht, ob ich jetzt im Blindflug die Kommasetzung zwischen den einzelnen Spalten korrekt umgesetzt habe (sprich, das nach dem letzten Spaltennamen kein Komma mehr gesetzt wird).
Außerdem setze ich in dem Beispiel voraus, das alle Spalten Text sind.

Du liest einen Datensatz komplett aus. In der Insert-Query gehst du zunächst nur über alle Spaltennamen.
Für die Values der gleiche Loop, nur das dann mit Evaluate der tatsächliche Wert der Spalte aus der Select-Query geholt wird.

Einfach mal probieren...
Thomas


Bitte melden Sie sich kostenlos an, um eine Antwort auf diesen Beitrag zu erstellen.


Das deutsche ColdFusion-Forum cfml.de ist das Portal für Einsteiger und Experten zum Thema ColdFusion und der ColdFusion Markup Language (CFML).

© 2017 Webdesign & Hosting: CHC ONLINE Kassel | SOLVA Content-Management-System CMS
Urlaub-Angebote.de - Urlaub mit Bestpreis-Garantie buchen