<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rutger's Weblog &#187; Mysql</title>
	<atom:link href="http://www.rutgerwessels.nl/category/mysql/feed" rel="self" type="application/rss+xml" />
	<link>http://www.rutgerwessels.nl</link>
	<description></description>
	<lastBuildDate>Sat, 04 Sep 2010 14:00:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>SQL Formatter</title>
		<link>http://www.rutgerwessels.nl/2007/02/15/sql-formatter</link>
		<comments>http://www.rutgerwessels.nl/2007/02/15/sql-formatter#comments</comments>
		<pubDate>Thu, 15 Feb 2007 14:50:29 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2007/02/15/sql-formatter/</guid>
		<description><![CDATA[Een soort HTML Tidy maar dan voor SQL. Handig voor lange SQL statements die nogal genest zijn. http://www.wangz.net/cgi-bin/pp/gsqlparser/sqlpp/sqlformat.tpl]]></description>
			<content:encoded><![CDATA[<p>Een soort <a href="http://tidy.sourceforge.net/">HTML Tidy</a> maar dan voor SQL. Handig voor lange SQL statements die nogal genest zijn.</p>
<p><a href="http://www.wangz.net/cgi-bin/pp/gsqlparser/sqlpp/sqlformat.tpl">http://www.wangz.net/cgi-bin/pp/gsqlparser/sqlpp/sqlformat.tpl</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2007/02/15/sql-formatter/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MS SQL naar MySQL converteren</title>
		<link>http://www.rutgerwessels.nl/2006/09/25/ms-sql-naar-mysql-converteren</link>
		<comments>http://www.rutgerwessels.nl/2006/09/25/ms-sql-naar-mysql-converteren#comments</comments>
		<pubDate>Mon, 25 Sep 2006 19:30:38 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/09/25/ms-sql-naar-mysql-converteren/</guid>
		<description><![CDATA[Vandaag ontving ik een backup bestand van een database die was opgeslagen in Microsoft SQL Server. Dat is niet echt handig als je niet over SQL server beschikt. Gelukkig heeft Microsoft een soort gratis SQL server light onder de naam SQL Server Express. Bovendien leveren ze ook gratis een GUI voor SQL server: SQL Server [...]]]></description>
			<content:encoded><![CDATA[<p>Vandaag ontving ik een backup bestand van een database die was opgeslagen in Microsoft SQL Server. Dat is niet echt handig als je niet over SQL server beschikt. Gelukkig heeft Microsoft een soort gratis SQL server light onder de naam <a href="http://msdn.microsoft.com/vstudio/express/sql/">SQL Server Express</a>. Bovendien leveren ze ook gratis een GUI voor SQL server: SQL Server Management Studio Express. Nadat ik deze had geÃ¯nstalleerd kon ik met behulp van de instructies op <a href="http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/sqlbackuprest.mspx">deze pagina</a> de backup installeren op mijn eigen installatie van SQL Express.</p>
<p>Op <a href="http://www.kofler.cc/mysql/mssql2mysql.html">http://www.kofler.cc/mysql/mssql2mysql.html</a> is een VB script te vinden dat gebruikt kan worden om een MS SQL database te converteren naar MySQL. Deze code dient geplakt te worden in een VBA-module zoals die in Word aanwezig is. Daarna de constanten bovenin dit script editen, met name <code>Const MSSQL_HOST = "(local)"</code>: Deze moest ik aanpassen naar &#8220;MSHOME\SQLEXPRESS&#8221;. De standaardsetting werkt niet met SQL Express. Het VB Script kan rechtstreeks naar een mysql database schrijven maar ook naar een tekstbestand. </p>
<p>Dit tekstbestand kan dan later geÃ¯mporteerd worden in MySQL. Het vereist nog wel enige nabewerking (ik kwam auto_increment waarden tegen die door het scriptje niet als primaire sleutel waren gedefinieerd) maar mijn doel was toch een read-only situatie om verder te converteren dus dat geeft niets.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/09/25/ms-sql-naar-mysql-converteren/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tekst sorteren als numeriek</title>
		<link>http://www.rutgerwessels.nl/2006/06/29/tekst-sorteren-als-numeriek</link>
		<comments>http://www.rutgerwessels.nl/2006/06/29/tekst-sorteren-als-numeriek#comments</comments>
		<pubDate>Thu, 29 Jun 2006 07:47:29 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/06/29/tekst-sorteren-als-numeriek/</guid>
		<description><![CDATA[Als je dit hebt: mysql> SELECT version -> FROM version_sorting -> ORDER BY version; +---------+ &#124; version &#124; +---------+ &#124; 1 &#124; &#124; 10 &#124; &#124; 11 &#124; &#124; 12 &#124; &#124; 2a &#124; &#124; 4b &#124; &#124; 5a &#124; &#124; 5b &#124; +---------+ 8 rows in set (0.03 sec) Dan kun je sorteren met: [...]]]></description>
			<content:encoded><![CDATA[<pre>Als je dit hebt:</pre>
<pre>mysql> SELECT version
-> FROM version_sorting
-> ORDER BY version;
+---------+
| version |
+---------+
| 1       |
| 10      |
| 11      |
| 12      |
| 2a      |
| 4b      |
| 5a      |
| 5b      |
+---------+
8 rows in set (0.03 sec)</pre>
<pre>Dan kun je sorteren met:</pre>
<pre>mysql> SELECT version
-> FROM version_sorting
-> ORDER BY CAST(version AS UNSIGNED), version;
+---------+
| version |
+---------+
| 1       |
| 2a      |
| 4b      |
| 5a      |
| 5b      |
| 10      |
| 11      |
| 12      |
+---------+</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/06/29/tekst-sorteren-als-numeriek/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wachtwoord vergeten van Mysql?</title>
		<link>http://www.rutgerwessels.nl/2006/06/20/wachtwoord-vergeten-van-mysql</link>
		<comments>http://www.rutgerwessels.nl/2006/06/20/wachtwoord-vergeten-van-mysql#comments</comments>
		<pubDate>Tue, 20 Jun 2006 10:11:16 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/06/20/wachtwoord-vergeten-van-mysql/</guid>
		<description><![CDATA[Als je niet meer in de mysql database kan: Stappenplan: Stop de mysqlserver (bv /etc/init.d/mysql stop) Start de mysqlserver mbv save_mysqld &#8211;skip-grant-tables Start mysql en update de user tabel:update user SET Password = PASSWORD(&#8216;hetwachtwoord&#8217;) WHERE Host=&#8217;localhost&#8217; AND User=&#8217;root&#8217;; Kill de mysql processen: killall mysqld Start de server opnieuw: /etc/init.d/mysql start) En vergeet het wachtwoord nooit [...]]]></description>
			<content:encoded><![CDATA[<p>Als je niet meer in de mysql database kan:</p>
<p>Stappenplan:</p>
<ol>
<li>Stop de mysqlserver (bv /etc/init.d/mysql stop)</li>
<li>Start de mysqlserver mbv save_mysqld &#8211;skip-grant-tables</li>
<li>Start mysql en update de user tabel:update user SET Password = PASSWORD(&#8216;hetwachtwoord&#8217;) WHERE Host=&#8217;localhost&#8217; AND User=&#8217;root&#8217;;</li>
<li>Kill de mysql processen:  killall mysqld</li>
<li>Start de server opnieuw: /etc/init.d/mysql start)</li>
</ol>
<p>En vergeet het wachtwoord nooit meer&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/06/20/wachtwoord-vergeten-van-mysql/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dumpen van MySQL 4.1 naar 4.0</title>
		<link>http://www.rutgerwessels.nl/2006/06/20/dumpen-van-mysql-41-naar-40</link>
		<comments>http://www.rutgerwessels.nl/2006/06/20/dumpen-van-mysql-41-naar-40#comments</comments>
		<pubDate>Tue, 20 Jun 2006 09:39:07 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/06/20/dumpen-van-mysql-41-naar-40/</guid>
		<description><![CDATA[Eindelijk: mysqldump â€“create-options â€“compatible=mysql40 db_name > dump_file]]></description>
			<content:encoded><![CDATA[<p>Eindelijk:  <code>mysqldump â€“create-options â€“compatible=mysql40 db_name > dump_file</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/06/20/dumpen-van-mysql-41-naar-40/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Paging in Mysql CLI</title>
		<link>http://www.rutgerwessels.nl/2006/04/14/paging-in-mysql-cli</link>
		<comments>http://www.rutgerwessels.nl/2006/04/14/paging-in-mysql-cli#comments</comments>
		<pubDate>Fri, 14 Apr 2006 06:46:05 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/04/14/paging-in-mysql-cli/</guid>
		<description><![CDATA[Via: paging in de mysql command line interface. Na geploeter met limit om een indruk van datasets te krijgen kan het ook zo: mysql> \P less mysql> PAGER set to 'less' mysql> select foo,bar from table\G]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.phpcult.com/archives/48-MySQL-Tip-Paging-your-results-in-the-MySQL-CLI.html">Via</a>: paging in de mysql command line interface. Na geploeter met limit om een indruk van datasets te krijgen kan het ook zo:<br />
<code><br />
mysql> \P less<br />
mysql> PAGER set to 'less'<br />
mysql> select foo,bar from table\G<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/04/14/paging-in-mysql-cli/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Schaalbaarheid PHP/Mysql</title>
		<link>http://www.rutgerwessels.nl/2006/04/11/schaalbaarheid-phpmysql</link>
		<comments>http://www.rutgerwessels.nl/2006/04/11/schaalbaarheid-phpmysql#comments</comments>
		<pubDate>Tue, 11 Apr 2006 11:38:35 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/04/11/schaalbaarheid-phpmysql/</guid>
		<description><![CDATA[Interessant verhaal over de schaalbaarheid van PHP/Mysql/Java. Als voorbeeld wordt Digg aangehaald. Belangrijkste conclusies: PHP schaalt prima naar miljoenen hits per dag, het is de backend die problemen veroorzaakt. Wel moet PHP wat getweakt worden. Een hele geruststelling.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.oreillynet.com/onlamp/blog/2006/04/digg_phps_scalability_and_perf.html">Interessant verhaal</a> over de schaalbaarheid van PHP/Mysql/Java. Als voorbeeld wordt Digg aangehaald. Belangrijkste conclusies: PHP schaalt prima naar miljoenen hits per dag, het is de backend die problemen veroorzaakt. Wel moet PHP wat getweakt worden. Een hele geruststelling.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/04/11/schaalbaarheid-phpmysql/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mysql Diff dinges</title>
		<link>http://www.rutgerwessels.nl/2006/04/06/mysql-diff-dinges</link>
		<comments>http://www.rutgerwessels.nl/2006/04/06/mysql-diff-dinges#comments</comments>
		<pubDate>Thu, 06 Apr 2006 13:19:54 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/2006/04/06/mysql-diff-dinges/</guid>
		<description><![CDATA[Handig! Een tool om twee mysql structuren met elkaar te vergelijken en bij te werken. Vaak nodig gehad om twee database-structuren synchroon te houden. Zeker als je code gaat releasen die een andere databasestructuur vereist is het wel handig als je zeker weet dat twee databases dezelfde structuur hebben. Dus deze tool kwam als geroepen. [...]]]></description>
			<content:encoded><![CDATA[<p>Handig! Een tool om twee mysql structuren met elkaar te vergelijken en bij te werken. Vaak nodig gehad om twee database-structuren synchroon te houden. Zeker als je code gaat releasen die een andere databasestructuur vereist is het wel handig als je zeker weet dat twee databases dezelfde structuur hebben. Dus <a href="http://www.adamspiers.org/computing/mysqldiff/">deze tool</a> kwam als geroepen.</p>
<p>Helaas werkte tests van de Mysql::Diff module niet met mysql 4.1: <code>perl -MCPAN -e 'install Mysql::Diff'</code> faalde helaas op de tests. Maar toen ik de module dan maar gewoon installeerde zonder de tests probeerde ik het meegeleverde scriptje mysqldiff te runnen, met als database 1 de productieversie en database 2 mijn eigen development versie. </p>
<p>Het scriptje vergelijkt de structuur van twee databases. De eerste database is de achterlopende, dus de database die je wilt bijwerken. De tweede database bevat de gewenste structuur.</p>
<p>Dat leverde het volgende resultaat:<br />
<code><br />
ALTER TABLE `wikied_locks` DROP COLUMN `session_id`; # was varchar(32) NOT NULL default ''<br />
ALTER TABLE `wikied_locks` ADD COLUMN `userid` int(11) unsigned default NULL;<br />
ALTER TABLE `wikied_searchlog` ADD COLUMN `filter` varchar(255) NOT NULL default '';<br />
ALTER TABLE `wikied_searchlog` ADD COLUMN `ip` int(11) NOT NULL default '0';<br />
</code><br />
En dat kan rechtstreeks op de productieserver worden toegepast.</p>
<p>http://www.adamspiers.org/computing/mysqldiff/</p>
<p>(en op CPAN: http://search.cpan.org/~aspiers/MySQL-Diff-0.33/ )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/04/06/mysql-diff-dinges/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Onthouden</title>
		<link>http://www.rutgerwessels.nl/2006/03/24/onthouden</link>
		<comments>http://www.rutgerwessels.nl/2006/03/24/onthouden#comments</comments>
		<pubDate>Fri, 24 Mar 2006 10:19:06 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/?p=18</guid>
		<description><![CDATA[Om alles voor en inclusief de laatste &#8216;/&#8217; te wissen: update wikied_pages set path = substring_index(path, '/', -1);]]></description>
			<content:encoded><![CDATA[<p>Om alles voor en inclusief de laatste &#8216;/&#8217; te wissen:<br />
<code>update wikied_pages set path = substring_index(path, '/', -1); </code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/03/24/onthouden/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mysql_insert_id() en InnoDB</title>
		<link>http://www.rutgerwessels.nl/2006/03/22/mysql_insert_id-en-innodb</link>
		<comments>http://www.rutgerwessels.nl/2006/03/22/mysql_insert_id-en-innodb#comments</comments>
		<pubDate>Wed, 22 Mar 2006 10:58:45 +0000</pubDate>
		<dc:creator>rutger</dc:creator>
				<category><![CDATA[Mysql]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.rutgerwessels.nl/log/?p=17</guid>
		<description><![CDATA[Bij gebruik van transacties geeft de php-functie mysql_insert_id() verschillende waarden, afhankelijk van wanneer je het aanroept. Wanneer je mysql_insert_id() aanroept voor de commit, dan is de waarde correct. Echter na de commit is de waarde 0. Mysql &#8220;SELECT LAST_INSERT_ID&#8221; geeft wel de correcte waarde, maar dan weer niet na een ROLLBACK. in PHP:]]></description>
			<content:encoded><![CDATA[<p>Bij gebruik van transacties geeft de php-functie mysql_insert_id() verschillende waarden, afhankelijk van wanneer je het aanroept. Wanneer je mysql_insert_id() aanroept <em>voor</em> de commit, dan is de waarde correct. Echter <em>na</em> de commit is de waarde 0. Mysql &#8220;SELECT LAST_INSERT_ID&#8221; geeft wel de correcte waarde, maar dan weer niet na een ROLLBACK.</p>
<p>in PHP:<br />
<span id="more-17"></span></p>
<p><code><?php</p>
<p>mysql_connect("localhost", "root", "");</p>
<p>mysql_query("CREATE DATABASE insertidtest");<br />
mysql_query("USE insertidtest");<br />
mysql_query("CREATE TABLE lastinsert (id INT PRIMARY KEY AUTO_INCREMENT) TYPE=InnoDB");</p>
<p>echo "insert a value without transaction:\n";<br />
mysql_query("INSERT INTO lastinsert VALUES ('')");<br />
echo "\t mysql_insert_id():".mysql_insert_id()."\n";</p>
<p>echo "insert a value with transaction:\n";<br />
mysql_query("START TRANSACTION");<br />
mysql_query("INSERT INTO lastinsert VALUES ('')");<br />
echo "\t before commit:mysql_insert_id():".mysql_insert_id()."\n";<br />
mysql_query("COMMIT");<br />
echo "\t after commit:mysql_insert_id():".mysql_insert_id()."\n";<br />
$res = mysql_query("SELECT LAST_INSERT_ID()");<br />
$row = mysql_fetch_row($res);<br />
echo "\t SQL LAST_INSERT_ID():".$row[0]."\n";</p>
<p>echo "insert a value with transaction:\n";<br />
mysql_query("START TRANSACTION");<br />
mysql_query("INSERT INTO lastinsert VALUES ('')");<br />
echo "\t before rollback:mysql_insert_id():".mysql_insert_id()."\n";<br />
mysql_query("ROLLBACK");<br />
echo "\t after rollback:mysql_insert_id():".mysql_insert_id()."\n";<br />
$res = mysql_query("SELECT LAST_INSERT_ID()");<br />
$row = mysql_fetch_row($res);<br />
echo "\t SQL LAST_INSERT_ID():".$row[0]."\n";</p>
<p>echo "Content of table:\n";<br />
$res = mysql_query("SELECT * FROM lastinsert");<br />
while ($row = mysql_fetch_row($res)) {<br />
    echo "\t$row[0]\n";<br />
}</p>
<p>mysql_query("DROP DATABASE insertidtest");<br />
mysql_close();</p>
<p></code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rutgerwessels.nl/2006/03/22/mysql_insert_id-en-innodb/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
