SQL: INSERT INTO SELECT
Válas Péter
sulinet at postafiok.hu
2013. Jún. 3., H, 07:04:42 CEST
2013. június 1. 7:49 Dorozsmai Károly írta, <kdorozs at gmail.com>:
> Üdv!
>
> A telepules tábla helységneveket és megyeneveket tartalmaz. Ebben van egy
> "Üröm" nevű helység, megyéje "Pest" SQL paranccsal akarom beilleszteni új
> sorba "Pilisborosjenő" nevét, de úgy hogy allekérdezéssel kapjam meg a
> megye nevét, mert azt tudom, hogy a két település megyéje egyezik. A
>
> INSERT INTO telepules ( nev, megye )
> VALUES ("Pilisborosjenő", (SELECT megye FROM telepules WHERE nev="Üröm"));
>
> parancsot az MS Office Access 2003 átveszi, de nem futtatja le, "-3025
> hibakód, Ehhez a hibához nincs üzenet..." a visszajelzése... Elvi hibát
> vétek avagy az adott környezet nem implementálja ezen SQL szerkezetet? TIA
>
Kicsit kísérleztem, mert izgat az efféle probléma. Úgy rémlik, hasonlóról
már volt szó nemrég, ugyancsak eredménytelenül.
Access 2000, az a legközelebbi.
Egy mező beillesztésével:
INSERT INTO találmány ( talnev )
SELECT talnev from találmány2 where tkod>1; --> lefut
INSERT INTO találmány ( talnev )
values (SELECT talnev from találmány2 where tkod=1); --> szintaktikai hiba
Szóval itt a values a különbség.
Két mezővel nekem se megy, vagy szintaktikai hiba lesz, vagy ez a -3025.
Attila írta ezt az SQL92-problémát, de ennek a kapcsolását a 2000
beállításai között nem találom, talán ott lenne még érdemes próbálkozni.
Talán ezen a ponton érdemes a tanulóknak megmutatni, hogy elértük az Access
korlátait, és érdemes váltani.
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lista.sulinet.hu/pipermail/techinfo/attachments/20130603/cd1d2764/attachment.html>
További információk a(z) Techinfo levelezőlistáról