<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>db2 &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/db2/</link>
	<description>Feed of posts on WordPress.com tagged "db2"</description>
	<pubDate>Fri, 18 Jul 2008 23:33:18 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Inner Ear!!]]></title>
<link>http://gogonutz.wordpress.com/?p=45</link>
<pubDate>Fri, 18 Jul 2008 16:47:51 +0000</pubDate>
<dc:creator>gogonutz</dc:creator>
<guid>http://gogonutz.wordpress.com/?p=45</guid>
<description><![CDATA[I just wanted to post a shameless plug for my own website, Inner Ear. Inner Ear is a music website t]]></description>
<content:encoded><![CDATA[<p>I just wanted to post a shameless plug for my own website, <a href="http://www.freewebs.com/innerearmedia" target="_blank">Inner Ear</a>. Inner Ear is a music website that used to focus solely on promotion, but because I do pretty much everything myself, it was kinda hard to keep on doing a good job on that. So the focus has shifted more towards reviews &#38; interviews. Things are going slightly better again lately, after a few months where things were quiet (well, i had to graduate too).</p>
<p>You can also find us on <a href="http://www.myspace.com/innerearmedia" target="_blank">Myspace</a> &#38; <a href="http://www.last.fm/user/innerearmedia" target="_blank">Last.FM</a></p>
<p>As for interviews and reviews that we feature so far:</p>
<p><span style="text-decoration:underline;"><strong>Interviews:</strong></span></p>
<p><em>Jim Gaven</em><br />
<em>The Craze</em><br />
<em>Honor Society</em><br />
<em>Republic of Letters</em><br />
<span style="color:#a2ce0a;">Lazyeye</span><br />
Kendall Payne<br />
Rosemary's Sons<br />
AM<br />
Days Difference<br />
Elseworth<br />
Lisa Redford<br />
Carbon Leaf<br />
Kill The Alarm<br />
Chad Perrone<br />
Fenix Tx<br />
Patrick Park<br />
Fiction Plane<br />
Fedchenka<br />
Syd<br />
Mark O'Shea<br />
Joe Hedges<br />
Rooney<br />
Dakota Fate<br />
JJ Appleton<br />
Francis Martin<br />
the Tom Glenne 5.5<br />
Ernie Halter<br />
SLAB<br />
Cordless<br />
Alphaspin<br />
Mike Finley</p>
<p><em>apart from the 4 reviews that are expected soon, we are also negotiating interviews with several other artists and bands, but none of these have yet been confirmed. I hope to get answers from these people soon and I will let you know!</em></p>
<p><span style="text-decoration:underline;"><strong>Reviews:</strong></span></p>
<p><em>(the italic reviews listed are to be expected (relatively) soon)</em></p>
<p><strong>1 Giant Leap</strong> - 1 Giant Leap<br />
<strong>2nd Place Driver</strong> - 2nd Place Driver [EP]<br />
<strong>2nd Place Driver</strong> - Leave [EP]<br />
<strong>2nd Place Driver</strong> - ...1<br />
<strong>2nd Place Driver</strong> - The Hungry Ones<br />
<strong><span style="color:#a2ce0a;">2nd Place Driver</span></strong> - Full Speed, Bare Naked<br />
<strong>3 Doors Down</strong> - The Better Life<br />
<strong>3 Doors Down</strong> - Away From The Sun<br />
<strong>3 Doors Down</strong> - Another 700 Miles [EP]<br />
<strong>3 Doors Down</strong> - Seventeen Days<br />
<strong><span style="color:#a2ce0a;">3 Doors Down</span></strong> - 3 Doors Down<br />
<strong>12 Stones</strong> - 12 Stones<br />
<strong>12 Stones</strong> - Potter's Field<br />
<strong>12 Stones</strong> - Anthem For The Underdog<br />
<strong>30 Seconds To Mars</strong> - 30 Seconds To Mars<br />
<strong>30 Seconds To Mars</strong> - A Beautiful Lie<br />
<strong>39 Reasons</strong> - 39 Reasons [EP]<br />
<strong>a balladeer</strong> - Rumor Had It [EP]<br />
<strong>a balladeer</strong> - Panama<br />
<strong>Aaron Lines</strong> - Living Out Loud<br />
<strong><span style="color:#a2ce0a;">Aaron Lines</span></strong> - Moments That Matter<br />
<strong>All She Wrote</strong> - Coshade<br />
<strong>Alli Rogers</strong> - Always Eden<br />
<strong>Alli Rogers</strong> - One [EP]<br />
<strong>Alli Rogers</strong> - The Day Of Small Things<br />
<strong><span style="color:#a2ce0a;">Alli Rogers</span></strong> - At Sea<br />
<strong><span style="color:#a2ce0a;">Alli Rogers</span></strong> - You &#38; The Evening Sky<br />
<strong>Alphaspin</strong> - Through The Solar Waves<br />
<strong>American Hi-Fi</strong> - American Hi-Fi<br />
<strong>American Hi-Fi</strong> - The Art of Losing<br />
<strong>American Hi-Fi</strong> - Hearts On Parade<br />
<strong>Augustana</strong> - Midwest Skies &#38; Sleepless Mondays<br />
<strong>Augustana</strong> - Mayfield [EP]<br />
<strong>Augustana</strong> - You'll Disappear [EP]<br />
<strong>Augustana</strong> - All The Stars &#38; Boulevards<br />
<strong>Augustana</strong> - Can't Love, Can't Hurt [EP]<br />
<strong><span style="color:#a2ce0a;">Augustana</span></strong> - Can't Love, Can't Hurt<br />
<strong><span style="color:#a2ce0a;">Billy Boy On Poison</span></strong> - Sweet Mess [EP]<br />
<strong>Blyss</strong> - Diff's Lucky Day<br />
<strong>Chad Perrone</strong> - Used To Dream<br />
<strong><span style="color:#a2ce0a;">Chad Perrone</span></strong> - Wake<br />
<strong>Clockwork Noise</strong> - Myspace Tunes<br />
<strong>Cordless</strong> - Something Real [EP]<br />
<em><strong>Cordless</strong> - Bright Lights</em><br />
<strong>The Craze</strong> - Introducing.. The Craze<br />
<strong><span style="color:#a2ce0a;">The Craze</span></strong> - Get Up! [EP]<br />
<strong><span style="color:#a2ce0a;">Dan Wilson</span></strong> - Free Life<br />
<strong>David Beebee</strong> - dB²<br />
<strong><span style="color:#a2ce0a;">David Beebee</span></strong> - David Beebee [EP]<br />
<strong>The Fray</strong> - Reason [EP]<br />
<strong>The Fray</strong> - How To Save A Life<br />
<strong>The Fray</strong> - Live @ Electric Factory<br />
<strong>Honestly</strong> - Have A Nice Life<br />
<strong>Honestly</strong> - Ghosts Of A Brilliant Past [EP]<br />
<strong><span style="color:#a2ce0a;">HoneyHoney</span></strong> - Loose Boots [EP]<br />
<strong>Honor Society</strong> - The Green Light [EP]<br />
<strong><span style="color:#a2ce0a;">Honor Society</span></strong> - A Tale Of Risky Business [EP]<br />
<strong>Hotspur</strong> - Myspace Tunes<br />
<em><strong><span style="color:#a2ce0a;">Hotspur</span></strong> - Beta</em><br />
<strong><span style="color:#a2ce0a;">Hungry Hungry Hypocrites</span></strong> - Rock, Roll, Fire &#38; Magic<br />
<strong>JJ Appleton</strong> - 500 Moments<br />
<strong>JJ Appleton</strong> - Uphill To Purgatory<br />
<strong>JJ Appleton</strong> - Someone Else's Problem<br />
<em><strong>JJ Appleton</strong> - Black &#38; White Matinee [EP]</em><br />
<strong>John Taglieri</strong> - Leap Of Faith<br />
<em><strong>John Taglieri</strong> - Half &#38; Half</em><br />
<strong>John Taglieri</strong> - NOW!<br />
<strong>John Taglieri</strong> - Wide Awake &#38; Dreaming<br />
<strong>Keaton Simons</strong> - Currently [EP]<br />
<strong>Keaton Simons</strong> - Exes &#38; Whys<br />
<strong>Keaton Simons</strong> - Blink [EP]<br />
<strong><span style="color:#a2ce0a;">Keaton Simons</span></strong> - Can You Hear Me<br />
<em><strong>Keith LuBrant</strong> - Searching For Signal</em><br />
<strong><span style="color:#a2ce0a;">Lazyeye</span></strong> - Lights In The Attic<br />
<strong>Lifehouse</strong> - No Name Face<br />
<strong>Lifehouse</strong> - Stanley Climbfall<br />
<strong>Lifehouse</strong> - Lifehouse<br />
<strong>Lifehouse</strong> - Who We Are<br />
<span style="color:#a2ce0a;"><strong>TMATSMM</strong> &#38; <strong>God Is An Astronaut</strong></span> - Split 12" [Vinyl]<br />
<em><strong>Matt Swachman</strong> - Uncharted Territory</em><br />
<strong>Mike Finley</strong> - Mike Finley [EP]<br />
<em><strong>Mike Finley</strong> - The Way We Are [EP]</em><br />
<strong>Missing Leg Compartment</strong> - Myspace Tunes<br />
<strong><span style="color:#a2ce0a;">Nephu Huzzband</span></strong> - Papers [EP]<br />
<strong>Patrick Park</strong> - Loneliness Knows My Name<br />
<strong>Patrick Park</strong> - Mondays In Spaceland<br />
<strong>Patrick Park</strong> - Stickbirdsongs [EP]<br />
<strong>Patrick Park</strong> - Everyone's In Everyone<br />
<strong>Patrick Ryan Clark</strong> - Translation<br />
<strong>Radiohead</strong> - Pablo Honey<br />
<strong>Radiohead</strong> - The Bends<br />
<strong>Radiohead</strong> - OK Computer<br />
<strong>Radiohead</strong> - Kid A<br />
<strong>Radiohead</strong> - In Rainbows<br />
<strong>Republic of Letters</strong> - Spirit Or A Ghost [EP]<br />
<strong><span style="color:#a2ce0a;">Rocco DeLuca &#38; The Burden</span></strong> - I Trust You To Kill Me<br />
<strong>Rosemary's Sons</strong> - Misery Loves Company<br />
<strong>Rosemary's Sons</strong> - All In Hand<br />
<strong>Rosemary's Sons</strong> - St. Eleanor's Park<br />
<em><strong>Rosemary's Sons</strong> - "The Others" [working title]</em><br />
<em><strong>Seven Mary Three</strong> - Day &#38; Nightdriving</em><br />
<strong><span style="color:#a2ce0a;">SLAB</span></strong> - Betray The Past.. Infect The Future<br />
<em><strong>Snow Patrol</strong> - Songs For Polarbears</em><br />
<em><strong>Snow Patrol</strong> - When It's All Over We Still Have To Clear Up</em><br />
<em><strong>Snow Patrol</strong> - Final Straw</em><br />
<em><strong>Snow Patrol</strong> - Live &#38; Acoustic @ Park Ave</em><br />
<em><strong>Snow Patrol</strong> - Eyes Open</em><br />
<strong>Souls A Fuse</strong> - Under The Spotlight [EP]<br />
<em><strong>Three Days Grace</strong> - Three Days Grace</em><br />
<strong>Three Days Grace</strong> - One-X<br />
<em><strong>the Tom Glenne 5.5</strong> - .married</em><br />
<em><strong>the Tom Glenne 5.5</strong> - White Soul</em><br />
<strong>the Tom Glenne 5.5</strong> - Free Rock</p>
<p>reviews for (among others): <strong>Untyde, Making April, Dakona, Fiction Plane, Silkstone, Rooney, Erny Green, Solo, Radford, Steve Bertrand, Emerson Hart, Avion, Voicst, Racoon, Krezip, Days Difference, My Favorite Highway, Jim Gaven, Kill The Alarm, Leaf, Alamo Race Track, Little things that kill, Big City Rock, We The Living, T.E.A. &#38; Marwood</strong> are expected to follow.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Classe exemplo de conexão JAVA + DB2]]></title>
<link>http://jmmwrite.wordpress.com/?p=147</link>
<pubDate>Thu, 17 Jul 2008 03:14:19 +0000</pubDate>
<dc:creator>julianommartins</dc:creator>
<guid>http://jmmwrite.wordpress.com/?p=147</guid>
<description><![CDATA[Criei uma classe em java com um exemplo de conexão com o banco de dados DB2.
A classe executa ainda]]></description>
<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-60" src="http://jmmwrite.wordpress.com/files/2007/12/java.jpg?w=116" alt="" width="116" height="116" />Criei uma classe em java com um exemplo de conexão com o banco de dados DB2.</p>
<p>A classe executa ainda uma query em uma tabela X e um insert.</p>
<p>Baixe clicando aqui -&#62; <a href="http://jmmwrite.wordpress.com/files/2008/07/conecta.odt">conecta</a>.</p>
<p>Renomeie o arquivo de odt para .java. O wordpress não permite efetuar upload de .java então tive que renomear.</p>
<p><strong>Editado</strong>: Segue <a href="http://dcon.com.br/jd.comment/juliano/FEMA.zip" target="_blank">aqui </a>a segunda parte do exemplo. Um menu com várias opções (incluir, excluir, Listar, etc) e classes de conexão e manipulação de clientes em banco.</p>
<p>Enjoy.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[DB2]]></title>
<link>http://demisdefiore.wordpress.com/?p=148</link>
<pubDate>Wed, 16 Jul 2008 20:43:19 +0000</pubDate>
<dc:creator>Demis De Fiore</dc:creator>
<guid>http://demisdefiore.wordpress.com/?p=148</guid>
<description><![CDATA[O DB2 é o Sistema Gerenciador de Banco de Dados Relacionais (SGDBR) produzido pela IBM. Existem dif]]></description>
<content:encoded><![CDATA[<p>O <strong>DB2</strong> é o Sistema Gerenciador de Banco de Dados Relacionais (SGDBR) produzido pela IBM. Existem diferentes versões do DB2 que rodam desde num simples PDA&#124;computador de mão, até em potentes mainframes e funcionam em servidores baseados em sistemas Unix, Windows, ou Linux.</p>
<p><strong>História:</strong></p>
<p>O nome DB2 foi dado para o Sistema de Gerenciamento de Banco de Dados que a IBM lançou em 1983 baseado em SQL/DS para seu mainframe. A principio o produto foi chamado System R que fora iniciado em 1978. O projeto DB2 começou no inicio dos anos 70 quando Edgar Frank Codd, trabalhando para IBM descreveu a teoria dos Banco de dados Relacionais e publicou sua teoria em Junho de 1970. Para aplicar o modelo, Codd criou uma linguagem de banco de dados relacionais que a chamou de Alpha. Entretanto, a IBM não acreditava no potencial das suas idéias, deixando-o fora da supervisão do grupo de programadores, que violaram diversas idéias fundamentais do modelo relacional de Codd. O resultado foi a linguagem SEQUEL, que depois foi mudado para seu acrônimo SQL porque SEQUEL já era uma marca registrada.</p>
<p>Por muitos anos, DB2 foi feito exclusivamente para rodar nos mainframes da IBM. Posteriormente a IBM introduziu o DB2 para outras plataformas de servidores, incluindo o Unix e o Windows, para então colocar no Linux e PDAs. Esse processo foi feito na década 90. A inspiração para os detalhes de implementação do DB2 vieram da linguagem DL/1 da IBM e do Sistema de Gerenciamento de Informações também dessa empresa. As novas versões já são avaliadas para OS/2 e é chamada DB2/2.</p>
<p>Na metade do ano de 2006, a IBM anunciou o “Viper”, o codinome do DB2 9 para computação distribuídas e para DB2 9 no z/OS. A empresa diz que o novo DB2 será o primeiro banco de dados relacional que armazena o XML nativo. Outros recursos incluem o desenvolvimento baseado em OLTP para computação distribuídas, o desenvolvimento baseado em Business intelligence e data warehousing para z\OS, mais recursos de auto configuração e auto gerenciamento, adição de recursos para a plataforma 64-bits (especialmente para z/OS), melhoria na performance do armazenamento estruturado para z/OS e a continuação da padronização do vocabulário da linguagem SQL entre z/OS e outras computação distribuídas.</p>
<p><strong>Edições:</strong></p>
<p>DB2 é vendida em diversos tipos de “edições” ou licenças. Pela escolha de uma versão com menos recursos, a IBM evita que os consumidores paguem por coisas que não iriam usar. Alguns exemplos de edição são a Express, Workgroup e a Edição Enterprise. A edição mais sofisticada para Linux/UNIX/Windows é o DB2 Data Warehouse Entreprise Edition, ou DB2 DWE.</p>
<p>DB2 para Z/OS é vendido em sua próprio licença. Começando com a versão 8, a IBM vendeu o DB2 para z/OS e outros sistemas com característica muito próximas.DB2 para esse sistema tem algumas característica exclusivas: Segurança Multi-Level, tabelas de tamanhos extremamente grandes e compressão a nível de hardware. DB2 para z/OS foi sempre conhecido pela sua liderança de performance OLTP e é usado para suportar missões críticas nas operações de negócios, mas agora a versão z/OS está começando a adquirir característica Business intelligence.</p>
<p>Em 30 de Janeiro de 2006, a IBM lançou uma versão do DB2 chamada DB2 9 Express-C. Essa foi a resposta para os recentes pronunciamentos de versões gratuitas do Oracle e da Microsoft SQL Server. Express-C não terá limite no número de usuários e do tamanho do banco de dados. Foi desenvolvido para máquinas com sistema Windows e Linux até 2 processadores e até 4GB de memória.</p>
<p><strong>Competição:</strong></p>
<p>Historicamente, a primeira posição entre os SGDB do mercado foi marcado pela alternância entre DB2 e Oracle. Entretanto há outros SGDBs concorrentes como o Microsoft SQL (que é apenas disponível no Windows) além de sistemas de código aberto tais como o PostgreSQL, MySQL e Firebird. O DB2 para z/OS tem poucos concorrentes diretos, mas a Oracle tem atraindo consumidores para o Linux da zSerie, embora não as custas do DB2.</p>
<p>Em 2006 a IBM entrou na competição pelo emergente mercado de armazenamento warehouse aplicado ao mercado financeiro, com o lançamento de uma linha de produtos com sistemas de hardware/software pré-configurados. Essa família de “aplicações warehouse” foi nomeada como IBM Balanced Configuration Unit, ou BCU.</p>
<p><strong>Informações Técnicas:</strong></p>
<p>DB2 pode ser administrado tanto em uma interface de comandos de linhas ou em um ambiente gráfico. A interface de comando de linha requer mais conhecimento do produto mas pode ser mais facilmente automatizado. O ambiente gráfico é uma multi-plataforma Java que contem uma grande variedade de wizards para usuários iniciantes.</p>
<p>DB2 tem APIs para .NET CLI, Java, Python, Perl, PHP, Ruby, C++, C, REXX, PL/I, COBOL, RPG, FORTRAN, e muitas outras linguagens de programação. DB2 também tem suporte de integração no Eclipse e no Visual Studio .NET</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Preparação de um ambiente de desenvolvimento JAVA, v2]]></title>
<link>http://jmmwrite.wordpress.com/?p=138</link>
<pubDate>Mon, 14 Jul 2008 16:38:17 +0000</pubDate>
<dc:creator>julianommartins</dc:creator>
<guid>http://jmmwrite.wordpress.com/?p=138</guid>
<description><![CDATA[Terminei a versão 2 do manual de preparação de um ambiente de desenvolvimento java. As novidades ]]></description>
<content:encoded><![CDATA[<p><a href="http://jmmwrite.wordpress.com/files/2007/12/caderno.jpg"><img class="alignleft size-medium wp-image-30" src="http://jmmwrite.wordpress.com/files/2007/12/caderno.jpg?w=123" alt="" width="123" height="94" /></a>Terminei a versão 2 do manual de preparação de um ambiente de desenvolvimento java. As novidades são a inclusão da configuração e download dos seguintes softwares:</p>
<p>- DB2 Express C<br />
- Postgres no Ubuntu 8.04<br />
- Tomcat via arquivo ZIP em Ubuntu 8.04<br />
- RAD 7<br />
- WebSphere App Server CE<br />
- WebSphere App Server Enterprise</p>
<p>Baixe <a href="http://dcon.com.br/jd.comment/juliano/HOW_TO_PREPARA_JAVA_DEV_ENV_WIN_LIN_PORT_2_0.pdf" target="_blank">aqui</a>.<a href="http://br.share.geocities.com/julianommartins/HOW_TO_PREPARA_JAVA_DEV_ENV_WIN_LIN_PORT_2_0.pdf" target="_blank"></a></p>
<p>Aguardem mais novidades ainda essa semana.</p>
<p>Por favor, critiquem a vontade!</p>
<p>Enjoy</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[IT SOFTWARE DEVELOPER]]></title>
<link>http://spillerlaszlo.wordpress.com/?p=208</link>
<pubDate>Mon, 14 Jul 2008 08:55:04 +0000</pubDate>
<dc:creator>Spiller László</dc:creator>
<guid>http://spillerlaszlo.wordpress.com/?p=208</guid>
<description><![CDATA[Job description:

Develop and design critical financial system links and code enhancements to enable]]></description>
<content:encoded><![CDATA[<p><strong>Job description:</strong></p>
<ul>
<li>Develop and design critical financial system links and code enhancements to enable the creation of business reports for operational quality measurement and business controls</li>
<li>Develops and designs critical interfaces between business applications and inputs to IBM Content Manager allowing the deployment of Content Manager globally</li>
<li>Design, development, installation and support of Kofax Ascent Capture specific applications including XStrata Pro using standard Application Programming Interfaces</li>
<li>Complex interface design between Content Manager and multiple applications</li>
<li>Cross application development via DB2</li>
<li>Polyglot skills in Java, VB, C++ program design, development and documentation skills</li>
<li>Websphere Application Server application management and monitoring</li>
<li>Supporting Customer requirements for related application development and change requests eg. TCS (Throw Catch System – Image)</li>
</ul>
<p><strong>Core Technical Skills Required:</strong></p>
<ul>
<li>IBM Content Manager</li>
<li>C/C++ </li>
<li>C#</li>
<li>JavaScript</li>
<li>Java</li>
<li>Visual Basic</li>
<li>Database experience in DB2</li>
<li>Kofax Ascent Capture 7</li>
<li>IBM Lotus Notes</li>
<li>IBM WebSphere MQueue</li>
<li>Kofax XStrata Pro OCR</li>
<li>IBM Rational Application Developer</li>
<li>VB.NET</li>
<li>SQL</li>
<li>XML</li>
<li>HTML</li>
<li>QMF</li>
<li>TSO</li>
<li>IBM CAPD    </li>
</ul>
<p><strong>Required:  </strong></p>
<ul>
<li>Technical Diploma</li>
<li>At least 5 years experience in General and wide IT skills</li>
<li>Certified in IT</li>
<li>English: Intermediate</li>
</ul>
<p><strong>Preferred:  </strong>    </p>
<ul>
<li>Master's Degree in Information Technology</li>
<li>English : Fluent            </li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[shibSQL]]></title>
<link>http://jruby.wordpress.com/?p=100</link>
<pubDate>Fri, 11 Jul 2008 01:47:33 +0000</pubDate>
<dc:creator>Sérgio</dc:creator>
<guid>http://jruby.wordpress.com/?p=100</guid>
<description><![CDATA[shibSQL é um software de acesso à base de dados.
Ele funciona por linha de comandos e tem janelas ]]></description>
<content:encoded><![CDATA[<p>shibSQL é um software de acesso à base de dados.</p>
<p>Ele funciona por linha de comandos e tem janelas de auxilio. É criado para auxiliar principalmente desenvolvedores que se utilizam de SQL e serve para ser levado em qq pendrive para qq lugar, auxiliando a quem tem que acessar todo tipo de banco em vários lugares que nao se sabe qual recurso tem.</p>
<p>A primeira vista vai ser um programa simples, por linha de comandos, tendo bastante características que auxiliam na sua utilização.</p>
<p>Até agora, a melhor ferramenta de SQL que jah utilizei foi o Oracle SQL Developer, que está em sua versão 1.5, mas este não é o meu foco.</p>
<p>O primeiro passo interessante que tomei com o shibSQL foi o de tornar um JTextArea um InputStream, com o jline (<a title="JLine Library" href="http://jline.sourceforge.net/" target="_blank">http://jline.sourceforge.net/</a>), e com isto criar algo levemente parecido com o bash do linux, com history e auto-completation e tudo !  Isto sim ficou legal, pq pode ser utilizado para qq intúito.</p>
<p>Bom, sem mais delongas, o trabalho ( seja bom, ou seja ruim ) será visto e avaliado por todos no seu decorrer. E a definição inicial, o esboço do que quero fazer está no meu wiki:</p>
<p><a title="shibSQL no Wiki" href="http://www.berlotto.com/wiki/index.php?title=ShibSQL" target="_blank">http://www.berlotto.com/wiki/index.php?title=ShibSQL</a></p>
<p>Há, e um logo ainda será criado ... hehehehe</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Update parcial de dados XML no DB2]]></title>
<link>http://jmmwrite.wordpress.com/?p=135</link>
<pubDate>Tue, 08 Jul 2008 23:30:37 +0000</pubDate>
<dc:creator>julianommartins</dc:creator>
<guid>http://jmmwrite.wordpress.com/?p=135</guid>
<description><![CDATA[Vários posts atráz, eu falei de DB2 Pure XML (http://jmmwrite.wordpress.com/2007/10/04/db2-purexml]]></description>
<content:encoded><![CDATA[<p style="text-align:left;"><a href="http://jmmwrite.wordpress.com/files/2007/12/db2logo.gif"><img class="size-medium wp-image-26 alignleft" src="http://jmmwrite.wordpress.com/files/2007/12/db2logo.gif?w=200" alt="Update parcial de dados XML" width="200" height="52" /></a>Vários posts atráz, eu falei de <strong>DB2 Pure XML</strong> (<a href="http://jmmwrite.wordpress.com/2007/10/04/db2-purexml-entendendo-e-aplicando/" target="_blank">http://jmmwrite.wordpress.com/2007/10/04/db2-purexml-entendendo-e-aplicando/</a>) e citei a stored procedure DB2XMLFUNCTIONS.XMLUPDATE, que permite fazer update dentro de conteudos XML.</p>
<p>Pois bem, encontrei um link muito bom no developer works que mostra como implementar a mesma em seu banco de dados.</p>
<p>Aqui está o material: <a href="http://www.ibm.com/developerworks/db2/library/techarticle/dm-0605singh/" target="_blank">http://www.ibm.com/developerworks/db2/library/techarticle/dm-0605singh/</a></p>
<p>Ainda para quem gosta de banco de dados, não necessariamente DB2, recomendo dar uma olhada em meus posts anteriores aqui -&#62; <a href="http://jmmwrite.wordpress.com/category/db2/" target="_blank">http://jmmwrite.wordpress.com/category/db2/</a></p>
<p>Enjoy!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[IBM DB2 CommonStore for SAP, Version 8.3]]></title>
<link>http://hptv04.wordpress.com/?p=493</link>
<pubDate>Fri, 04 Jul 2008 07:47:37 +0000</pubDate>
<dc:creator>hptv</dc:creator>
<guid>http://hptv04.wordpress.com/?p=493</guid>
<description><![CDATA[IBM DB2 CommonStore for SAP, Version 8.3, delivers a premier, certified solution that can trim the s]]></description>
<content:encoded><![CDATA[<p style="text-align:justify;">IBM DB2 CommonStore for SAP, Version 8.3, delivers a premier, certified solution that can trim the size of SAP databases. Application information archived through DB2 CommonStore can be stored on an external repository that can leverage cost-effective storage devices while delivering accessibility to SAP at any time and maintaining independence from hardware or release changes of the SAP system. It can improve the performance of SAP systems, ease migration to new versions of SAP and help the company comply with regulations for data retention. DB2 CommonStore for SAP also provides document management capabilities. By linking archived documents to SAP business objects, DB2 CommonStore for SAP makes business documents, from purchase orders to inventory level reports, available to authorized users anywhere on the network.</p>
<p style="text-align:justify;">...download here: <a href="http://hptv04.files.wordpress.com/2008/07/ibm_db2_common_store_for_sap.pdf">ibm_db2_common_store_for_sap</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Installing Alfresco 2.1 on WebSpere 6.1 and DB2 9.5]]></title>
<link>http://beb4ch.wordpress.com/2008/06/25/installing-alfresco-21-on-webspere-61-and-db2-95/</link>
<pubDate>Wed, 25 Jun 2008 14:46:59 +0000</pubDate>
<dc:creator>beb4ch</dc:creator>
<guid>http://beb4ch.wordpress.com/2008/06/25/installing-alfresco-21-on-webspere-61-and-db2-95/</guid>
<description><![CDATA[To get Alfresco 2.1 (Community Edition) to run on WebSphere Application Server V6.1 and use DB2 V9.5]]></description>
<content:encoded><![CDATA[<p>To get Alfresco 2.1 (Community Edition) to run on WebSphere Application Server V6.1 and use DB2 V9.5 you need to do the following:</p>
<p><!--more-->
<p><strong>1.) Create a database in DB2 V9.5</strong>. Use the following command:</p>
<blockquote><p>create database <em>alfresco</em> using codeset utf-8 territory us pagesize 32768</p>
</blockquote>
<p>Of course, you can change the database name from alfresco to whatever you like. </p>
<p>It is possible to use a smaller default page size and create an additional table space with large 32K pagesize for bigger tables, but I've decided not to bother with that. This way I got Alfresco to create the tables and indexes by itself making the whole setup upgrade friendly.</p>
<p><strong>2.) Create Alfresco extensions folder </strong>by creating a folder named lib/alfresco in your WAS profile folder. For example, in my profile called production1, the folder is:</p>
<blockquote><p>/opt/IBM/WebSphere/AppServer/profiles/production1/lib/alfresco</p>
</blockquote>
<p>Next, add the <em>extension</em> folder from the Alfresco war distribution into the lib/alfresco folder.</p>
<p><strong>3.) Add the DB2 driver into the lib folder</strong>. The lib folder I'm referring to is the lib in lib/alfresco...</p>
<p><strong>4.) Add the Alfresco extension folder to the ws.ext.dirs variable</strong>. To do this, open WAS admin console and go here: Servers -&#62; Application servers -&#62; pick you server (server1) -&#62; Server Infrastructure -&#62; Java and Process Management -&#62; Process Definition -&#62; Java Virtual Machine -&#62; Custom Properties</p>
<p>Add a property named "ws.ext.dirs" and put the lib/alfresco (full path) in here.</p>
<p><strong>5.) Restart WAS</strong></p>
<p><strong>6.) Install the Alfresco war archive.</strong> I've specified "alfresco" to by my context root, turned on JSP precompiling and used defaults for all other settings. </p>
<p><strong>After the application is deployed, don't start it</strong> just yet!</p>
<p><strong>7.) Set Alfresco application class loader properties</strong> to be:</p>
<ul>
<li>Classes loaded with the application class loader first
<li>Single class loader for application</li>
</ul>
<p>&#160;</p>
<p>You do this by opening the application properties in the WAS console and then click on the "Class loading and update protection" link. WAs won't allow you to save the new configuration if you leave the Pooling interval field blank. Just put 0 in there and all will be fine.</p>
<p><strong>8.)&#160; Remove the xml-apis.jar</strong> from the alfresco WEB-INF/lib folder.</p>
<p><strong>9.) Modify the custom-repository.xml</strong> file in the Alfresco extensions folder to include the information necessary to connect to DB2. In my case the properties look like this:</p>
<blockquote><p>db.driver=com.ibm.db2.jcc.DB2Driver<br>db.url=jdbc:db2://localhost:50095/alfresco<br>db.username=i95usr1<br>db.password=********</p>
</blockquote>
<p>You can now run Alfresco...</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Studio and IBM]]></title>
<link>http://fyzzi.wordpress.com/?p=38</link>
<pubDate>Fri, 20 Jun 2008 03:25:21 +0000</pubDate>
<dc:creator>wyzzi</dc:creator>
<guid>http://fyzzi.wordpress.com/?p=38</guid>
<description><![CDATA[The 2008 tour of Tech Ed has kicked off and there is a lot of interest particularly in the Tech Ed N]]></description>
<content:encoded><![CDATA[<p><img class="alignleft" style="border:2px solid white;" src="http://www.microsoft.com/presspass/events/teched/images/Bot_thumb.jpg" alt="" width="200" height="160" />The 2008 tour of Tech Ed has kicked off and there is a lot of interest particularly in the Tech Ed North America keynote by Bill Gates, both for the subject matter and that this will be his last Tech Ed year before he retires. In the <a href="http://www.microsoft.com/Presspass/press/2008/jun08/06-03TechEdDevPR.mspx">press release</a> he is quoted:</p>
<blockquote><p>“When I think back on the early days of development when we were all programming in DOS, and then take a look at what we can do now with technologies like the .NET Framework, it simply amazes me how far we’ve come,” Gates said. “I started out as a developer and that’s what I remain at heart, so I have a personal interest in the future of the field. I am confident that the path we are laying out today will serve you well into the future.”</p></blockquote>
<p>Microsoft also made several announcements at this Orlando event, of particular interest was the technical collaboration with IBM.</p>
<blockquote><p><strong>An alliance with IBM</strong> that will further simplify application development for enterprise teams working in heterogeneous environments. IBM and Microsoft have agreed to work together to integrate IBM <a href="http://www.ibm.com/db2">DB2</a> database access with Visual Studio Team System <a href="http://msdn.microsoft.com/en-us/vsts2008/products/bb933747.aspx">Database Edition</a>.</p></blockquote>
<p>The image in this post is of Bill Gates receiving a life time subscription to Xbox live for use after his retirement from a virtual Steve Ballmer embodied in a robot. Pretty niffty. I also hear that Tech Ed New Zealand was sold out in about three weeks with tickets gone by end of May, very cool.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Comparing Free databases: Oracle XE vs DB2 Express-C ]]></title>
<link>http://freedb2.wordpress.com/?p=19</link>
<pubDate>Thu, 19 Jun 2008 06:00:37 +0000</pubDate>
<dc:creator>Leon</dc:creator>
<guid>http://freedb2.wordpress.com/?p=19</guid>
<description><![CDATA[Before I get too far in to this I&#8217;d like to get a couple of things straight:

I am biased and
]]></description>
<content:encoded><![CDATA[<p>Before I get too far in to this I'd like to get a couple of things straight:</p>
<ol>
<li>I am biased and</li>
<li>I actually like <a title="Oracle XE home page" href="http://www.oracle.com/technology/products/database/xe/index.html" target="_blank">Oracle XE</a> but I like <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE003" target="_blank">DB2 Express-C</a> more ... see point 1</li>
</ol>
<p>Now that I got this off my chest, I wanted to do a quick comparison between these two products from the two leaders in the commercial database server market. Both DB2 Express-C and Oracle XE (Express Edition) have much in common. Both are built on the same code that their very popular and at times expensive commercial counterparts are. Both can be downloaded and used for free to build applications, deploy them in production and even distribute as part of your application. Both DB2 Express-C and Oracle XE claim that you can build your application on them and when you "grow up" and need to scale you can upgrade to a paid edition without expensive recoding and migration of your application. So, what's the diff?<br />
To be net, the biggest difference is that Oracle XE restricts you to storing maximum of 4GB of data. In my not so humble opinion this is an absolute joy killer. How can you use a product that limits how much data you an collect and stops in its tracks if you go over the limit. Say you are an ISV and you bundled Oracle XE in to your application and distributed to your customers. Now imagine your embarrassment and your customers' "emotion" directed at your support staff when your application just stops working because they stored more than 4GB of data. You may say "yeah Leon, you are full of it. 4GB is a lot." Bill Gates once said that nobody would ever need more than 64MB or RAM. For the record, I have 3GB of RAM in my laptop and with all due respect for Mr. Gates, I do need it all of it. But I digress. What is 4GB of data? How about just 2 BLOBs with pictures or a couple dozen or so scans of your purchase orders, invoices and other business documents. What about your digital media library. I have 1TB NAS at home and it is starting to fill up with pictures, home movies and iTunes stuff (yes, all legal; I am glad you asked :-)). iTunes library is in XML and DB2 Express-C does XML really well ... more on that later. 4GB is half of a decent memory stick. 4GB is nothing in our digital age. DB2 Express-C has no limit on how much data you can store. If you the disk space it will use it. Gigabytes, terabytes maybe even petabytes.<br />
A few less dramatic points. Oracle XE runs on 32-bit Windows and Linux. <a title="DB2 Express-C download" href="http://www.ibm.com/db2/express/download.html/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE003">DB2 Express-C</a> does both 32 and 64-bit Windows and Linux but it also runs on Solaris X86. And for those with System p or System i servers, it is also a choice for running on Linux partitions on these servers. These POWER processors can give you a lot of oomph. So, if you have an System i (AS/400 for old timers) you can install DB2 Express-C on a Linux partition and get blazing fast replication of your AS/400 data in to DB2 Express-C. And did I mention that DB2 Express-C is available in 64-bit versions while Oracle XE is 32-bit only?<br />
Speaking of hardware resources. Both Oracle XE and DB2 Express-C can be installed on any size machine be that a laptop with a single processor and 1GB of memory (3GB in my case) or a good size server with 4 multi-core CPUs and 16GB of memory. That's nice! Both products will use up to a set amount of hardware resources though. Oracle XE will use a maximum of 1 processor and will not allocate more than 1GB of memory. DB2 Express-C will go for double that. It will schedule its work on 2 processor cores and will allocate maximum of 2GB of memory. However, if you were to <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/support.html/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE003" target="_blank">purchase optional subscription</a> you can double resource allocations to 4 processor cores and 4GB of memory. And remember, there is never any restriction on the amount of data you can store. An astute reader may be wondering about the usefulness of the 64-bit version of DB2 Express-C in a 2GB or even 4GB environment. If you are wondering, read my <a title="Is 64-bit DB2 Express-C better than 32-bit" href="http://freedb2.com/2008/06/05/is-64-bit-db2-express-c-better-than-32-bit/" target="_blank">blog post</a> on the subject. So, DB2 Express-C can take advantage of 2-4 times the hardware resource when compared to Oracle XE. But what does this really mean? Well, by itself it means nothing. However, when you consider the fact that for database performance having extra memory is probably the most important aspect you understand that you have a potential of much higher performance with DB2 Express-C. What is more important is not only DB Express-C can take advantage of more memory when available it also needs much less memory to run. It turns out that Oracle XE is not quite the slimmed down version it claims to be. Here Windows task manager shows that while Oracle XE instance is up but is idle (not processing any queries) the commit charge is 1581MB</p>
<p><img style="vertical-align:top;" src="http://freedb2.files.wordpress.com/2008/06/oracle_memory_running1.png" alt="Oracle XE idle instance memory consumption" width="589" height="512" /></p>
<p>Now we stop Oracle XE instance</p>
<p><a href="http://freedb2.files.wordpress.com/2008/06/oracle_memory_stopped.png"><img style="vertical-align:top;" src="http://freedb2.files.wordpress.com/2008/06/oracle_memory_stopped1.png" alt="Memory consumption with Oracle stopped" width="585" height="512" /></a></p>
<p>If you do a quick math you will see that just starting Oracle XE instance consumed about 600MB.</p>
<p>Let's get back to the code base. Both products use the same code base as their priced editions. However, Oracle XE is still at 10g R2 level despite the fact that 11g shipped almost a year ago. As a matter of fact, Oracle XE has not to my knowledge had any updates at all, not even for critical security flaws. DB2 Express-C on the other hand is constantly updated to the latest level of the DB2 code base. At this point in time it is v9.5 while initial release was v8.2. The free version of DB2 Express-C does not get Fixpacks but it is updated as the new releases of DB2 come out. However, DB2 Express-C does provide an option of <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/support.html/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE003" target="_blank">low cost support delivered as a yearly subscription</a>. If you were to purchase this subscription, you would get 24*7 support delivered by IBM engineers world wide. You also get double the resource allowance (4 processor cores and 4GB of memory), SQL based data replication and high availability clustering and off-site disaster recovery (HADR). Nothing like that is available with Oracle XE. If you are looking for data replication (Oracle Streams) you will need to move to <a title="Oracle Price List" href="http://www.oracle.com/corporate/pricing/technology-price-list.pdf" target="_blank">Enterprise Edition ($47.5K per processor)</a>. Same is true for high availability (DataGuard). Even Oracle backup and recovery (RMAN) requires a move to Oracle Standard Edition One.</p>
<p>I saved the best for last. One of the really cool features in DB2 Express-C (and all other DB2 editions) is pureXML. Basically, DB2 Express-C database engine has hybrid data store. On the one hand, it is a very efficient high performing relational storage and query engine. On the other hand, it is also a storage engine that knows how to store parsed indexed XML trees in their native format and how to query data out of these trees using XQuery language. So, if you want to store your iTunes library in DB2 or maybe a large collection of insurance policy documents using industry standard ACCORD schema you can do so efficiently with full fidelity and be able to query these documents with the speed that you would expect from relational databases. It is really very fast.</p>
<p>As I said at the start of this post, I am naturally biased towards DB2 Express-C. However, I like to think that my bias is not just blind affection for my employer or the product I've been associated with for the last 15 years. I do feel that DB2 Express-C represents much better value than Oracel XE for anyone but a hobyist who is already well versed in Oracle. I just do not see how majority of peopel deploying real applcaitions can live with restriction on the amount of data their database can manage and such a low one to boot. Also, given memory consumption of Oracle XE and the very low 1GB memory limit, I am sceptical that one can expect perforamcne levels required for real world applcaitions. Last but not least, our IT peopel made me uninstall Oracle XE because it failed security vulnerability scans ... it is an unpatched 10g R2 version with dozens of well document vulnerabilities that I simply have no way of fixing. So, while I like Oracle XE for tinkering because it is much easier than other Oracle database editions, I don't see it being usefull for any kind of real life deployment.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[IBM may open source DB2]]></title>
<link>http://freedb2.wordpress.com/?p=16</link>
<pubDate>Mon, 16 Jun 2008 21:52:05 +0000</pubDate>
<dc:creator>Leon</dc:creator>
<guid>http://freedb2.wordpress.com/?p=16</guid>
<description><![CDATA[&#8220;IBM may open source DB2&#8243; is the headline headline in today&#8217;s article by Tom Espin]]></description>
<content:encoded><![CDATA[<p class="author">"IBM may open source DB2" is the headline headline in <a title="IBM may open source DB2" href="http://news.zdnet.co.uk/software/0,1000000121,39434137,00.htm" target="_blank">today's article by Tom Espiner on ZDNet.co.uk</a>. The article is based on the interview with Chris Livesey,  IBM UK director of information management. I posted a comment on the article but I figured I'd provide a more complete explanation here in the blog.</p>
<p class="author">Before I get in to the details, I wanted to just reemphasize that what you are reading here is NOT an official  IBM position but an opinion that is mine and mine alone.</p>
<p class="author">If you follow this blog than you already know that that IBM provides a product called <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">DB2 Express-C</a> which follows the now typical open source business model i.e. free license to use with available optional for fee service and support. It is important to note that "open source business model" is not the same thing as "open source" product. There are many definitions of "Open Source" and I can easily start a holly war on the subject here but I don't intend to; I am sorry if my definition of the "Open Source" does not comply with naming police requirements. In general, for DB2 to be considered open source we would have to make the source code available for download and inspection by anyone who wishes to do so and is able and willing to comply with the legal requirements of one of the commonly used open source licenses (a great subject of debate by many open source purists). It would typically also mean that IBM would be willing to receive contributions from the community in the form of code patches or even entire new modules and would not object to people creating completely new diverging branches of code. As I said before, I am playing fast and loose with the definition of the open source in an effort to explain what DB2 does or does not do.</p>
<p class="author">Just to recap, DB2 is not available as open source. I can't comment with any degree of certainty on the future but my crystal ball is not showing open source plans for DB2. Over the years, IBM has shown great commitment to the open source movement by donating its technologies to the open source communities. In the database space, for example, IBM contributed <a title="Apache Derby" href="http://db.apache.org/derby" target="_blank">Derby</a> to Apache. So, we do open source big time. However, we do it judiciously and specifically when we have a strong belief that open source would provide  great value to the community and the industry. At the time of release of <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">DB2 Express-C</a> we had extensive consultations with key customers and industry analysts. The feedback we were getting (and continuing to get) was that "open source" would not be beneficial. The number of people that would be interested in seeing DB2 source code can probably counted on 2 hands and half of those are likely to be our competitors. This is not a scientifically derived measurement but a general feeling. The number of people who would actually be able to contribute code is a small fraction of that at best. On the other hand we have a number of corporate customers who are very clear that they have great difficulties acquiring open source products. Corporate procurement departments will disallow open source product acquisition because of intellectual  property concerns. Even when open source is grudgingly allowed, customers are demanding "Indemnification". Open source vendors such as MySQL had to respond by offering indemnification at (hefty?) extra charge. In the past suing MySQL was not a profitable proposition. It remains to be seen if now that MySQL is part of the SUN Microsystems, a company with much deeper pockets, this will still be the case.</p>
<p class="author">What we did get a lot of input on is a desire to have a free DB2 product. Many of our customers as well as students, hobbyist and solution providers really like the ease of acquisition of the open source products i.e. no purchase orders, approvals, budgets etc. We on the other hand are very proud of our technology and want to get it in to as  many hands as possible. We want everybody who ever touched XML to be able to experience the benefits of using DB2 pureXML and we don't want barriers such as lack of approved budget to stand in the way. So, you can <a title="download DB2 Express-C" href="http://www.ibm.com/db2/express/download.html/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">download DB2 Express-C</a>, full function real DB2 and we offer for free. You can build the latest wizbang (Web 1.0 term for term for "cool")  Web 2.0 and Enterprise 2.0 applications with XML, web services, <a title="Web 2.0 Starter Toolkit for DB2" href="http://www.alphaworks.ibm.com/tech/web2db2?open?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">Atom</a>, REST, SOA, <a title="DB2 on Rails blog" href="http://DB2onRails.com/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">Ruby on Rails</a>, PHP, .NET, Java (and every other acronym you can think of) and deploy it for free. And if you need 24x7 support and backing from IBM you can get low cost (same price as MySQL Enterprise Gold) optional subscription. If you are in the business of building and selling software you can even <a title="Bundle DB2 Express-C in to your application for free" href="http://www.ibm.com/db2/express/partners.html/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">bundle DB2 Express-C as part of your solution absolutely free</a>. Our ISVs seem to like that a lot. They can now distribute an industrial strength commercial database as part of their offering without the legal concerns yet have the key benefit of open source. What they are not  giving up on is the great technology and support that IBM can deliver 24 hours a day seven days a week in any corner of the globe in the language they speak. And this support is delivered by IBM and not subcontracted to a third party. It is delivered by exactly the same team that provides support for all other versions of DB2 and has complete access in to the engineers in our labs.</p>
<p class="author">To sum this up "IBM may open source DB2" is a very catchy title for an article but it really does not represent our plans for DB2. IBM has contributed to the open source before and will continue to do so I am sure. But in my opinion there is no benefit in contributing DB2 to the open source. I believe that our partners and customers, and industry overall, is much better served by the current <a title="DB2 Express-C home on the web" href="http://www.ibm.com/db2/express/?S_CMP=ECDDWW01&#38;S_TACT=LKFREE002" target="_blank">DB2 Express-C</a> offering as it delivers the key benefits of open source without the downside that is typically associated with the open source.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[It's just a rumor but...]]></title>
<link>http://subterrain.wordpress.com/?p=24</link>
<pubDate>Mon, 16 Jun 2008 19:57:31 +0000</pubDate>
<dc:creator>kkostuck</dc:creator>
<guid>http://subterrain.wordpress.com/?p=24</guid>
<description><![CDATA[Chris Livesey, IBM&#8217;s UK director of information management software, suggested to ZDNet blogge]]></description>
<content:encoded><![CDATA[<p>Chris Livesey, IBM's UK director of information management software, suggested to ZDNet blogger Tom Espiner that IBM may eventually open source DB2.</p>
<p><a href="http://news.zdnet.com/2424-3515_22-206350.html">Link</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[It is now easier to download DB2 Express-C]]></title>
<link>http://freedb2.wordpress.com/?p=12</link>
<pubDate>Mon, 09 Jun 2008 16:40:40 +0000</pubDate>
<dc:creator>Leon</dc:creator>
<guid>http://freedb2.wordpress.com/?p=12</guid>
<description><![CDATA[It is a small improvement but for those of us who do not like to fill out forms it is an important o]]></description>
<content:encoded><![CDATA[<p>It is a small improvement but for those of us who do not like to fill out forms it is an important one. Starting today, you no longer have to register for an IBM ID to download <a title="DB2 Express-C web site" href="http://www.ibm.com/db2/express/" target="_blank">DB2 Express-C</a> for free. Up until today if you wanted to <a title="DB2 Express-C doownload page" href="http://www-306.ibm.com/software/data/db2/express/download.html" target="_blank">download DB2 Express-C</a> and you have not had an IBM ID you had to spend some time filling out a form to register with the IBM website and to get the IBM ID to use on future visits. This is a good thing to do if you frequently download things from IBM. However, most of the DB2 Express-C downloaders are new to working with IBM and they really don't want to spend the time filling out forms. We listened to your feedback and simplified the download process. You still have to provide your name, email and country but that is all. This information is required to comply with export requirements. When you decide to download <a title="DB2 Express-C web site" href="http://www.ibm.com/db2/express/" target="_blank">DB2 Express-C</a> you will see this page:</p>
<p><img src="http://freedb2.files.wordpress.com/2008/06/no_ibmid_download.jpg" alt="No IBM ID download" width="609" height="425" /> </p>
<p>Once you click on "Proceed without an IBM ID" you will see a form like this one:</p>
<p><img src="http://freedb2.files.wordpress.com/2008/06/no_ibmid_info.jpg" alt="What information needs to be povided for No IBM ID download" width="664" height="941" /> </p>
<p>This is it. Hopefully you will find this process to be simpler and will encourage your friends and colegues to download and experience <a title="DB2 Express-C web site" href="http://www.ibm.com/db2/express/" target="_blank">DB2 Express-C</a>. And just as a reminder, it is completely free and has no time bombs or other annoying restrictions. </p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Oracle Merge teikuma sintakse]]></title>
<link>http://datubazes.wordpress.com/?p=70</link>
<pubDate>Mon, 09 Jun 2008 06:00:37 +0000</pubDate>
<dc:creator>Gints Plivna</dc:creator>
<guid>http://datubazes.wordpress.com/?p=70</guid>
<description><![CDATA[Pārējos rakstus var lasīt SQL pamatos.
Pēc pāris intermēdijām par to kā uzdot saprātīgu ja]]></description>
<content:encoded><![CDATA[<p><em>Pārējos rakstus var lasīt <a href="http://datubazes.wordpress.com/sql-pamati/" target="_self">SQL pamatos</a>.</em></p>
<p>Pēc pāris intermēdijām par to kā <a href="http://datubazes.wordpress.com/2008/05/27/ka-uzdot-jautajumu/" target="_self">uzdot saprātīgu jautājumu</a> un stāstu par to, ka vajadzētu padomāt kādus <a href="http://datubazes.wordpress.com/2008/06/03/sensitivi-dati/" target="_self">datus glabājam pie sevis un kādus dodam citiem internetā,</a> paskatīsimies uz mazliet sausākām lietām. Oracle Merge SQL teikumu ir nodrošinājusi kopš 9i versijas, kas tika izlaista jau diezgan tālajā 2001 gadā. Sākumā tajā bija tikai UPDATE un INSERT klauzas, pie tam abas bija obligātas. 2003 gadā līdz ar versiju 10g MERGE funkcionalitāte tika papildināta pieļaujot neobligātu UPDATE, DELETE un INSERT. 11g versijā nekādi būtiski papildinājumi klāt nav nākuši.<br />
Oracle Merge sintakse lielā mērā ir līdzīga <a href="http://datubazes.wordpress.com/2008/05/20/sql-server-merge/" target="_self">SQL Server Merge</a> sintaksei (kas vēl produkcijā īsti nav), bet tai ir savas atšķirības:<br />
1) Nekur neparādās atslēgas vārdi TARGET un SOURCE;<br />
2) Ierakstu dzēšana (Delete) ir zem Update operācijas, kas arī fiziski nozīmē, ka ieraksti vispirms tiek koriģēti un pēc tam iespējams izdzēsti, ja nosacījums to pieļauj.</p>
<h3>Tātad sintakse ir šāda:</h3>
<p><a href="#p1">MERGE INTO &#60;mērķa tabula&#62;</a><br />
<a href="#p2">USING &#60;izejas dati&#62;</a><br />
<a href="#p3">ON (&#60;salīdzināšanas nosacījums&#62; )</a><br />
<a href="#p4">WHEN MATCHED THEN &#60;darbības, ja nosacījums patiess&#62;</a><br />
<a href="#p5">WHEN NOT MATCHED THEN &#60;darbības, ja nosacījums aplams&#62;</a><!--more--></p>
<p><a id="1" title="p1" name="p1"></a><br />
<strong>MERGE INTO &#60;mērķa tabula&#62;</strong></p>
<p>Klauza neatšķiras no SQL Server MERGE INTO atbilstošās klauzas, tātad norāda tabulas vārdu kurā tiks koriģēti, dzēsti vai pievienoti dati.</p>
<p><a id="2" title="p2" name="p2"></a><br />
<strong>USING &#60;izejas dati&#62;</strong></p>
<p>Šajā klauzā tiek norādīts, no kurienes dati tiks ņemti. Pašā triviālākajā gadījumā šeit var norādīt vienkārši tabulas vārdu. Šeit var izmantot arī apakšvaicājumu un atsķirībā no SQL Server nav nepieciešams tam obligāti pievienot aliasu.</p>
<p><a id="3" title="p3" name="p3"></a><br />
<strong>ON (&#60;salīdzināšanas nosacījums&#62; )</strong></p>
<p>Klauza praktiski neatšķiras no SQL Server atbilstošās klauzas, vienīgais - sintaktisks smalkums - tā jāliek iekavās. Šeit paliek spēkā tieši tā pati lieta, kas iepriekš - MERGE teikums katru rindu mērķa tabulā var 1) vai nu koriģēt vai dzēst 2) darīt to ne vairāk kā vienu reizi. Tas nozīmē, ka nosacījumam ir jābūt tādam, ka katram ierakstam mērķa tabulā atbilst ne vairāk kā viens ieraksts izejas datos. Tiklīdz kā tādu būs vairāk, Jūs iegūsiet kļūdu.</p>
<p><a id="4" title="p4" name="p4"></a><br />
<strong>WHEN MATCHED THEN &#60;darbības ja nosacījums patiess&#62;</strong></p>
<p>Šī ir tā vieta, kur sākas atšķirības. Tātad šādu klauzu var rakstīt tikai vienu vienīgu reizi, taču tai var būt UPDATE daļa un DELETE daļa. Un tā izskatās šādi:</p>
<p>WHEN MATCHED THEN<br />
UPDATE SET &#60;update klauza&#62;<br />
WHERE &#60;update where klauza&#62;<br />
DELETE &#60;delete where klauza&#62;</p>
<p>Šeit tiek rakstītas darbības (Update vai Delete), kas notiek tad, ja salīdzināšanas nosacījums ir izpildījies. Parastajā scenārijā (periodiska mērķa datu atjaunošana) tas nozīmē, ka mērķa tabulā ieraksti tiek koriģēti. Jāatceras vēlreiz augšminētais teikums "ieraksti vispirms tiek koriģēti un tikai pēc tam dzēsti", tātad no tā burtiski izriet, ka WHERE klauza, kas seko aiz UPDATE reizē ierobežo arī ierakstus, kas potenciāli tiks dzēsti - tātad DELETE tiek pielietota gan tam specifiskā WHERE klauza, gan arī UPDATE atbilstošā WHERE klauza, ja tāda eksistē.</p>
<p>Tagad beidzot ķeramies klāt pie piemēriem - tātad mums ir 2 tabulas, personals, kas būs mērķa tabula, un personals_src, kas tiks izmantota kā izejas datu tabula.</p>
<pre>DROP TABLE personals;
DROP TABLE personals_src;
DROP SEQUENCE prs_seq;

CREATE TABLE personals (
pers_id INTEGER NOT NULL PRIMARY KEY,
prs_vards VARCHAR(40),
prs_uzvards VARCHAR(40),
prs_alga NUMERIC(10, 2),
prs_statuss VARCHAR(1));

CREATE TABLE personals_src (
vards VARCHAR(40),
uzvards VARCHAR(40),
alga NUMERIC(10, 2));

CREATE SEQUENCE prs_seq;

INSERT INTO personals VALUES
  (prs_seq.nextval, 'JĀNIS', 'BĒRZIŅŠ', 1234.56, 'S');
INSERT INTO personals VALUES
  (prs_seq.nextval, 'JĀNIS', 'KALNIŅŠ', 570, 'N');
INSERT INTO personals VALUES
  (prs_seq.nextval, 'PĒTERIS', 'ZIRNIS', 680, 'S');
INSERT INTO personals VALUES
  (prs_seq.nextval, 'MAIJA', 'ZINĪTE', 700, 'N');
INSERT INTO personals_src VALUES ('JĀNIS', 'BĒRZIŅŠ', 1200.00);
INSERT INTO personals_src VALUES ('JĀNIS', 'KALNIŅŠ', 400);
INSERT INTO personals_src VALUES ('ANNA', 'LEJA', 680);
COMMIT;</pre>
<p>Izveidoto piemēru funkcionalitāte būs tieši tāda pati, kā analoģiskajam rakstam par SQL Server Merge teikumu.</p>
<p><a id="11" title="p11" name="p11"></a></p>
<h6>Piemērs 1. Tabulas personals sākotnējie dati</h6>
<pre>SQL&#62; SELECT * FROM personals;
PERS_ID PRS_VARDS PRS_UZVARDS  PRS_ALGA P
------- --------- ------------ ----------
      1 JĀNIS     BĒRZIŅŠ      1234,56  S
      2 JĀNIS     KALNIŅŠ      570      N
      3 PĒTERIS   ZIRNIS       680      S
      4 MAIJA     ZINĪTE       700      N</pre>
<p><a id="12" title="p12" name="p12"></a></p>
<h6>Piemērs 2. Ja darbinieka vārds un uzvārds sakrīt, tad koriģējam algu uz tādu, kā norādīta izejas tabulā. Šis Merge faktiski ne ar ko neatšķiras no vienkārša Update.</h6>
<pre>SQL&#62; MERGE INTO personals
  2  USING personals_src
  3  ON (prs_vards = vards
  4    AND prs_uzvards = uzvards)
  5  WHEN MATCHED THEN
  6  UPDATE SET prs_alga = alga;
2 rows merged.
SQL&#62; SELECT * FROM personals;
PERS_ID PRS_VARDS  PRS_UZVARDS   PRS_ALGA P
------- ---------- ------------- ----------
      1 JĀNIS      BĒRZIŅŠ       1200     S
      2 JĀNIS      KALNIŅŠ       400      N
      3 PĒTERIS    ZIRNIS        680      S
      4 MAIJA      ZINĪTE        700      N</pre>
<p>Redzam, ka mainījusies alga pirmajam un otrajam ierakstam. Lai varētu veiksmīgi izpildīt nākošos piemērus varam atgriezties uz sākumu vienkārši izpildot ROLLBACK.</p>
<p><a id="13" title="p13" name="p13"></a></p>
<h6>Piemērs 3. Ja darbinieka vārds sakrīt, tad koriģējam algu uz tādu, kā norādīta izejas tabulā. Redzam, ka nosacījums ir pārāk vājš un iegūstam kļūdu, jo atbilstoši šādam nosacījuma mērķa tabulā ieraksts ir jākoriģē vairākas reizes.</h6>
<pre>SQL&#62; MERGE INTO personals
  2  USING personals_src
  3  ON (prs_vards = vards)
  4  WHEN MATCHED THEN
  5  UPDATE SET prs_alga = alga;
USING personals_src
      *
ERROR at line 2:
ORA-30926: unable to get a stable set of rows in the source tables</pre>
<p>Kļūdas paziņojums, protams, ir savādāks nekā atbilstošais SQL Server piemērs, bet gala rezultāts ir tāds pats.</p>
<p><a id="14" title="p14" name="p14"></a></p>
<h6>Piemērs 4. Ja darbinieka vārds un uzvārds sakrīt, tad koriģējam algu uz tādu, kā norādīta izejas tabulā gadījumā, ja darbinieks vēl strādā (statuss S). Ja darbinieks vairs nestrādā, tad dzēšam šādu ierakstu ārā.</h6>
<pre>SQL&#62; MERGE INTO personals
  2  USING personals_src
  3  ON (prs_vards = vards
  4    AND prs_uzvards = uzvards)
  5  WHEN MATCHED THEN
  6  UPDATE SET prs_alga = alga
  7  DELETE WHERE prs_statuss = 'N';
2 rows merged.
SQL&#62; SELECT * FROM personals;
PERS_ID PRS_VARDS  PRS_UZVARDS   PRS_ALGA P
------- ---------- ------------- ----------
      1 JĀNIS      BĒRZIŅŠ       1200     S
      3 PĒTERIS    ZIRNIS        680      S
      4 MAIJA      ZINĪTE        700      N</pre>
<p>Redzam, ka tagad personals tabulā ir tikai 3 ieraksti, ar Delete ir izmests ārā tas ieraksts, kam statuss bija nestrādājošs.</p>
<p><a id="5" title="p5" name="p5"></a><br />
<strong>WHEN NOT MATCHED THEN &#60;darbības ja nosacījums aplams&#62;</strong></p>
<p>Tātad šī klauza izpildās tad, ja nosacījums ir aplams. Loģiski, ka tādā gadījumā mums tikai atliek datus pievienot.</p>
<p><a id="15" title="p15" name="p15"></a></p>
<h6>Piemērs 5. Ja darbinieks nav mērķa tabulā, bet ir izejas datos, tad tādu pievienojam. Faktiski neatšķiras no vienkāršas Insert klauzas.</h6>
<pre>SQL&#62; MERGE INTO personals
  2  USING personals_src
  3  ON (prs_vards = vards
  4    AND prs_uzvards = uzvards)
  5  WHEN NOT MATCHED THEN
  6  INSERT VALUES (prs_seq.nextval, vards, uzvards, alga, 'S');
1 row merged.
SQL&#62; SELECT * FROM personals;
PERS_ID PRS_VARDS  PRS_UZVARDS  PRS_ALGA P
------- ---------- ------------ ----------
      1 JĀNIS      BĒRZIŅŠ      1234,56  S
      2 JĀNIS      KALNIŅŠ      570      N
      3 PĒTERIS    ZIRNIS       680      S
      4 MAIJA      ZINĪTE       700      N
      7 ANNA       LEJA         680      S</pre>
<p>Redzam, ka nācis klāt jauns ieraksts, kas nebija iepriekš. Vairāk klauzu Merge teikumam Oraclē nav. Līdz ar to tiem cilvēkiem, kas ir izlasījuši rakstu par <a href="http://datubazes.wordpress.com/2008/05/20/sql-server-merge/" target="_self">SQL Server Merge sintaksi</a> varētu rasties pamatots jautājums - vai ir iespējams dabūt arī to funkcionalitāti, kas tika rādīta iepriekšējā rakstā, t.i., piemēram, tos ierakstus, kas nav izejas datos, bet ir mērķa datos, dzēst ārā? Ir iespējams, tikai šoreiz ir jārīkojas mazliet viltīgāk. Tas nav panākams triviāli, jo galvenais mērķis Merge teikumam ir lielu datu apjomu salīdzināšana un šajos scenārijos, katrā reizē normāli visa kopa netiek atjaunota, bet tiek atjaunota tikai kāda tās daļa vai arī likti papildus ieraksti klāt. Bet nu OK, kā tad to panākt? Jāmodificē mazliet izejas datu kopa. Atceramies, ka izejas dati var būt arī apakšpieprasījums - ne tikai vienkārša tabula - tātad jāmodificē apakšpieprasījums tādā veidā, lai arī tajā parādītos tie dati, ko vajag dzēst. Šeit noder <a href="http://datubazes.wordpress.com/2008/03/04/outer-join/" target="_self">FULL OUTER JOIN</a> klauza, kas vispirms izejas datu tabulu savieno ar mērķa datu tabulu. Nākošajā piemērā skatamies kā pamazām tiek uzbūvēts nepieciešamais MERGE teikums, kurš dara šādas lietas:</p>
<ul>
<li>tiem darbiniekiem, kas ir abās kopās un strādā, tiek koriģētas algas;</li>
<li>tie darbinieki, kas ir abās kopās un nestrādā, tiek dzēsti;</li>
<li>tie darbinieki, kas ir izejas kopā, bet nav mērķa kopā, tiek tai pievienoti;</li>
<li>tiem darbiniekiem, kas nav izejas kopā, bet ir mērķa kopā un statuss ir “strādā”, tiek uzstādīts jauns statuss “neskaidrs”;</li>
<li>tie darbinieki, kas nav izejas kopā, bet ir mērķa kopā un statuss ir “nestrādā”, tiek dzēsti.</li>
</ul>
<p>Tatad lai tiktu pie beigu Merge teikuma veicam to vairākos soļos:</p>
<ul>
<li>Vispirms izveidojam pilnu ārējo savienojumu abām tabulām;</li>
<li>Tad balstoties uz to kā abās tabulās ir izvietoti dati uzstādam karodziņu;</li>
<li>Visbeidzot izpildam pašu MERGE SQL teikumu.</li>
</ul>
<p><a id="16" title="p16" name="p16"></a></p>
<h6>Piemērs 6. Izveidojam apakšvaicājumu MERGE izejas datiem.</h6>
<pre>SQL&#62; SELECT * FROM personals
  2  FULL OUTER JOIN personals_src ON
  3  (prs_vards = vards
  4    AND prs_uzvards = uzvards);
PERS_ID PRS_VARDS PRS_UZVARDS PRS_ALGA P VARDS  UZVARDS  ALGA
------- --------- ----------- -------- - ------ -------- ----
      1 JĀNIS     BĒRZIŅŠ     1234,56  S JĀNIS  BĒRZIŅŠ  1200
      2 JĀNIS     KALNIŅŠ     570      N JĀNIS  KALNIŅŠ  400
      4 MAIJA     ZINĪTE      700      N
      3 PĒTERIS   ZIRNIS      680      S
                                         ANNA   LEJA     680

SQL&#62; SELECT nvl(vards, prs_vards) vards,
  2       nvl(uzvards, prs_uzvards) uzvards, alga,
  3    CASE WHEN vards IS NOT NULL
  4          AND prs_vards IS NOT NULL
  5          AND prs_statuss = 'S' THEN 'upd_alga'
  6         WHEN vards IS NOT NULL
  7          AND prs_vards IS NOT NULL
  8          AND prs_statuss = 'N' THEN 'del'
  9         WHEN vards IS NOT NULL AND prs_vards IS NULL THEN 'ins'
 10         WHEN vards IS NULL
 11          AND prs_vards IS NOT NULL
 12          AND prs_statuss = 'S' THEN 'upd_statuss'
 13         WHEN vards IS NULL
 14          AND prs_vards IS NOT NULL
 15          AND prs_statuss = 'N' THEN 'del'
 16    END karodzins
 17  FROM (
 18    SELECT * FROM personals
 19    FULL OUTER JOIN personals_src ON
 20    (prs_vards = vards
 21      AND prs_uzvards = uzvards)
 22  )
 23  /

VARDS   UZVARDS   ALGA KARODZINS
------  -------- ----- -----------
JĀNIS   BĒRZIŅŠ   1200 upd_alga
JĀNIS   KALNIŅŠ   400  del
MAIJA   ZINĪTE         del
PĒTERIS ZIRNIS         upd_statuss
ANNA    LEJA      680  ins</pre>
<p><a id="17" title="p17" name="p17"></a></p>
<h6>Piemērs 7. Izveidojam MERGE teikumu atbilstoši augšminētajam pilnajam algoritmam.</h6>
<pre>SQL&#62; MERGE INTO personals
  2  USING (
  3    SELECT nvl(vards, prs_vards) vards,
  4         nvl(uzvards, prs_uzvards) uzvards, alga,
  5      CASE WHEN vards IS NOT NULL
  6            AND prs_vards IS NOT NULL
  7            AND prs_statuss = 'S' THEN 'upd_alga'
  8           WHEN vards IS NOT NULL
  9            AND prs_vards IS NOT NULL
 10            AND prs_statuss = 'N' THEN 'del'
 11           WHEN vards IS NOT NULL AND prs_vards IS NULL THEN 'ins'
 12           WHEN vards IS NULL
 13            AND prs_vards IS NOT NULL
 14            AND prs_statuss = 'S' THEN 'upd_statuss'
 15           WHEN vards IS NULL
 16            AND prs_vards IS NOT NULL
 17            AND prs_statuss = 'N' THEN 'del'
 18      END karodzins
 19    FROM (
 20      SELECT * FROM personals
 21      FULL OUTER JOIN personals_src ON
 22      (prs_vards = vards
 23        AND prs_uzvards = uzvards)
 24    )
 25  )
 26  ON (prs_vards = vards
 27    AND prs_uzvards = uzvards)
 28  WHEN MATCHED THEN UPDATE
 29  SET prs_alga = (CASE karodzins WHEN 'upd_alga'
 30                    THEN alga ELSE prs_alga END),
 31    prs_statuss = (CASE karodzins WHEN 'upd_statuss'
 32                   THEN '?' ELSE prs_statuss END)
 33  DELETE WHERE karodzins = 'del'
 34  WHEN NOT MATCHED THEN
 35  INSERT VALUES (prs_seq.nextval, vards, uzvards, alga, 'S')
 36  /

5 rows merged.

SQL&#62; SELECT * FROM personals;

PERS_ID PRS_VARDS PRS_UZVARDS  PRS_ALGA P
------- --------- ------------ -------- -
      1 JĀNIS     BĒRZIŅŠ      1200     S
      3 PĒTERIS   ZIRNIS       680      ?
     19 ANNA      LEJA         680      S</pre>
<p>Kā redzams, šis SQL Merge teikums izskatās diezgan garš un pirmajā brīdī varbūt nav nemaz tik vienkārši izsekot tam visam līdzi, bet galvenā ideja, ko atcerēties ir tāda, ka mazliet padomājot gala rezultātā šo visu diezgan sarežģīto algoritmu var paveikt ar vienu SQL teikumu.</p>
<h3>Kas jāatceras papildus</h3>
<ul>
<li>Kā jau tika minēts augstāk, katru rindu var koriģēt tikai vienreiz, tātad raugieties, lai salīdzināšanas nosacījums būtu pietiekami stingrs un vienam mērķa tabulas ierakstam atbilstu ne vairāk kā viens izejas tabulas ieraksts.</li>
<li>Merge teikumā nedrīkst koriģēt salīdzināšanas nosacījumā ietvertās kolonas, citādi būs kļūda.</li>
<li>Ja Jūs izmantojat sekvences Merge Insert klauzā, tad esat gatavi, ka tājās parādīsies potenciāli diezgan lieli "caurumi", jo sekvenču vērtības tiek ģenerētas katrai izejas kopas rindai pirms tiek noskaidrots, vai šo rindu pievienos vai koriģēs, vai nedarīs neko. Vairāk par to kā un kāpēc tas tā notiek var lasīt mana angliskā emuāra ierakstā <a href="http://gplivna.blogspot.com/2008/05/sql-merge-and-sequence-gaps-i-hope-you.html" target="_blank">SQL Merge and Sequence gaps</a>. Normāli tam nevajadzētu radīt nekādas problēmas, jo sekvences tiek izmantotas tikai kā unikālu skaitļu ģeneratori un nekas vairāk.</li>
<li>Merge teikums nestrādā, ja tiek izmantota <em>Fine-grained access control</em> (Oracle iespēja, kas lietotājam nemanot fonā piekārto SQL teikumiem papildus Where nosacījumus, kurus ir iespējams dinamiski izveidot).</li>
</ul>
<h3>Merge teikums citās DBVS</h3>
<p>Merge teikums ir pieejams arī citās DBVS, piemēram DB2 un <a href="http://archives.postgresql.org/pgsql-hackers/2008-04/msg01475.php" target="_blank">šķiet to taisās ieviest arī PostgreSQL</a>. MySQL Merge teikuma nav, bet ir šai datubāzei specifiski SQL teikumi, kas nekur citur nav, piemēram, REPLACE un INSERT ... ON DUPLICATE KEY UPDATE un kas kaut kādā mērā var tikt pielietoti, lai daļēji simulētu Merge funkcionalitāti.</p>
<h3>Tālākā lasāmviela</h3>
<ul>
<li><a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_9016.htm#i2081218" target="_blank">Oracle Merge sintakse</a>;</li>
<li><a href="http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0010873.htm" target="_blank">DB2 Merge sintakse</a>;</li>
<li><a href="http://datubazes.wordpress.com/2008/05/20/sql-server-merge/" target="_self">SQL Server Merge sintakse</a>;</li>
<li><a href="http://dev.mysql.com/doc/refman/6.0/en/replace.html" target="_blank">MySQL Replace sintakse</a>;</li>
<li><a href="http://dev.mysql.com/doc/refman/6.0/en/insert-on-duplicate.html" target="_blank">MySQL Insert ... On Duplicate Key Update sintakse</a>.</li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[DB2 SQL0964　発生]]></title>
<link>http://musoshigoto.wordpress.com/?p=28</link>
<pubDate>Thu, 05 Jun 2008 10:40:28 +0000</pubDate>
<dc:creator>yossyno</dc:creator>
<guid>http://musoshigoto.wordpress.com/?p=28</guid>
<description><![CDATA[db2にて
14万件を条件付でdeleteしたら、
SQL0964エラーが発生した。
データベ]]></description>
<content:encoded><![CDATA[<p>db2にて<br />
14万件を条件付でdeleteしたら、<br />
SQL0964エラーが発生した。<br />
データベースのトランザクションログが一杯だということで、<br />
$db2 get dbm cfg &#124; grep DIAGPATH<br />
で<br />
診断データのディレクトリパス　を確認した</p>
<p>MESSAGE : ADM1823E  The active log is full and is held by application handle<br />
          "35".  Terminate this application by COMMIT, ROLLBACK or FORCE<br />
          APPLICATION.</p>
<p>みたいなのが書かれてる。</p>
<p>現在の設定を確認<br />
$db2 get db cfg for xxxxx</p>
<p>ログファイルのサイズ(4K)                     LOGFILSIZ=1024<br />
1次ログファイル数                              LOGPRIMARY=13<br />
2次ログファイル数                              LOGSECOND=4</p>
<p>になってる。<br />
別に少なくないじゃんと思うが<br />
まあ、出来ないのだからこの際仕方ないから<br />
サイズを倍の8Mにした。</p>
<p>$db2 update db cfg for xxxx using LOGFILSIZ 2048</p>
<p>DB再起動</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[DB2　autocommit解除]]></title>
<link>http://musoshigoto.wordpress.com/?p=27</link>
<pubDate>Thu, 05 Jun 2008 10:12:00 +0000</pubDate>
<dc:creator>yossyno</dc:creator>
<guid>http://musoshigoto.wordpress.com/?p=27</guid>
<description><![CDATA[db2にて、普通にinsertとかupdateとかしてたら、
rollbackしようとしても、「な]]></description>
<content:encoded><![CDATA[<p>db2にて、普通にinsertとかupdateとかしてたら、<br />
rollbackしようとしても、「なんのこと？」みたいにエラーが出る<br />
$db2 list command options<br />
で設定内容を確認すると<br />
オートコミット　ON<br />
とかなってるじゃない。。。</p>
<p>Linux環境では<br />
export DB2OPTIONS=+c<br />
って書いてあるが、win環境で環境変数を変えても<br />
ちっとも変わらないので<br />
これからは、事前に調べて<br />
db2 +c ＳＱＬ文<br />
って打たないとダメです。</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Livro de DB2 em português, grátis]]></title>
<link>http://jmmwrite.wordpress.com/?p=123</link>
<pubDate>Wed, 04 Jun 2008 14:56:58 +0000</pubDate>
<dc:creator>julianommartins</dc:creator>
<guid>http://jmmwrite.wordpress.com/?p=123</guid>
<description><![CDATA[Meus amigos embaixadores Andrea Rodacki e da Caroline Perin fizeram um ótimo trabalho de tradução]]></description>
<content:encoded><![CDATA[<p><a href="http://jmmwrite.files.wordpress.com/2008/06/cover-thumbnail.jpg"><img class="alignleft size-medium wp-image-124" src="http://jmmwrite.wordpress.com/files/2008/06/cover-thumbnail.jpg?w=108" alt="Livro de DB2 em português, grátis!" width="108" height="142" /></a>Meus amigos embaixadores Andrea Rodacki e da Caroline Perin fizeram um ótimo trabalho de tradução do livro“GETTING STARTED WITH DB2 Express-C”.</p>
<p>O livro pode ser utilizado para ter uma boa introdução sobre o DB2. Recomendadíssimo!</p>
<p>O mesmo pode ser baixado gratuitamente daqui: <a href="http://www.ibm.com/developerworks/wikis/display/DB2/FREE+Book-+Getting+Started+with+DB2+Express-C" target="_blank">http://www.ibm.com/developerworks/wikis/display/DB2/FREE+Book-+Getting+Started+with+DB2+Express-C</a></p>
<p>Enjoy!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[DB2 システム時刻　書込み]]></title>
<link>http://musoshigoto.wordpress.com/?p=26</link>
<pubDate>Wed, 04 Jun 2008 09:25:19 +0000</pubDate>
<dc:creator>yossyno</dc:creator>
<guid>http://musoshigoto.wordpress.com/?p=26</guid>
<description><![CDATA[oracleでいう
to_char(sysdate,YYYYMMDDH24MISS)
が
DB2では
char(replace(replace(char(current tim]]></description>
<content:encoded><![CDATA[<p>oracleでいう<br />
to_char(sysdate,YYYYMMDDH24MISS)<br />
が<br />
DB2では<br />
char(replace(replace(char(current timestamp),'-',''),'.',''),14)<br />
なのだ。</p>
<p>ちょい面倒</p>
]]></content:encoded>
</item>

</channel>
</rss>
