<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Soci blog</title>
	<atom:link href="http://www.soci.hu/blog/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://soci.hu/blog</link>
	<description>Az ember kivételével minden állat tudja, hogy a legfontosabb dolgunk az életben: élvezni azt.</description>
	<pubDate>Sat, 24 Dec 2011 13:09:19 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Boldog Karácsonyt</title>
		<link>http://soci.hu/blog/index.php/2011/12/24/boldog-karacsonyt-2/</link>
		<comments>http://soci.hu/blog/index.php/2011/12/24/boldog-karacsonyt-2/#comments</comments>
		<pubDate>Sat, 24 Dec 2011 13:09:19 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Szakmai élet]]></category>

		<category><![CDATA[Élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1196</guid>
		<description><![CDATA[Kedves Olvasóim,
  boldog Karácsonyt nektek.
Idén megszakadtam a munkától, így szinte alig írtam, pedig rengeteg új dolgot tanultam: Oracle, NHibernate, WCF mélységei, WPF perf tuning, stb. Jövőre remélem sikerül kidumpolni az agyamból ezeket, mert -főleg az NHibernate- nagyon jó dolog. EF elment szabira, mióta megismertem. :)
]]></description>
			<content:encoded><![CDATA[<p>Kedves Olvasóim,<br />
  boldog Karácsonyt nektek.<br />
Idén megszakadtam a munkától, így szinte alig írtam, pedig rengeteg új dolgot tanultam: Oracle, NHibernate, WCF mélységei, WPF perf tuning, stb. Jövőre remélem sikerül kidumpolni az agyamból ezeket, mert -főleg az NHibernate- nagyon jó dolog. EF elment szabira, mióta megismertem. :)</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/12/24/boldog-karacsonyt-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mi van a telenorral?</title>
		<link>http://soci.hu/blog/index.php/2011/07/05/mi-van-a-telenorral/</link>
		<comments>http://soci.hu/blog/index.php/2011/07/05/mi-van-a-telenorral/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 17:13:24 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1190</guid>
		<description><![CDATA[Csak nálam van mostanában, hogy nem lehet hívni, és én se tudok másokat hívni, de az sms és az adatkapcsolat megy?
A készülékem döglődik, vagy a telenor?
]]></description>
			<content:encoded><![CDATA[<p>Csak nálam van mostanában, hogy nem lehet hívni, és én se tudok másokat hívni, de az sms és az adatkapcsolat megy?</p>
<p>A készülékem döglődik, vagy a telenor?</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/07/05/mi-van-a-telenorral/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Alapban egy Dependency property nem kétirányú bindingos</title>
		<link>http://soci.hu/blog/index.php/2011/06/20/alapban-egy-dependency-property-nem-ketiranyu-bindingos/</link>
		<comments>http://soci.hu/blog/index.php/2011/06/20/alapban-egy-dependency-property-nem-ketiranyu-bindingos/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 13:18:05 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Szakmai élet]]></category>

		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1187</guid>
		<description><![CDATA[Meg kell adni a regisztrációjakor explicit, ha azt akarjuk, az legyen.


public static readonly DependencyProperty MyPropertyProperty =
    DependencyProperty.Register(
         &#34;MyProperty&#34;,
         typeof(int),
         typeof(Window1),
         [...]]]></description>
			<content:encoded><![CDATA[<p>Meg kell adni a regisztrációjakor <a href="http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/f060a256-18b9-4b4a-85af-114c86c76369/">explicit</a>, ha azt akarjuk, az legyen.</p>
<pre name="code" class="c#">

public static readonly DependencyProperty MyPropertyProperty =
    DependencyProperty.Register(
         &quot;MyProperty&quot;,
         typeof(int),
         typeof(Window1),
         new FrameworkPropertyMetadata(0, FrameworkPropertyMetadataOptions.BindsTwoWayByDefault));
</pre>
<p>1 órámat ismét elvittek. :)</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/06/20/alapban-egy-dependency-property-nem-ketiranyu-bindingos/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Anya, mit jelent az, hogy megdugni?</title>
		<link>http://soci.hu/blog/index.php/2011/06/20/anya-mit-jelent-az-hogy-megdugni/</link>
		<comments>http://soci.hu/blog/index.php/2011/06/20/anya-mit-jelent-az-hogy-megdugni/#comments</comments>
		<pubDate>Sun, 19 Jun 2011 23:06:09 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Személyes]]></category>

		<category><![CDATA[Élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1185</guid>
		<description><![CDATA[Ezt Bálint (7 éves) kérdezte (iskolában hallotta), a válaszként azt mondtuk, hogy piszkálni.
-Jó, akkor megdugom Pannit.
:)
]]></description>
			<content:encoded><![CDATA[<p>Ezt Bálint (7 éves) kérdezte (iskolában hallotta), a válaszként azt mondtuk, hogy piszkálni.<br />
-Jó, akkor megdugom Pannit.</p>
<p>:)</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/06/20/anya-mit-jelent-az-hogy-megdugni/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Gondolatok a queue alapú kliens-szerviz kommunikációhoz</title>
		<link>http://soci.hu/blog/index.php/2011/06/16/gondolatok-a-queue-alapu-kliens-szerviz-kommunikaciohoz/</link>
		<comments>http://soci.hu/blog/index.php/2011/06/16/gondolatok-a-queue-alapu-kliens-szerviz-kommunikaciohoz/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 18:41:33 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[.NET 4]]></category>

		<category><![CDATA[Adatbázisok]]></category>

		<category><![CDATA[Architektúra]]></category>

		<category><![CDATA[Design]]></category>

		<category><![CDATA[Szakmai élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1181</guid>
		<description><![CDATA[Az előző post kommentjei alapján (amit nagyon köszönök mindenkinek) nem kaptam sok bátorítást az aszinkron, queue alapú, kérés-választ különválasztó gazdag kliens - szerviz kommunikációhoz, úgy tűnik senki nem csinált ilyet, így nem akarok úttörő lenni a témában.
Ehhez még hozzájárul, hogy hétvégén méregettem az MSMQ teljesítményét. Azért ezt, mert a WCF is erre épít, és pl. [...]]]></description>
			<content:encoded><![CDATA[<p>Az előző post kommentjei alapján (amit nagyon köszönök mindenkinek) nem kaptam sok bátorítást az aszinkron, queue alapú, kérés-választ különválasztó gazdag kliens - szerviz kommunikációhoz, úgy tűnik senki nem csinált ilyet, így nem akarok úttörő lenni a témában.<br />
Ehhez még hozzájárul, hogy hétvégén méregettem az MSMQ teljesítményét. Azért ezt, mert a WCF is erre épít, és pl. az NServiceBus is.</p>
<p>A tesztkód 1.5kByteos üzeneteket rak át egyik sorból a másikba. Az ötlet <a href="http://ayende.com/blog/4251/what-am-i-missing-msmq-perf-issue">innen</a> jött, csak többszálasítottam.</p>
<p>A tesztkód:</p>
<pre name="code" class="c#">

using System;
using System.Diagnostics;
using System.Messaging;
using System.Threading;

namespace MsmqTran
{
    class Program
    {
        private const int NumberOfTests = 1000;
        private const int MaxDop = 10;
        private static readonly ManualResetEvent[] WaitForEmpty = new ManualResetEvent[MaxDop];

        static void Main()
        {
            var q1 = new MessageQueue(@&quot;.\private$\test_queue1&quot;);
            var q2 = new MessageQueue(@&quot;.\private$\test_queue2&quot;);

            Console.WriteLine(&quot;Filling source queue...&quot;);
            var b = new byte[1500];
            using (var msmqTx = new MessageQueueTransaction())
            {
                msmqTx.Begin();
                for (int i = 0; i &lt; NumberOfTests; i++)
                {
                    q1.Send(b, msmqTx);
                }
                msmqTx.Commit();
            }

            q2.Purge();
            Console.WriteLine(&quot;Starting to move data from source queue to destination queue&quot;);

            var sp = Stopwatch.StartNew();

            for (int i = 0; i &lt; MaxDop; i++)
            {
                WaitForEmpty[i] = new ManualResetEvent(false);
                ThreadPool.QueueUserWorkItem(o =&gt; ProcessMsg(q1, q2, (ManualResetEvent)o), WaitForEmpty[i]);
            }

            WaitHandle.WaitAll(WaitForEmpty);

            Console.WriteLine(&quot;Duration: {0}ms, throughput: {1:F0} messages/s&quot;, sp.ElapsedMilliseconds, 1000.0 * NumberOfTests / sp.ElapsedMilliseconds);
        }

        private static void ProcessMsg(MessageQueue q1, MessageQueue q2, ManualResetEvent w)
        {
            while (true)
            {
                using (var msmqTx = new MessageQueueTransaction())
                {
                    msmqTx.Begin();

                    Message message;
                    try
                    {
                        message = q1.Receive(TimeSpan.FromMilliseconds(0), msmqTx);
                    }
                    catch (MessageQueueException e)
                    {
                        Console.WriteLine(e);
                        w.Set();
                        break;
                    }

                    q2.Send(message, msmqTx);

                    msmqTx.Commit();
                }
            }
        }
    }
}
</pre>
<p>A gépemen 50 tran/sec-kel megy 1 szálon, és 200 fölé nem nagyon megy. Jó, ez laptop, de relációs adatbáziskezelővel (sql server és oracle is fut a gépen) több ezer tran/seccel mennek a dolgok. Szóval ez elég gázosan lassú. Emellett csúnya leállásokról is írnak a blogokban, amikor beáll az msmq.</p>
<p>Marad a aszinkronított WCF egyelőre, csak a szerverről visszafelé hívásokat tervezem queue alapon megcsinálni, WCF msmq bindinggal. Így tudom értesíteni az appokat polling nélkül. Erre 3 okom van most:<br />
1. Az <a href="http://martinfowler.com/eaaCatalog/pessimisticOfflineLock.html">offline (disconnected) pessimistic lock</a> feloldódott, lehet szerkeszteni valamit.<br />
2. Frissíteni kell a kliens cache-ben valamit.<br />
3. Email jellegű üzenetküldés az appok között.</p>
<p>Köszönöm még egyszer az építő javaslatokat.</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/06/16/gondolatok-a-queue-alapu-kliens-szerviz-kommunikaciohoz/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Message alapú LOB app tervezés</title>
		<link>http://soci.hu/blog/index.php/2011/06/11/message-alapu-lob-app-tervezes/</link>
		<comments>http://soci.hu/blog/index.php/2011/06/11/message-alapu-lob-app-tervezes/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 07:53:35 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Architektúra]]></category>

		<category><![CDATA[Design]]></category>

		<category><![CDATA[Szakmai élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1177</guid>
		<description><![CDATA[Próbálom megtörni magamban a megszokott gondolkodási sémákat. Tervezek egy nagy, többrétegű LOB alkalmazást. A szervizrétegnek elsődlegesen a WPF rich klienst kell kiszolgálni, de jó lenne, ha mobil kliensek is tudnák ezt fogyasztani.
Ha a szerviz interfész finom felbontású, sok kicsi metódussal, akkor a kommunikáció sok időt rabol el, lassú lesz az app (chatty interfész).
Ha durva felbontású [...]]]></description>
			<content:encoded><![CDATA[<p>Próbálom megtörni magamban a megszokott gondolkodási sémákat. Tervezek egy nagy, többrétegű LOB alkalmazást. A szervizrétegnek elsődlegesen a WPF rich klienst kell kiszolgálni, de jó lenne, ha mobil kliensek is tudnák ezt fogyasztani.<br />
Ha a szerviz interfész finom felbontású, sok kicsi metódussal, akkor a kommunikáció sok időt rabol el, lassú lesz az app (chatty interfész).<br />
Ha durva felbontású (chunky), akkor megvan a veszélye, hogy a fogyasztó WPF app formjaihoz lesz illesztve, célirányosan, így akkor meg mobil kliensek nem fogják tudni hatékonyan fogyasztani.<br />
Egy érdekes alternatívát láttam a probléma feloldására <a href="http://msdn.microsoft.com/en-us/magazine/ff796225.aspx">itt</a> és <a href="http://msdn.microsoft.com/en-us/magazine/ff872394.aspx">itt</a>.<br />
Ebben az összes kliens-szerviz kommunikáció message alapú, teljesen aszinkron. Egy kitöltött form adatait elküldik egy queueba, a szerver pedig egy másik üzenettel válaszol erre. Azaz a kliens alapjaiban aszinkron, és a válaszok események formájában jönnek vissza.<br />
A message alapú kommunikáció nagy előnye, hogy az üzeneteket össze lehet nyalábolni, és egyben elküldeni. Így a szerviz lehet finom felbontású, de a kommunikáció mégis gyors, nem sok kis darabból áll. Érthetően ezt szinkron, rpc jellegű szerviz hívásokkal nem lehet megcsinálni.<br />
Ez a fajta queued, service bus alapú gondolkodásmód szokatlan nekem, de nagyon szimpatikus. Van valakinek tapasztalata ilyen rendszer tervezésével? Bármilyen url, pointer, könyv, személyes tapasztalat érdekelne. Úgy érzem nagy dolgokat lehet ezzel összerakni, csak meg kell alaposan értenem.</p>
<p>Még egy gondolat. WCF proxyk használatával az alapban message alapú, asszinkron kérés-válaszokból összeraknak egy RPC jellegű kommunikációt, úgy, hogy a kliens vár a szerver válaszára. Aztán a kliens kedvéért, hogy ne blokkoljuk le a GUIt csinálunk háttérszálat, ahol bevárjuk a szerviz válaszra váró szálat. :)<br />
Miért nem használunk eleve aszinkron üzenetváltásokat, és akkor sokkal egyszerűbb lesz a kép. A kliens bepostázza a kérést a buszra, és megy tovább. Amikor a válasz megjön, akkor meg erről eseményben értesül. Nyilván itt is vannak háttérszálak, hisz ki fogadná akkor a szervertől jövő választ, és ki hívná vissza a kliens eseményeken keresztül, de valahogy akkor is tisztábbnak tűnik a kép, mint az erőltetett RCP-jellegű módszernél. Nem?</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/06/11/message-alapu-lob-app-tervezes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Kindle DX - szeretem</title>
		<link>http://soci.hu/blog/index.php/2011/05/22/kindle-szeretem/</link>
		<comments>http://soci.hu/blog/index.php/2011/05/22/kindle-szeretem/#comments</comments>
		<pubDate>Sun, 22 May 2011 16:25:43 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Szakmai élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1173</guid>
		<description><![CDATA[Pár hónapja vettem egy Kindle DX-et. Nagy érvágás volt, tokkal, vámmal 570$ volt, ami fájt. De nagyon nem bántam meg, és ezt nem a kognitív disszonancia mondatja velem. :)
Amióta megvan, sokkal többet olvasok. Az elmúlt két hónapban legalább 20 könyvet és vagy 30 kisebb cikket tanulmányoztam benne. Nem mindet olvastam ki A-tól Z-ig, de tudjuk, [...]]]></description>
			<content:encoded><![CDATA[<p>Pár hónapja vettem egy Kindle DX-et. Nagy érvágás volt, tokkal, vámmal 570$ volt, ami fájt. De nagyon nem bántam meg, és ezt nem a kognitív disszonancia mondatja velem. :)<br />
Amióta megvan, sokkal többet olvasok. Az elmúlt két hónapban legalább 20 könyvet és vagy 30 kisebb cikket tanulmányoztam benne. Nem mindet olvastam ki A-tól Z-ig, de tudjuk, hogy a szakmai könyveket nem is mindig így szoktuk (max., ha új területről van szó).<br />
Ha van pl. egy codeproject, msdn, stb. cikk, vagy egy whitepaper, bármi, ami pár oldalnál több, már nyomom is rá calibre-vel, aztán olvasom az ágyban (kocsiban váráskor, játszótéren, dokinál, stb.).<br />
És még nem használom ki csak tört részét annak, amit lehetne vele olvasni (hírek, blogok, stb.). Az esti mese is erről megy, a mekről. :)</p>
<p>Szóval imádom, aki szeret olvasni, szeretni fogja. A technikai speciókról nem írok, ez olyan, amit látni kell, aztán vagy utálod, vagy szereted.</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/05/22/kindle-szeretem/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Alternatíva a gonosz EAV-val szemben?</title>
		<link>http://soci.hu/blog/index.php/2011/05/19/alternativa-a-gonosz-eav-val-szemben/</link>
		<comments>http://soci.hu/blog/index.php/2011/05/19/alternativa-a-gonosz-eav-val-szemben/#comments</comments>
		<pubDate>Thu, 19 May 2011 21:24:45 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Adatbázisok]]></category>

		<category><![CDATA[Architektúra]]></category>

		<category><![CDATA[Design]]></category>

		<category><![CDATA[Szakmai élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1170</guid>
		<description><![CDATA[Az üzleti igény egy olyan adatbázis struktúra létrehozása, amelyben az előre definiált táblák adatai mellé a kusztomerek saját maguk is fel tudnak venni plusz adatokat, anélkül, hogy ehhez az adatbázistáblákat és az alkalmazást módosítani kellene. Sajnos nem csak letárolják ezeket, de még keresni is akarnak egyesekre. Azaz egyfajta open schemat kellene megvalósítani. Erre jó lehet [...]]]></description>
			<content:encoded><![CDATA[<p>Az üzleti igény egy olyan adatbázis struktúra létrehozása, amelyben az előre definiált táblák adatai mellé a kusztomerek saját maguk is fel tudnak venni plusz adatokat, anélkül, hogy ehhez az adatbázistáblákat és az alkalmazást módosítani kellene. Sajnos nem csak letárolják ezeket, de még keresni is akarnak egyesekre. Azaz egyfajta open schemat kellene megvalósítani. Erre jó lehet az <a href="http://en.wikipedia.org/wiki/Entity-attribute-value_model">Entity-Attribute-Value</a> megoldás, de úton-útfélen gonosznak van kinevezve. Értem én, hogy szar belőle lekérdezni, marha nagy lehet, ha egyszerűen csinálják meg nem típusos (én minden típushoz akarok egy oszlopot létrehozni), de milyen használható alternatíva van vele szemben?<br />
Olvastam a serialized blobot, pl. egy xml oszlopba rakjuk a plusz dolgokat. Elvileg lehet xqueryzni, meg indexelni, de érzésre ez se egyszerű, se gyors nem lesz.<br />
A sparse colum esetén séma módosítással jár az új adat definíciója. Ez egyrészt nem tetszik secu okokból (alter table kell hozzá), másrészt elég gáz szervizelni az alkalmazást, ha 50 ügyfél saját oszlopokkal bővítheti a tábláinkat.<br />
Szóval, mi a jó a feladatra? Nekem még mindig az EAV tűnik a legkezelhetőbbnek.</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/05/19/alternativa-a-gonosz-eav-val-szemben/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Kisfiam tanul</title>
		<link>http://soci.hu/blog/index.php/2011/04/27/kisfiam-tanul/</link>
		<comments>http://soci.hu/blog/index.php/2011/04/27/kisfiam-tanul/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 17:25:37 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Élet]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1168</guid>
		<description><![CDATA[Apa, azt a cifra ruhás nénit miért az önkormányzat tartja el? :)
(Meséltem feleségemnek mit hallottam az orvosi rendelő várójában, Bálint is hallotta, és ügyesen kiszedte a lényeget. :)
Időben el kell kezdeni az ifjúság nevelését, kurva világ lesz itt, ha nem lesz öntudatosabb a következő generáció.
]]></description>
			<content:encoded><![CDATA[<p>Apa, azt a cifra ruhás nénit miért az önkormányzat tartja el? :)</p>
<p>(Meséltem feleségemnek mit hallottam az orvosi rendelő várójában, Bálint is hallotta, és ügyesen kiszedte a lényeget. :)</p>
<p>Időben el kell kezdeni az ifjúság nevelését, kurva világ lesz itt, ha nem lesz öntudatosabb a következő generáció.</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/04/27/kisfiam-tanul/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SQL Server - Oracle könyv</title>
		<link>http://soci.hu/blog/index.php/2011/04/27/sql-server-oracle-konyv/</link>
		<comments>http://soci.hu/blog/index.php/2011/04/27/sql-server-oracle-konyv/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 17:18:16 +0000</pubDate>
		<dc:creator>Soczó Zsolt</dc:creator>
		
		<category><![CDATA[Adatbázisok]]></category>

		<category><![CDATA[Felhívás]]></category>

		<guid isPermaLink="false">http://soci.hu/blog/?p=1166</guid>
		<description><![CDATA[Meglegyintett a sötét oldal, ezért kénytelen leszek kicsit érteni az Oracle-höz is. :)
Tud valaki jó könyvet, ami valamiféle SQL Server - Oracle turbó átképzésről szól? Nem akarom a create table-nél kezdeni, ikább valami diff könyv kellene.
Persze, lehet ez nem ilyen egyszerű, el kell kezdeni valami Essential Oracle könyvvel.
]]></description>
			<content:encoded><![CDATA[<p>Meglegyintett a sötét oldal, ezért kénytelen leszek kicsit érteni az Oracle-höz is. :)</p>
<p>Tud valaki jó könyvet, ami valamiféle SQL Server - Oracle turbó átképzésről szól? Nem akarom a create table-nél kezdeni, ikább valami diff könyv kellene.<br />
Persze, lehet ez nem ilyen egyszerű, el kell kezdeni valami Essential Oracle könyvvel.</p>
]]></content:encoded>
			<wfw:commentRss>http://soci.hu/blog/index.php/2011/04/27/sql-server-oracle-konyv/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

