INSERT SELECT INTO TABLE с дополнительными переменными
columnI вставляю вот так:
$sql = "
INSERT INTO EHS.dbo.T_Kunden_ApArchiv ([KuNr] ,[KontaktName] ,[KontaktVorname] ,[KontaktpersonPosition] ,[Anrede] ,[Abteilung] ,[OrtsName] ,[KStraße] ,[KPlz] ,[KTel] ,[KFax] ,[KHandy] ,[Ke-mail] ,[KInternet])
SELECT [KuNr] ,[KontaktName2] ,[KontaktVorname2] ,[KontaktpersonPosition2] ,[Anrede2] ,[Abteilung2] ,[OrtsName2] ,[KStraße2] ,[KPlz2] ,[KTel2] ,[KFax2] ,[KHandy2] ,[Ke-mail2] ,[KInternet2] FROM EHS.dbo.T_Kunden
WHERE KuNr = '".$data['kundenNR']."'";
// execute
odbc_exec($db1_link, $sql);
все хорошо с этим, но я должен положить в переменную php $vertriebNr
дополнительно в колонку ArchiviertDurch
Как я могу сделать это без дополнительного обновления?
2 ответа
Решение
Вы можете сделать это так:
$sql = "INSERT INTO EHS.dbo.T_Kunden_ApArchiv ([KuNr] ,[KontaktName] ,[KontaktVorname] ,
[KontaktpersonPosition] ,[Anrede] ,[Abteilung] ,[OrtsName] ,[KStraße] ,
[KPlz] ,[KTel] ,[KFax] ,[KHandy] ,[Ke-mail] ,[KInternet],
[ArchiviertDurch])
SELECT [KuNr] ,[KontaktName2] ,[KontaktVorname2] ,[KontaktpersonPosition2] ,
[Anrede2] ,[Abteilung2] ,[OrtsName2] ,[KStraße2] ,[KPlz2] ,[KTel2] ,
[KFax2] ,[KHandy2] ,[Ke-mail2] ,[KInternet2], " . $vertriebNr . "
FROM EHS.dbo.T_Kunden
WHERE KuNr = '".$data['kundenNR']."'";
// execute
odbc_exec($db1_link, $sql);
Я предположил $vertriebNr
целое число, поэтому я не добавил '
символы вокруг него в запросе.
Я думаю, что вы ищете это:
> INSERT INTO EHS.dbo.T_Kunden_ApArchiv ([KuNr] ,[KontaktName]
> ,[KontaktVorname] ,[KontaktpersonPosition] ,[Anrede] ,[Abteilung]
> ,[OrtsName] ,[KStraße] ,[KPlz] ,[KTel] ,[KFax] ,[KHandy] ,[Ke-mail]
> ,[KInternet],[the column where you want ArchiviertDurch] )
> VALUES( SELECT ([KuNr] ,[KontaktName2] ,[KontaktVorname2]
> ,[KontaktpersonPosition2] ,[Anrede2] ,[Abteilung2] ,[OrtsName2]
> ,[KStraße2] ,[KPlz2] ,[KTel2] ,[KFax2] ,[KHandy2] ,[Ke-mail2]
> ,[KInternet2] FROM EHS.dbo.T_Kunden WHERE KuNr = 'K000097'), [ArchiviertDurch] );