ugrás a tartalomhoz

mysql separátor, dokumentáció?

VRobi · 2008. Május. 30. (P), 17.50
Sziasztok!

Évek óta dolgozok mssql-ben, most azonban mysql-lel kell megoldanom a feladatot és nem boldogulok. Épp azon vagyok elakadva hogy több insert-et akarok végregajttatni egyszerre és nem hajlandó. Tettem közé ;-t is, de nem megy. Elárulja valaki a megoldást?
Biztos lesz más fennakadás is, hol találok használható, áttekinthető dokumentációt? Asse baj ha angol.

multkor pl. bit mezőket nem tudtam visszaolvasni, de gyorsan átállítottam tinyint-re.

köszi!
 
1

többsoros insert

vbence · 2008. Május. 30. (P), 18.05
INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
Bővebben a hivatalos doksiban:
http://dev.mysql.com/doc/refman/5.0/en/insert.html
2

többféle utasítás

VRobi · 2008. Május. 30. (P), 18.12
Köszi! Ez nagyon király!
És hogy lehet szeparálni? Ha pl törölni és insertálni is akarok egyszerre, vagy insertálni több táblába? Megoldható egy queryvel? Addig is olvasgatom a doksit.
3

több utasítás

vbence · 2008. Május. 30. (P), 18.27
Nem írtad, hogy milyen illesztőn keresztül éred el az adatbázist. Az MSSQL-t melytetted, gondolom ADODB-t használsz. Mint általában, itt is a pontosvessző az elválasztó karakter (a mysqldump nevű parancsori exportáló progi is ilyen szkripteket generál a db újrakonstruálására). Ha mégsem működik nálad, akkor a drivered egyszerűen nem támogatja, hogy több parancs legyen egy hívással kiadva, szóval külön, egymás után kell kiadni a queryket.

Egy 2004-es posztot találtam, ahol konkrétan erre panaszkodnak. Nem tudom mi változott, győződj meg róla, hogy mindenből a legfrissebbet hazsnálod.

Ha ritka esetről van szó, használhatod a parancsori változaot és egy textfájlt az sql-lekkel. Vagy tranzakciókat, ha fontos, hogy egyszerre hajtódjanak végre a queryk.
4

lock

winston · 2008. Május. 31. (Szo), 08.28
gondolom a művelet atomisága a probléma. zárold a táblát, végezd el a műveleteket és oldd fel
5

Transaction

janoszen · 2008. Május. 31. (Szo), 08.29
Vagy hajtsd végre tranzakcióban. :)