php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.07.2006, 20:18  
Neuer Benutzer
 
Registriert seit: 30.06.2006
Beiträge: 12
PermanetMarker
Standard INSERT syntax - gibt es die möglichkeit VALUES und SELECT zu

hallo,

eine frage - gibt es eine mögichkeit in einer insert anweisung die beiden möglichkeiten werde einzufügen zu kombinieren?

also das aus

INSERT INTO tabelle2 (spalte1, spalte2, spalte3) VALUES (1,2,3)

und
INSERT INTO tabelle2 (spalte1, spalte2, spalte3) SELECT spalte1, spalte2, spalte3 FROM tabelle1

irgendetwas wird wie

INSERT INTO tabelle2 (spalte1, spalte2, spalte3, spalte4) VALUES (1,2,3) SELECT spalte 4 FROM tabelle1.

wenn das nicht geht, habe ich eine andere möglichkeit diese art der abfrage in eine einzige anweisung zu packen?

danke schonmal für die hilfe!
PermanetMarker ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.07.2006, 20:44  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Ja gibt es:
INSERT INTO tabelle2 (spalte1, spalte2, spalte3) SELECT spalte1, spalte2, 'DeinString' FROM tabelle1


UND: verschoben nach MySQL.
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 05.07.2006, 22:27  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Wozu möchtest du redundante Daten in deiner DB speichern?
Zergling-new ist offline   Mit Zitat antworten
Alt 05.07.2006, 22:40  
Neuer Benutzer
 
Registriert seit: 30.06.2006
Beiträge: 12
PermanetMarker
Standard

um eine bestellung abwickeln zu können!
ich habe schon versuch daten aus einem array mit einer schleife zu über tragen - das klappt aber nicht!
und da die daten sowieso in einer tabelle in der db stehe dachte ich mir dass ich es mal so probiere!
das problem ist nur dass ich auch eingegebene daten aus einem formular über tragen will... deswegen dachte ich es wäre eine möglichkeit diese beiden möglichkeiten insert zu verwenden zu kominieren.
PermanetMarker ist offline   Mit Zitat antworten
Alt 05.07.2006, 22:55  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Weiß gerade nicht ob das geht, glaube fast nicht in einem Zug.
Was spricht dagegen diesen Wert vorher aus der DB zu holen und dann normal wie alle anderen Werte in den INSERT zu schreiben?
Zergling-new ist offline   Mit Zitat antworten
Alt 05.07.2006, 23:15  
Neuer Benutzer
 
Registriert seit: 30.06.2006
Beiträge: 12
PermanetMarker
Standard

dagegen spricht dass diesert noch nicht existiert - der existiert erst wenn er in einem formular angegeben wurde.
ansonsten spräche nichts dagegen.
PermanetMarker ist offline   Mit Zitat antworten
Alt 05.07.2006, 23:17  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Mach mal ein konkretes Beispiel, ich glaube wir verstehen uns gerade falsch.
Zergling-new ist offline   Mit Zitat antworten
Alt 06.07.2006, 00:03  
Neuer Benutzer
 
Registriert seit: 30.06.2006
Beiträge: 12
PermanetMarker
Standard

das ist mein beispiel:
PHP-Code:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL mysql_query("INSERT INTO bestellungen (BENUTZERNAME, ARTNR, artikel_beschreibungk, artikel_groesse, artikel_anzahl, anmerkung, versandart, bestaetigung, altliefANREDE, altliefVNAME, alsliefNNAME, altliefFINAME, altliefSTR, altliefPLZ, altliefORT) 
SELECT BENUTZERNAME, ARTNR, artikel_beschreibungk, artikel_groesse, artikel_anzahl, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s FROM warenkorb WHERE BENUTZERNAME = '$MM_Username')"
,
                      
                       
GetSQLValueString($_POST['anmerkung'], "text"),
                       
GetSQLValueString($_POST['versandart'], "text"),
                       
GetSQLValueString($_POST['bestaetigung'], "text"),
                       
GetSQLValueString($_POST['radiobutton'], "text"),
                       
GetSQLValueString($_POST['altliefVNAME'], "text"),
                       
GetSQLValueString($_POST['altliefNNAME'], "text"),
                       
