<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Verträglichkeit MySQL mit Borland]]></title><description><![CDATA[<p>Hallo,<br />
mache gerade meine ersten Versuche mit den MySQL Bibliotheken. Eine Abfrage bekomme ich auch hin, die Daten werden bei meinem Testprogramm ersteinmal in einer Memo-Box ausgegeben was auch funktioniert.<br />
Ich möchte jetzt aber die Daten in ein StringGrid schreiben. Wenn ich in meiner Funktion, die die Daten vom SQL-Server abholt, eine Zuweisung auf das StringGrid schreibe, bekomme ich bei Ausführen der Funktion eine Zugriffsverletzung bei der Zeile:</p>
<p>free(string);</p>
<p>In einem anderen Programmteil funktioniert der Zugriff auf das StringGrid ohne Probleme.</p>
<p>Hier mal mein Code:</p>
<pre><code>// Daten aus SQL Datenbank abfragen
void __fastcall TForm1::Button3Click(TObject *Sender)
{
   unsigned long  anzahl_reihen;
   unsigned int i;
   MYSQL_ROW  row;
   MYSQL_RES  *mysql_res;

   char *query, *string;
   char *select = &quot;SELECT * FROM namen&quot;;
   char text[255];

// Bleibt diese Zeile in dieser Funktion bekomme ich die Fehlermeldung der 
// Zugriffsverletzung
   // StringGrid1-&gt;Cells[1][1] = &quot;Hallo&quot;; 

   query =(char *) malloc(strlen(select)+1);
   strcpy(query, select);
   // Anfrage an den Datenbankserver
   mysql_query(mysql, query);
   mysql_check_error();
   // Daten der Abfrage abholen
   mysql_res = mysql_store_result(mysql);
   mysql_check_error();
   // Anzahl der gefundenen Datensätze ermitteln
   anzahl_reihen = (unsigned long) mysql_num_rows (mysql_res);
   sprintf (text, &quot;Anzahl gefunden: %l&quot;, anzahl_reihen);
   Memo1-&gt;Lines-&gt;Add(text);
   // Gefundenen Datensatz bzw. Datensätze ausgeben
   while ((row = mysql_fetch_row (mysql_res)) != NULL)
      { // Einzelne Spalten der Zeile ausgeben
         for (i = 0;  i &lt; mysql_num_fields(mysql_res);  i ++)
         {
            snprintf (text, 255, &quot;%s &quot;,row[i]);
            Memo1-&gt;Lines-&gt;Add(text);
         }
      }
   // Speicherplatz wieder freigeben
   mysql_free_result(mysql_res);
   free(string);
   free(query);    
}
</code></pre>
<p>Danke für jede Hilfe</p>
<p>Thomas</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/115550/verträglichkeit-mysql-mit-borland</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 22:29:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/115550.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 15 Jul 2005 18:45:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Fri, 15 Jul 2005 18:45:14 GMT]]></title><description><![CDATA[<p>Hallo,<br />
mache gerade meine ersten Versuche mit den MySQL Bibliotheken. Eine Abfrage bekomme ich auch hin, die Daten werden bei meinem Testprogramm ersteinmal in einer Memo-Box ausgegeben was auch funktioniert.<br />
Ich möchte jetzt aber die Daten in ein StringGrid schreiben. Wenn ich in meiner Funktion, die die Daten vom SQL-Server abholt, eine Zuweisung auf das StringGrid schreibe, bekomme ich bei Ausführen der Funktion eine Zugriffsverletzung bei der Zeile:</p>
<p>free(string);</p>
<p>In einem anderen Programmteil funktioniert der Zugriff auf das StringGrid ohne Probleme.</p>
<p>Hier mal mein Code:</p>
<pre><code>// Daten aus SQL Datenbank abfragen
void __fastcall TForm1::Button3Click(TObject *Sender)
{
   unsigned long  anzahl_reihen;
   unsigned int i;
   MYSQL_ROW  row;
   MYSQL_RES  *mysql_res;

   char *query, *string;
   char *select = &quot;SELECT * FROM namen&quot;;
   char text[255];

// Bleibt diese Zeile in dieser Funktion bekomme ich die Fehlermeldung der 
// Zugriffsverletzung
   // StringGrid1-&gt;Cells[1][1] = &quot;Hallo&quot;; 

   query =(char *) malloc(strlen(select)+1);
   strcpy(query, select);
   // Anfrage an den Datenbankserver
   mysql_query(mysql, query);
   mysql_check_error();
   // Daten der Abfrage abholen
   mysql_res = mysql_store_result(mysql);
   mysql_check_error();
   // Anzahl der gefundenen Datensätze ermitteln
   anzahl_reihen = (unsigned long) mysql_num_rows (mysql_res);
   sprintf (text, &quot;Anzahl gefunden: %l&quot;, anzahl_reihen);
   Memo1-&gt;Lines-&gt;Add(text);
   // Gefundenen Datensatz bzw. Datensätze ausgeben
   while ((row = mysql_fetch_row (mysql_res)) != NULL)
      { // Einzelne Spalten der Zeile ausgeben
         for (i = 0;  i &lt; mysql_num_fields(mysql_res);  i ++)
         {
            snprintf (text, 255, &quot;%s &quot;,row[i]);
            Memo1-&gt;Lines-&gt;Add(text);
         }
      }
   // Speicherplatz wieder freigeben
   mysql_free_result(mysql_res);
   free(string);
   free(query);    
}
</code></pre>
<p>Danke für jede Hilfe</p>
<p>Thomas</p>
]]></description><link>https://www.c-plusplus.net/forum/post/831976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/831976</guid><dc:creator><![CDATA[Thomas_v2.1]]></dc:creator><pubDate>Fri, 15 Jul 2005 18:45:14 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Fri, 15 Jul 2005 18:51:35 GMT]]></title><description><![CDATA[<p>Ich sehe nirgendwo die Zeile, wo Du den Speicher reservierst. Ergo darfst Du auch keinen freigeben.<br />
Ach so, malloc und free sind C-Style, bei C++ nimmt man new und delete. Und statt char könnte man AnsiString verwenden.</p>
<p>Grüße Joe_M.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/831979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/831979</guid><dc:creator><![CDATA[zufaulzumeinloggen]]></dc:creator><pubDate>Fri, 15 Jul 2005 18:51:35 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Fri, 15 Jul 2005 20:29:39 GMT]]></title><description><![CDATA[<p>Oh, *schäm*<br />
naja, hab so lange am Code rumgefummelt bis ich was übersehen haben.</p>
<p>Vielleicht kann mir dann ja noch jemand was zu dieser Fehlermeldung, bzw. der Behebung sagen:</p>
<p>[C++ Fehler] my_list.h(33): E2015 Mehrdeutigkeit zwischen 'LIST' und 'Bde::LIST'</p>
<p>'Bde' hört für mich nach Borland Database Komponenten an, die ich aber eigentlich nicht in meinem Projekt benutze. Oder gehört das StringGrid dazu?</p>
<p>my_list.h ist eine Header-Datei der MySQL-Bibliothek</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832031</guid><dc:creator><![CDATA[Thomas_v2.1]]></dc:creator><pubDate>Fri, 15 Jul 2005 20:29:39 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Tue, 28 Feb 2006 21:18:09 GMT]]></title><description><![CDATA[<p>Hallo Thomas,</p>
<p>konntest Du das Problem mit der Mehrdeutigkeit zwischen dem MySQL List Aufruf und dem Bde::List Aufruf schon lösen?</p>
<p>Grüße CF</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1005546</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1005546</guid><dc:creator><![CDATA[Christian F.]]></dc:creator><pubDate>Tue, 28 Feb 2006 21:18:09 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Tue, 28 Feb 2006 23:36:20 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich würde ebenfalls gerne eine MySQL DB ansprechen. Hatte auch schon einige Code schnippsel zu der Mysql.h bei google gefunden.</p>
<p>Könnt ihr mir sagen wo ich sie kostenfrei downloaden kann?</p>
<p>Bzw könnt ihr sie (und andere die evtl dabei gehören) an <a href="mailto:C.Schneider@gmx.org" rel="nofollow">C.Schneider@gmx.org</a> schicken? (Wenn sie kostenlos sein sollte).</p>
<p>Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1005599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1005599</guid><dc:creator><![CDATA[d0x]]></dc:creator><pubDate>Tue, 28 Feb 2006 23:36:20 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Wed, 01 Mar 2006 05:26:26 GMT]]></title><description><![CDATA[<p>wenn es nicht zwingend kostenfrei sein soll, kann ich nur <a href="http://www.microolap.com/products/connectivity/mysqldac/" rel="nofollow">mySQLDAC</a> empfehlen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1005622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1005622</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Wed, 01 Mar 2006 05:26:26 GMT</pubDate></item><item><title><![CDATA[Reply to Verträglichkeit MySQL mit Borland on Wed, 01 Mar 2006 08:17:19 GMT]]></title><description><![CDATA[<p>d0x schrieb:</p>
<blockquote>
<p>Hallo,<br />
ich würde ebenfalls gerne eine MySQL DB ansprechen. Hatte auch schon einige Code schnippsel zu der Mysql.h bei google gefunden.</p>
<p>Könnt ihr mir sagen wo ich sie kostenfrei downloaden kann?</p>
</blockquote>
<p><a href="http://dev.mysql.com/downloads/" rel="nofollow">Hier</a></p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1005669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1005669</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 01 Mar 2006 08:17:19 GMT</pubDate></item></channel></rss>