[Javalist] 'Pattern'
   
     istvan.ketler at lhsystems.com     
     istvan.ketler at lhsystems.com
       
    2012. Jan.  3., K, 17:13:26 CET
    
    
  
Amikor még használtam egyszer régen JDBCt, soha nem írtam négy-öt változónál többet egy SQL utasításba sem, inkább használtam néhány metódust a feloldásokra. Szóval 13 változó egy SQL utasításban nekem kicsit balos túlzásnak tetszik...
 
De ha mégis ilyet akarsz, akkor vagy a mások által javasolt tokenizálás lehet megoldás, vagy maradsz a kérdőjelnél, és szigorú szintaxis szerint írod az SQL utasításaidat. De ha viszonylag jól tipizálható, akkor írhatsz metódusokat is, amelyek visszaadják az összerakott stringet; láttam már ilyet, és nem volt zavaró, könnyen karbantartható volt a kód (querybuilder metódus).
 
Üdvözlettel,
 
Iván
István Ketler
Team Leader 
Lufthansa Systems Hungaria Kft. 
Development Center Pest 
- Team "Schedule & Revenue Management"
- Team "Business Intelligence & Database Solutions"
Neumann János u. 1/e
1117 Budapest
Hungary 
Tel: +36 1 887-2815 
Fax: +36 1 887-2977
Mobile: +36 30 600-4936 
Room: Infopark E, Room LH1-31 
e-mail: istvan.ketler at lhsystems.com 
Internet: www.LHsystems.hu <http://www.lhsystems.hu/> 
 
From: javalist-bounces at lists.javaforum.hu [mailto:javalist-bounces at lists.javaforum.hu] On Behalf Of Keresztes Jozsef
Sent: Tuesday, January 03, 2012 5:03 PM
To: Java lista
Subject: Re: [Javalist] 'Pattern'
 
Mert a "?" nagyon béna megoldás a JDBC-ben mivel szerepelhet egy sql stringben 20 kérdőjel,
és azt mondod hogy a 13. legyen behelyettesítve XY-nal.
Képzeld hogy ha átalakítod az sql-edet és bejön közé mégegy "?" rossz az egész J
Én máig csodálkozok hogy maradt ez az ősrégi ?-es megoldás.  
 
From: istvan.ketler at lhsystems.com [mailto:istvan.ketler at lhsystems.com] 
Sent: Tuesday, January 03, 2012 4:56 PM
To: javalist at lists.javaforum.hu
Subject: Re: [Javalist] 'Pattern'
 
Az első és utolsó emailed között eltelt 19 perc (eddig), ennél hamarabb tudtál volna írni egy static metódust amelyik elvégzi neked ezt az egyszerű mutatványt. Pattern.compile(..).... helyett aztán használhatnád ezt a metódust nagyjából ugyanúgy.
 
Amúgy miért nem jó a ?, miért kell helyette :?
István Ketler
Team Leader 
Lufthansa Systems Hungaria Kft. 
Development Center Pest 
- Team "Schedule & Revenue Management"
- Team "Business Intelligence & Database Solutions"
Neumann János u. 1/e
1117 Budapest
Hungary 
Tel: +36 1 887-2815 
Fax: +36 1 887-2977
Mobile: +36 30 600-4936 
Room: Infopark E, Room LH1-31 
e-mail: istvan.ketler at lhsystems.com 
Internet: www.LHsystems.hu <http://www.lhsystems.hu/> 
 
 
Sitz der Gesellschaft / Corporate Headquarters: Lufthansa Systems Hungaria Kft, Budapest, Fövarosi Birosag 01-09-463417
Geschaeftsfuehrung / Management Board: Monika Houck
 
From: javalist-bounces at lists.javaforum.hu [mailto:javalist-bounces at lists.javaforum.hu] On Behalf Of Keresztes Jozsef
Sent: Tuesday, January 03, 2012 4:40 PM
To: Java lista
Subject: Re: [Javalist] 'Pattern'
 
JDBC-ben csak "?"-lel lehet a változókat jelölni, ehelyett lenne a ":"-os váltózó használat:
 
UPDATE xxx SET datum = :date WHERE id = :id
 
ez így szép és jó, meg tudom találni a ":"-os változókat, helyettesítem "?"-re, megkapja 
a JDBC az így átalakított stringet stb stb, minden jó, csak az a baj amikor a ":" nem jelent változót,
mert egy stringen belül van. Ekkor nem kell "?"-re alakítani...   
 
From: Peter Verhas [mailto:peter at verhas.com] 
Sent: Tuesday, January 03, 2012 4:31 PM
To: Java lista
Subject: Re: [Javalist] 'Pattern'
 
Ez csak azokat veszi ki, ahol az aposztróf közvetlenül a : előtt vagy mögötte van. A ' barmi : barmi ' esetén nem.
 
A look ahead és look back patternekkel az a ban, hogy lehet előtte és utána is ', csak a paritást is számolnia kellene. Ezért én sem küzdenék sokáig pattern-nel, inkább szétvágnám a stringet, utána keresnék, és aztán összefűzném.
 
Amúgy mire kell?
 
--
Verhás Péter
ügyvezető
Verhás & Verhás Szoftver Manufaktúra Kft.
peter at verhas.com
+36(30)9306805
skype: verhas
 
 
 
On 2012.01.03., at 16:24, Istvan Bencze wrote:
 
Szia!
 
 
Ezt a mintát próbáltad már?
[^']:[^']
 
Üdv,
Bencze István
 
2012/1/3 OSTYÁNI Péter <panteros at dev-labs.com>
Szia!
Szerintem akkor neked a lookahead/lookbehind patternek kellenek:
http://www.regular-expressions.info/lookaround.html
 
üdv: ostya
 
On Tue, 3 Jan 2012 16:10:27 +0100, Keresztes Jozsef wrote:
	Sziasztok !
	
	Egy sql stringen belül keresek egy másik stringet, a Matcher és Pattern osztályok segítségével,
	egyszerüsítsük a dolgot, csak a ":" karaktert keressük: 
	
	Matcher matcher = Pattern.compile(":").matcher(sqlString);
	
	A probléma azzal van hogy csak azokat a ":" karaktereket szeretném megkeresni az sql stringben ami nem aposztrófok között van például:
	
	SELECT 'ez nem'':kell' FROM valami WHERE id = :id and ':' = 'x'
	
	Vagyis itt a 2. kettőspont lenne csak találat a többi nem.
	Valaki foglalkozott már ilyen keresési minta megírásával ? 
	Én egyelőre nem tudom elképzelni... 
	
	Joe
	 
	
	_______________________________________________
	Javalist mailing list
	Javalist at lists.javaforum.hu
	http://lists.javaforum.hu/mailman/listinfo/javalist
 
_______________________________________________
Javalist mailing list
Javalist at lists.javaforum.hu
http://lists.javaforum.hu/mailman/listinfo/javalist
 
_______________________________________________
Javalist mailing list
Javalist at lists.javaforum.hu
http://lists.javaforum.hu/mailman/listinfo/javalist
 
 
Sitz der Gesellschaft / Corporate Headquarters: Lufthansa Systems Hungaria Kft, Budapest, Fövarosi Birosag 01-09-463417
Geschaeftsfuehrung / Management Board: Monika Houck
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20120103/e2f87036/attachment.html>
    
    
További információk a(z) Javalist levelezőlistáról