GetSQLValueString($_POST['altliefFINAME'], "text"),
                       
GetSQLValueString($_POST['altliefSTR'], "text"),
                       
GetSQLValueString($_POST['altliefPLZ'], "text"),
                       
GetSQLValueString($_POST['altliefORT'], "text")); 
das funktioniert jetzt soweit - aber nur für einen datensatz... sehr seltsam!
PermanetMarker ist offline   Mit Zitat antworten
Alt 06.07.2006, 12:48  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Man kann ja die fixen Werte ("VALUE") auch in ein Select-Statement einfügen. Versuchs mal etwa so:
PHP-Code:
$sql "INSERT INTO bestellungen (
    benutzername, 
    artnr, 
    artikel_beschreibungk, 
    artikel_groesse,
    artikel_anzahl, 
    anmerkung, 
    versandart, 
    bestaetigung, 
    altliefANREDE, 
    altliefVNAME, 
    alsliefNNAME, 
    altliefFINAME, 
    altliefSTR, 
    altliefPLZ, 
    altliefORT)
SELECT 
    benutzername, 
    artnr, 
    artikel_beschreibungk, 
    artikel_groesse, 
    artikel_anzahl, 
    '" 
.  $_POST['anmerkung'] . "', 
    " 
.   $_POST['versandart'] . "', 
    " 
.   $_POST['bestaetigung'] . "', 
    " 
.   $_POST['radiobutton'] . "', 
    " 
.   $_POST['altliefVNAME'] . "', 
    " 
.   $_POST['altliefNNAME'] . "', 
    " 
.   $_POST['altliefFINAME'] . "', 
    " 
.   $_POST['altliefSTR'] . "', 
    " 
.   $_POST['altliefPLZ']. "', 
    " 
.   $_POST['altliefORT'] . "'
FROM warenkorb 
WHERE benutzername = '$MM_Username'"

Allerdings glaube ich nicht dass das viel Sinn macht. Besser wäre wohl, das DB-Design zu überarbeiten, die reduntanten Attribute zu eliminieren und dann die Daten erst bei der Auswertung richtig zu verknüpfen.
__________________
Gruss
L
lazydog ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Mysql Insert Select + Concat Hu5eL Datenbanken 14 10.06.2008 10:39
INSERT....Syntax Fehler OrlandoPolic Datenbanken 16 17.01.2008 23:19
Pathfinding Algorithmus optimieren? (Algorith. von Dijkstra) Martin13 PHP Tipps 2007 19 04.09.2007 19:20
Verständnisprobleme bei Utf8 > Character Set > Collate erna Datenbanken 4 20.03.2007 14:08
Differenz zwischen 2 Zahlen duderino PHP Tipps 2006 19 10.08.2006 22:12
[JavaScript] Event Handler in form select - Syntax? winfo_cologne HTML, Usability und Barrierefreiheit 5 29.03.2006 16:47
PRoblem mit Cookie bei PHPbb-Board PHP Tipps 2007 8 12.12.2005 20:56
PHP-Fehlermeldung, weiss nicht mehr weiter PHP Tipps 2005-2 12 21.09.2005 12:56
mysql dump einspielen (ohne phpmyadmin) PHP Tipps 2005-2 6 18.06.2005 21:50
[Erledigt] fehler den ich noch nie gesehen habe Datenbanken 7 09.06.2005 14:29
dynamisches MENÜ aus db lesen.probleme mit SUBid !! PHP Tipps 2005 26 24.03.2005 18:53
55000 Datenbankeinträge möglichst schnell erstellen Simbo PHP Tipps 2005 27 22.03.2005 22:08
[Erledigt] MySQL-DB gibt keine Daten zurück!!! Datenbanken 4 21.12.2004 21:00
dem verzweifeln nahe PHP Tipps 2004 26 24.10.2004 17:28
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
insert into values select, insert into select values, sql insert select values, sql insert into values select, sql insert values select, insert values select, insert select values, insert into mit select und values, sql insert into select values, insert into values select from, insert values, values select, insert into values, insert value select, insert into value select, insert into select, select from values, select values, insert syntax, mysql insert into values select

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:23 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.