<?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>ubuntublog.ch &#187; SQL</title>
	<atom:link href="http://ubuntublog.ch/tag/sql/feed" rel="self" type="application/rss+xml" />
	<link>http://ubuntublog.ch</link>
	<description>Debian und Ubuntu beobachtet</description>
	<lastBuildDate>Thu, 17 May 2012 06:51:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Linux-B&#252;cher und artverwandte Schinken</title>
		<link>http://ubuntublog.ch/allgemein/linux-buecher-und-artverwandte-schinken</link>
		<comments>http://ubuntublog.ch/allgemein/linux-buecher-und-artverwandte-schinken#comments</comments>
		<pubDate>Fri, 22 Jan 2010 06:15:04 +0000</pubDate>
		<dc:creator>Roman Hanhart</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Applikationen]]></category>
		<category><![CDATA[Kurz notiert]]></category>
		<category><![CDATA[Bücher]]></category>
		<category><![CDATA[Lesen]]></category>
		<category><![CDATA[Modellierung]]></category>
		<category><![CDATA[MySQL PHP]]></category>
		<category><![CDATA[MySQL Workbench]]></category>
		<category><![CDATA[Normalisierung]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://ubuntublog.ch/?p=6785</guid>
		<description><![CDATA[Mittlerweile konnte ich mir etwas Zeit nehmen und meine B&#252;cher im Gestell in einer kleinen Datenbank erfassen und online stellen. Das kleine Projekt ist soweit gut gelaufen, es ist zwar noch nicht ganz fertig, die HTML-Validit&#228;t ist noch im Argen und ausserdem fehlen noch einige Funktionen, die ich im Laufe der Zeit einpflegen werde. Wie [...]]]></description>
			<content:encoded><![CDATA[<p>Mittlerweile konnte ich mir etwas Zeit nehmen und meine B&#252;cher im Gestell in einer <a href="http://lesen.tuxhart.ch" class="liexternal">kleinen Datenbank</a> erfassen und online stellen. Das kleine Projekt ist soweit gut gelaufen, es ist zwar noch nicht ganz fertig, die <a href="http://validator.w3.org/check?uri=http%3A%2F%2Flesen.tuxhart.ch&#038;charset=%28detect+automatically%29&#038;doctype=Inline&#038;group=0" class="liexternal">HTML-Validit&#228;t</a> ist noch im Argen und ausserdem fehlen noch einige Funktionen, die ich im Laufe der Zeit einpflegen werde. Wie es bei Kindern jeden Alters &#252;blich ist, konnte ich nicht warten, bis alles sauber fertig ist und habe sie DB bereits ver&#246;ffentlicht.</p>
<p><a href="http://lesen.tuxhart.ch" class="liimagelink"><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/bdb-0.png" alt="" title="http://lesen.tuxhart.ch" width="480" height="468" class="alignnone size-full wp-image-6788" /></a></p>
<p>Durch <a href="http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen" class="liinternal">diesen Beitrag</a> konnte ich sehr viel lernen, denn die <a href="http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen#comments" class="liinternal">Kommentare</a> sind gespickt mit guten Werkzeugen, um sich an die Modellierung einer Datenbank heranzuwagen. Die Datenbank, die ich erzeugen wollte, ist ja nicht weiter komplex, eher einfach und simpel gestrickt; passend zu meiner Person. Die Datenbank bildet die B&#252;cher zum Thema Linux und Schreiben aus meinem B&#252;cherregal ab, zeigt dazu den Verlag und die Autoren sowie ein paar weitere Meta-Daten. Dazu gibt es ein Link zu <a href="http://amazon.de" class="liexternal">Amazon</a> und je nach dem noch weitere URLs zu diesem Buch. <a href="http://twitter.com/" class="liexternal">Twitter</a>, <a href="https://identi.ca/thurgau/all" class="liexternal">identi.ca</a> k&#246;nnen direkt mit dem Buchtitel bedient werden und das Buch l&#228;sst sich auch per Mail mit zwei Klicks und ein paar Anschl&#228;gen weiter empfehlen. Eine minimale <a href="http://lesen.tuxhart.ch/suche/" class="liexternal">Suchfunktion</a> ist da und ausserdem sind Kommentare m&#246;glich.</p>
<p>Bei Letzteren bin ich mir unsicher, ob ich diese Funktion durch eine Benachrichtigung erweitern soll, welche ausgesandt wird, wenn weitere Kommentare zu einem Buch dazukommen. Dazu m&#252;sste ich aber die E-Mail-Adresse der kommentierenden Person abfragen; ich finde es jedoch sehr sympathisch, dass ich genau das im Moment nicht tue. Man kann kommentieren, ohne &#8220;verbindliche Angaben&#8221; abgeben zu m&#252;ssen. Solange hier nicht allzuviel l&#228;uft und wenig Kommentare einfliessen, lasse ich es wohl, wie es ist. Der <a href="http://lesen.tuxhart.ch/single.php?IDBuch=11#Kommentar" class="liexternal">erste Kommentar</a> hinterlegte &#252;brigens Florian, bei dem ich auf sein <a href="http://blog.bugie.de" class="liexternal">interessantes Blog</a> stiess. </p>
<p>Die Relationen habe ich erstmals im <a href="http://www.mysql.de/products/workbench/" class="liexternal">MySQL Workbench</a> erstellt. Das ging ganz gut. Das Teil l&#228;sst sich ja auch noch f&#252;r kleinere &#220;berwachungsarbeiten nutzen. </p>
<p><a href="http://www.mysql.de/products/workbench/" class="liimagelink"><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/bdb-1.png" alt="" title="MySQL Workbench" width="480" height="359" class="alignnone size-full wp-image-6792" /></a></p>
<p>Ich muss mich aber schon noch etwas tiefer in die Materie einarbeiten; dazu habe ich mir zwei B&#252;cher geleistet, die nat&#252;rlich auch schon in der DB zu finden sind: </p>
<ul>
<li><a href="http://lesen.tuxhart.ch/single.php?IDBuch=34" class="liexternal">PHP &#038; MySQL Von Kopf bis Fuss</a></li>
<li><a href="http://lesen.tuxhart.ch/single.php?IDBuch=33" class="liexternal">Das offizielle MySQL 5 Handbuch</a></li>
</ul>
<p>Darin wird unter vielen andern Themen auch MySQL Workbench angesprochen oder tiefer behandelt. Sobald ich etwas weiter mit den B&#252;cher bin, werde ich dazu noch ein paar S&#228;tze br&#252;nzeln. </p>
<p><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/bdb-3.png" alt="" title="Relationen" width="480" height="305" class="alignnone size-full wp-image-6796" /></p>
<p>Zur Pflege der Daten habe ich eine kleine Verwaltung auf Basis PHP und HTML gebastelt. Dadurch kann ich von &#252;berall her auf die Daten zugreifen, weitere erstellen oder l&#246;schen. Weiter gibt es einen niedlichen <a href="http://de.wikipedia.org/wiki/Cron" rel="nofollow" class="liwikipedia">CronJob</a>, der die Rangliste der B&#252;cher aufgrund der Anzahl Aufrufe einmal am Tag errechnet. Diese Daten zeige ich aber (noch) nicht an. Zus&#228;tzlich wollte ich neu erfasste B&#252;cher &#252;ber <a href="https://identi.ca/thurgau/all" class="liexternal">identi.ca</a> preisgeben und habe dazu <a href="http://code.google.com/p/identica-php/" class="liexternal">identica-php</a> eingesetzt. Dort klappt im Moment die <a href="http://de.wikipedia.org/wiki/UTF-8" rel="nofollow" class="liwikipedia">utf-8-Codierung</a> nicht so, wie ich es will, aber das kriege ich auch noch in den Griff. </p>
<p><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/bdb-4.png" alt="" title="Verwaltung" width="480" height="468" class="alignnone size-full wp-image-6799" /></p>
<p>Alles in Allem bin ich zufrieden mit dem Teil und meine, dass ich damit der Individualit&#228;t gen&#252;gend Rechnung getragen habe; es ist eine eigene, einfache und friedliche L&#246;sung, statt ein Mainstream-Standard-Werkzeug. </p>

 <div id="aspdf">
								<p>
 <a href="http://ubuntublog.ch/wp-content/plugins/as-pdf/generate.php?post=6785">
 <span>PDF-Datei dieses Artikels erzeugen</span>
 </a>
 <br /><br /></p>
 </div><h2  class="related_post_title">Ähnliche Artikel</h2><ul class="related_post"><li>4. März 2010 -- <a href="http://ubuntublog.ch/allgemein/t3n-mit-wordpress-cheat-sheet" title="t3n mit WordPress Cheat Sheet">t3n mit WordPress Cheat Sheet</a> (5)</li><li>13. Januar 2010 -- <a href="http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen" title="MySQL-Datenbank-Design optisch planen">MySQL-Datenbank-Design optisch planen</a> (33)</li><li>23. April 2009 -- <a href="http://ubuntublog.ch/betriebssystem/die-anarchie-der-hacker-podcast" title="Die Anarchie der Hacker [Podcast]">Die Anarchie der Hacker [Podcast]</a> (10)</li><li>26. November 2008 -- <a href="http://ubuntublog.ch/applikationen/tiny-tiny-rss-ueberzeugt-noch-nicht-ganz" title="Tiny Tiny RSS überzeugt noch nicht ganz">Tiny Tiny RSS überzeugt noch nicht ganz</a> (8)</li><li>29. März 2008 -- <a href="http://ubuntublog.ch/applikationen/mit-liferea-rss-feeds-lesen" title="Mit Liferea RSS-Feeds lesen">Mit Liferea RSS-Feeds lesen</a> (6)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://ubuntublog.ch/allgemein/linux-buecher-und-artverwandte-schinken/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>MySQL-Datenbank-Design optisch planen</title>
		<link>http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen</link>
		<comments>http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen#comments</comments>
		<pubDate>Wed, 13 Jan 2010 06:15:19 +0000</pubDate>
		<dc:creator>Roman Hanhart</dc:creator>
				<category><![CDATA[Applikationen]]></category>
		<category><![CDATA[Access]]></category>
		<category><![CDATA[Datenbank]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Normalisieren]]></category>
		<category><![CDATA[Relation]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://ubuntublog.ch/?p=6658</guid>
		<description><![CDATA[Vor einigen Jahren f&#252;hrte ich eine Datenbank mit all den B&#252;chern, die ich in unseren B&#252;chergestellen zu Hause untergebracht habe. Die Inhalte habe ich damals im Internet ver&#246;ffentlicht. Leider pflegte ich irgendwann diese Daten nicht mehr weiter und heute sind sie so veraltet, dass sie praktisch wertlos sind. Mindestens mit B&#252;chern, die technischen Inhalt aufweisen [...]]]></description>
			<content:encoded><![CDATA[<p>Vor einigen Jahren f&#252;hrte ich eine Datenbank mit all den B&#252;chern, die ich in unseren B&#252;chergestellen zu Hause untergebracht habe. Die Inhalte habe ich damals im Internet ver&#246;ffentlicht. Leider pflegte ich irgendwann diese Daten nicht mehr weiter und heute sind sie so veraltet, dass sie praktisch wertlos sind. Mindestens mit B&#252;chern, die technischen Inhalt aufweisen oder sonst in das Linux-Umfeld passen, m&#246;chte ich gerne wieder eine Sammlung der Daten erstellen und diese zug&#228;nglich machen. Deswegen plante ich ein einfaches Datenbank-Design, damit ich diejenigen Daten mit den Relationen abbilden kann, die ich gerne aufzeigen und verbinden m&#246;chte. Nat&#252;rlich will ich das gerne mit <a href="http://www.mysql.de/" class="liexternal">MySQL</a> und <a href="http://de.wikipedia.org/wiki/PHP" rel="nofollow" class="liwikipedia">PHP</a> realisieren. Eine Alternative w&#228;re f&#252;r diese geringe Datenmenge <a href="http://www.sqlite.org/" class="liexternal">SQLite</a>. </p>
<p>Um solche Sachen zu entwickeln nutze ich in der ersten Phase gerne meinen Ubuntu-Server zu Hause, der von aussen nicht zu erreichen ist &#8211; mindestens bilde ich mir das ein. Dort habe ich per <a href="http://www.phpmyadmin.net" class="liexternal">PHPMyAdmin</a> die n&#246;tige Datenbank und die dazugeh&#246;rigen Tabellen erstellt, die Rechte gerichtet und kontrolliert, ob alles in Ordnung ist. </p>
<p><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/pma.png" alt="" title="PHPMyAdmin" width="480" height="403" class="alignnone size-full wp-image-6667" /></p>
<p>Damit ist aber nur die halbe Arbeit &#8211; nebst dem Abf&#252;llen der Daten &#8211; erledigt, denn die Relationen per SQL-Statement abzuholen, macht mir immer noch grosse M&#252;he. Ungef&#228;hr vor zwei Jahren habe ich <a href="http://ubuntublog.ch/services/mit-microsoft-access-auf-mysql-zugreifen" class="liinternal">hier beschrieben</a>, wie ich diese Herausforderung unter Zuhilfenahme von <a href="http://office.microsoft.com/de-de/access" class="liexternal">Access</a> aus dem Hause Microsoft und dem <a href="http://dev.mysql.com/downloads/connector/odbc/" class="liexternal">ODBC-Connector</a> von MySQL l&#246;se. Dazu fahre ich ein virtuelles XP hoch und verbinde mich via ODBC-Connector unter Access mit dem MySQL-Server. Dort stehen dann grafische Elemente zur Verf&#252;gung, mit denen ich die Relationen zusammenklicken kann.</p>
<p><img src="http://ubuntublog.ch/wp-content/uploads/2010/01/access.png" alt="" title="Microsoft Access" width="480" height="306" class="alignnone size-full wp-image-6671" /></p>
<p>W&#228;ren da nur 1:n-Relationen zu l&#246;sen, br&#228;chte ich das noch halbwegs ohne diese Hilfe zustande. Aber bei meiner Herausforderung kann ja jedes Buch mehr als ein Autor haben. Jeder Autor k&#246;nnte also theoretisch f&#252;r jeden Titel geschrieben haben. Damit entsteht bei einer schlauen Normalisierung eine n:n-Verbindung zwischen den Tabellen Buch und Autor. Und eine n:n-Relation l&#228;sst sich ja bekanntlich nicht in einem Schritt aufl&#246;sen, sondern muss &#252;ber eine Zwischentabelle in zwei 1:n oder n:1-Relationen umgewandelt werden. Damit wird es f&#252;r mein Gehirn schon etwas komplex. Und hier eilt mir in diesem Moment jene L&#246;sung mit Access zu Hilfe. Dort klicke ich die Abfrage zusammen und exportiere dann die SQL-Anweisung. </p>
<p>Wahrscheinlich liesse sich das Ganze auch mit Mitteln aus der Linux-Welt l&#246;sen. <a href="http://de.openoffice.org/product/base.html" class="liexternal">OpenOffice Base</a> und der <a href="https://help.ubuntu.com/community/ODBC" class="liexternal">ODBC-Connector</a> stehen ja zur Verf&#252;gung; probiert habe ich es aber nicht. </p>
<p>Mich interessiert brennend, wie Ihr solche Sachen l&#246;st. Zum Beispiel <a href="http://www.baldenhofer.eu/blog/" class="liexternal">Roland</a>, der ja immerzu solche <a href="http://www.baldenhofer.eu/blog/it/mit_cakephp_in_einer_stunde_zur_applikatio" class="liexternal">Datenbank-Dinger</a> baut, hat sicherlich einen Ansatz bereit, um es anders und besser zu bewerkstelligen. Gibt es Frameworks, die SQL-Abfragen grafisch darstellen? Meine Herausforderung ist nicht das Verst&#228;ndnis der Abfrage an sich, sondern das abschliessende Wandeln in eine valide SQL-Anweisungen. Danke f&#252;r die Hinweise und das Feedback!</p>

 <div id="aspdf">
								<p>
 <a href="http://ubuntublog.ch/wp-content/plugins/as-pdf/generate.php?post=6658">
 <span>PDF-Datei dieses Artikels erzeugen</span>
 </a>
 <br /><br /></p>
 </div><h2  class="related_post_title">Ähnliche Artikel</h2><ul class="related_post"><li>22. Januar 2008 -- <a href="http://ubuntublog.ch/services/mit-microsoft-access-auf-mysql-zugreifen" title="Mit Microsoft Access auf MySQL zugreifen">Mit Microsoft Access auf MySQL zugreifen</a> (0)</li><li>2. Februar 2010 -- <a href="http://ubuntublog.ch/applikationen/webentwicklung-mit-cakephp" title="Webentwicklung mit CakePHP">Webentwicklung mit CakePHP</a> (8)</li><li>23. Juni 2008 -- <a href="http://ubuntublog.ch/applikationen/zugriff-auf-mysql-server-ausserhalb-vom-localhost" title="Zugriff auf MySQL-Server ausserhalb vom localhost">Zugriff auf MySQL-Server ausserhalb vom localhost</a> (2)</li><li>21. Januar 2008 -- <a href="http://ubuntublog.ch/services/mysql-abfragen-speichern-und-nutzen" title="MySQL: Abfragen speichern und nutzen">MySQL: Abfragen speichern und nutzen</a> (0)</li><li>17. Januar 2008 -- <a href="http://ubuntublog.ch/applikationen/mysql-administrator-und-query-browser" title="MySQL Administrator und Query Browser">MySQL Administrator und Query Browser</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen/feed</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>MySQL: Abfragen speichern und nutzen</title>
		<link>http://ubuntublog.ch/services/mysql-abfragen-speichern-und-nutzen</link>
		<comments>http://ubuntublog.ch/services/mysql-abfragen-speichern-und-nutzen#comments</comments>
		<pubDate>Mon, 21 Jan 2008 06:15:41 +0000</pubDate>
		<dc:creator>Roman Hanhart</dc:creator>
				<category><![CDATA[Services]]></category>
		<category><![CDATA[Abfrage]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHPMyAdmin]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://ubuntu.yoda.ch/?p=36</guid>
		<description><![CDATA[Seit der 5er-Version des beliebten Datenbank-Servers MySQL k&#246;nnen endlich Abfragen (Views) gespeichert werden, auf welche dann zugegriffen werden kann, als ob es sich um eine Tabelle handelt. Dadurch k&#246;nnen aufw&#228;ndige Abfragen einmal erstellt und abgelegt werden. Danach greift man auf die zu und kann sie bei Bedarf noch weiter eingrenzen. Bei der im Ubuntu-Server aktuell [...]]]></description>
			<content:encoded><![CDATA[<p>Seit der 5er-Version des beliebten Datenbank-Servers <a href="http://mysql.de" class="liexternal">MySQL</a> k&#246;nnen endlich Abfragen (Views) gespeichert werden, auf welche dann zugegriffen werden kann, als ob es sich um eine Tabelle handelt. Dadurch k&#246;nnen aufw&#228;ndige Abfragen einmal erstellt und abgelegt werden. Danach greift man auf die zu und kann sie bei Bedarf noch weiter eingrenzen.</p>
<p>Bei der im Ubuntu-Server aktuell eingebundenen Version von <a href="http://www.phpmyadmin.net" class="liexternal">PHPMyAdmin</a> (2.10.3deb1ubuntu0.1) k&#246;nnen zwar Abfragen gespeichert werden, aber deren SQL-Anweisungen nachtr&#228;glich nicht angezeigt werden. Stattdessen muss man so gespeicherte Abfragen neu erzeugen und wenn man Mut hat, &#252;berschreiben. Etwas komfortabler geht es mit dem <a href="http://www.mysql.de/products/tools/query-browser/" class="liexternal">Query Browser</a>.</p>
<p>Eine Abfrage wird mit folgender SQL-Anweisung erzeugt:</p>
<p><code>CREATE VIEW `Datenbank`.`Name_der_Abfrage` AS<br />
 SELECT * FROM ``</code></p>
<p>In diesem Beispiel wird die Abfrage als <code>Name_der_Abfrage</code> gespeichert und steht danach &#8211; wie es bei <a href="http://office.microsoft.com/de-de/access/FX100487571031.aspx" class="liexternal">Access</a> als dem Hause Microsoft oder dem grossen Bruder, dem <a href="http://www.microsoft.com/germany/sql/default.mspx" class="liexternal">SQL-Server</a> bekannt ist &#8211; als View zu Verf&#252;gung. Jene kann dann wieder per <code>SELECT</code> aufgerufen werden.</p>
<p>Abfragen ergeben am meisten Sinn, wenn verschiedenen Tabellen, welche eine Relation untereinander kennen, aufgerufen werden. Dazu wird ebenfalls die <code>SELECT</code> Anweisung benutzt, die Relation wird beispielsweise per <code>INNER JOIN ON</code> erstellt. Wer mehr &#252;ber die SQL-Anweisungen wissen m&#246;chte, ist auf <a href="http://www.sql-tips.de/" class="liexternal">sql-tips.de</a> gut bedient. Aber auch dieses <a href="http://www.sql-und-xml.de/sql-tutorial/index.html" class="liexternal">Tutorial</a> ist nicht zu verachten.</p>
<p>Hier ist ein Beispiel, wie zwei Haupttabellen und zwei weitere Hilfstabellen in einer Anfrage zusammengef&#252;hrt werden:</p>
<p><code>select `adr_firmen`.`IDFirma` AS `IDFirma`,`adr_firmen`.`Firma` AS `Firma`,`adr_firmen`.`Zusatz` AS `Zusatz`,`adr_firmen`.`Strasse` AS `Strasse`,`adr_firmen`.`PLZ` AS `PLZ`,`adr_firmen`.`Ort` AS `Ort`,`adr_firmen`.`Land` AS `Land`,`adr_firmen_kontakt`.`IDKontakt` AS `IDKontakt`,`adr_firmen_kontakt`.`Anrede` AS `Anrede`,`adr_firmen_kontakt`.`Vorname` AS `Vorname`,`adr_firmen_kontakt`.`Name` AS `Name`,`adr_firmen_kontakt`.`Titel` AS `Titel`,`adr_firmen_kontakt`.`Funktion` AS `Funktion`,`adr_firmen_kontakt`.`EMail` AS `EMail`,`adr_firmen_kontakt`.`Telefon` AS `Telefon`,`adr_firmen_kontakt`.`Mobile` AS `Mobile`,`adr_firmen_kontakt`.`Fax` AS `Fax`,`adr_firmen_land`.`IDLand` AS `IDLand` from (`adr_firmen_kontakt_anrede` join (`adr_firmen_land` join (`adr_firmen` join `adr_firmen_kontakt` on((`adr_firmen`.`IDFirma` = `adr_firmen_kontakt`.`IDFirma`))) on((`adr_firmen_land`.`IDLand` = `adr_firmen`.`Land`))) on((`adr_firmen_kontakt_anrede`.`IDAnrede` = `adr_firmen_kontakt`.`Anrede`)));</code></p>
<p>Die Tabelle <code>adr_firmen</code> enth&#228;lt Adressdaten von Firmen, diejenige mit Namen <code>adr_firmen_kontakt</code> enth&#228;lt Kontaktinformationen. Beide Tabellen werden jeweils &#252;ber das Feld <code>IDFirma</code> miteinander in Relation gebracht. Dann gibt es noch zwei kleine Hilfstabellen, welche bloss sicherstellen, dass immer dieselben Werte benutzt werden. <code>adr_firmen_kontakt_anrede</code> steht in Relation zur Tabelle <code>adr_firmen_kontakt</code> und setzt jeweils die Anrede richtig, die Tabelle <code>adr_firmen_land</code> enth&#228;lt die Landesangaben, welche wiederum mit <code>adr_firmen</code> in Relation steht. Mit der obigen Abfrage werden s&#228;mtliche Werte so ausgegeben, dass sie f&#252;r uns Menschen nutzbar werden.</p>
<p>Wer sich nicht so gerne mit dem pingeligen SQL-Syntax auseinandersetzen will, kann auch eine andere L&#246;sung bevorzugen. Dazu braucht es allerdings Windows und Access. Damit kann man &#252;ber ODBC eine Verbindung zum MySQL-Server herstellen und dann die Abfragen im Access-Fenster ganz bequem zusammenklicken und sich hernach den SQL-Code anzeigen lassen. Bei nicht allzu komplexen Abfragen funktioniert jene Version ganz gut. Ich werde dazu sp&#228;ter mehr berichten. </p>
<p>Leider ist zur Zeit meine Lieblings-Virtualisierungssoftware f&#252;r den Mac &#8211; die <a href="http://www.virtualbox.org" class="liexternal">VirtualBox</a> &#8211; noch nicht ready f&#252;r OS X 10.5, weswegen ich auch noch keine virtuelle Windows-Kiste zur Verf&#252;gung habe, um dar&#252;ber zu berichten.</p>

 <div id="aspdf">
								<p>
 <a href="http://ubuntublog.ch/wp-content/plugins/as-pdf/generate.php?post=36">
 <span>PDF-Datei dieses Artikels erzeugen</span>
 </a>
 <br /><br /></p>
 </div><h2  class="related_post_title">Ähnliche Artikel</h2><ul class="related_post"><li>2. Februar 2010 -- <a href="http://ubuntublog.ch/applikationen/webentwicklung-mit-cakephp" title="Webentwicklung mit CakePHP">Webentwicklung mit CakePHP</a> (8)</li><li>13. Januar 2010 -- <a href="http://ubuntublog.ch/applikationen/mysql-datenbank-design-optisch-planen" title="MySQL-Datenbank-Design optisch planen">MySQL-Datenbank-Design optisch planen</a> (33)</li><li>16. Juli 2008 -- <a href="http://ubuntublog.ch/services/mysql-tabellen-tx_crawler_queue-loeschen-erzwingen" title="MySQL-Tabellen: tx_crawler_queue Löschen erzwingen">MySQL-Tabellen: tx_crawler_queue Löschen erzwingen</a> (0)</li><li>19. Mai 2008 -- <a href="http://ubuntublog.ch/applikationen/wordpress-auf-einem-ubuntu-server" title="WordPress auf einem Ubuntu-Server">WordPress auf einem Ubuntu-Server</a> (24)</li><li>9. Januar 2008 -- <a href="http://ubuntublog.ch/services/ssl-auf-apache-einrichten" title="SSL auf Apache einrichten">SSL auf Apache einrichten</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://ubuntublog.ch/services/mysql-abfragen-speichern-und-nutzen/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

