<?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[Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open()]]></title><description><![CDATA[<p>Hallo,<br />
entsprechend dem Beitrag in den <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39279.html" rel="nofollow">FAQ</a> versuche ich mithilfe von TSQLQuery eine SELECT-Anweisung durchzuführen. Ich möchte nur drei Werte (pro Zeile) aus der Tabelle auslesen, wie folgender Code-Ausschnitt verdeutlichen sollte:</p>
<pre><code class="language-cpp">for( int i=0; i&lt;this-&gt;fileCount; i++ )
{
		/*** AKTUELLEN EINTRAG LESEN ***/
		Form1-&gt;SQLQuery1-&gt;Close();
		Form1-&gt;SQLQuery1-&gt;SQL-&gt;Clear();
		mySqlQuery = &quot;SELECT * FROM &quot; + Tablename + &quot; WHERE ID=&quot; + IntToStr( i+1 );
 		Form1-&gt;SQLQuery1-&gt;SQL-&gt;Add( mySqlQuery );

		/*** Access violation ***/

		Form1-&gt;SQLQuery1-&gt;Open();
		Form1-&gt;SQLQuery1-&gt;First();

		while (!Form1-&gt;SQLQuery1-&gt;Eof)
		{
		   lastFileSize = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 2 ]-&gt;AsString;
		   currentIncrease = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 3 ]-&gt;AsString;
		   overallIncrease = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 4 ]-&gt;AsString;

		   Form1-&gt;SQLQuery1-&gt;Next();
		}
                ...
}
</code></pre>
<p>Der Compiler hat absolut keinen Hinweis parat, der mir auf die Sprünge helfen könnte. Beim Ausführen des Codes bricht das Programm allerdings mit der Fehlermeldung</p>
<pre><code>Access violation at adress 0111B960 in module 'dbxmys30.dll'. Read of address 0000000B.
</code></pre>
<p>an der im Code markierten Stelle ab.</p>
<p>An einer anderen Stelle im Code, an der ich Daten in die Tabelle (mittels &quot;INSERT INTO&quot; und SQLQuery-&gt;SQL-&gt;ExecSQL( )) schreibe, funktioniert alles einwandfrei.</p>
<p>Hat jemand Erfahrung mit diesem &quot;mysteriösen&quot; Fehler gemacht?</p>
<p>Außer der Komponente für das TSQLQuery habe ich noch ein TSQLConnection auf meinem Hauptformular.</p>
<p>Für jeden Rat und Hinweis bin ich sehr dankbar! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>cypoc</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/154901/access-violation-durch-den-aufruf-von-sqlquery-gt-open</link><generator>RSS for Node</generator><lastBuildDate>Sun, 09 Aug 2026 14:20:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/154901.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 31 Jul 2006 20:06:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Mon, 31 Jul 2006 20:06:05 GMT]]></title><description><![CDATA[<p>Hallo,<br />
entsprechend dem Beitrag in den <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39279.html" rel="nofollow">FAQ</a> versuche ich mithilfe von TSQLQuery eine SELECT-Anweisung durchzuführen. Ich möchte nur drei Werte (pro Zeile) aus der Tabelle auslesen, wie folgender Code-Ausschnitt verdeutlichen sollte:</p>
<pre><code class="language-cpp">for( int i=0; i&lt;this-&gt;fileCount; i++ )
{
		/*** AKTUELLEN EINTRAG LESEN ***/
		Form1-&gt;SQLQuery1-&gt;Close();
		Form1-&gt;SQLQuery1-&gt;SQL-&gt;Clear();
		mySqlQuery = &quot;SELECT * FROM &quot; + Tablename + &quot; WHERE ID=&quot; + IntToStr( i+1 );
 		Form1-&gt;SQLQuery1-&gt;SQL-&gt;Add( mySqlQuery );

		/*** Access violation ***/

		Form1-&gt;SQLQuery1-&gt;Open();
		Form1-&gt;SQLQuery1-&gt;First();

		while (!Form1-&gt;SQLQuery1-&gt;Eof)
		{
		   lastFileSize = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 2 ]-&gt;AsString;
		   currentIncrease = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 3 ]-&gt;AsString;
		   overallIncrease = Form1-&gt;SQLQuery1-&gt;Fields-&gt;Fields[ 4 ]-&gt;AsString;

		   Form1-&gt;SQLQuery1-&gt;Next();
		}
                ...
}
</code></pre>
<p>Der Compiler hat absolut keinen Hinweis parat, der mir auf die Sprünge helfen könnte. Beim Ausführen des Codes bricht das Programm allerdings mit der Fehlermeldung</p>
<pre><code>Access violation at adress 0111B960 in module 'dbxmys30.dll'. Read of address 0000000B.
</code></pre>
<p>an der im Code markierten Stelle ab.</p>
<p>An einer anderen Stelle im Code, an der ich Daten in die Tabelle (mittels &quot;INSERT INTO&quot; und SQLQuery-&gt;SQL-&gt;ExecSQL( )) schreibe, funktioniert alles einwandfrei.</p>
<p>Hat jemand Erfahrung mit diesem &quot;mysteriösen&quot; Fehler gemacht?</p>
<p>Außer der Komponente für das TSQLQuery habe ich noch ein TSQLConnection auf meinem Hauptformular.</p>
<p>Für jeden Rat und Hinweis bin ich sehr dankbar! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>cypoc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108022</guid><dc:creator><![CDATA[cypoc]]></dc:creator><pubDate>Mon, 31 Jul 2006 20:06:05 GMT</pubDate></item><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Mon, 31 Jul 2006 20:15:52 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>ich seh aus deinem Codeauszug keinen Grund für eine Zugriffsverletzung.<br />
Mir fällt nur auf, das du sowohl this als auch Form1 benutzt. Heißt das das alles steht in einer Funktion die kein Member von Form1 ist?</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108029</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 31 Jul 2006 20:15:52 GMT</pubDate></item><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Tue, 01 Aug 2006 05:11:27 GMT]]></title><description><![CDATA[<p>akari schrieb:</p>
<blockquote>
<p>Heißt das das alles steht in einer Funktion die kein Member von Form1 ist?</p>
</blockquote>
<p>Ja, das ist richtig.<br />
Könnte das der Grund sein, oder sollte man Lösungen dieser Art, soweit möglich, besser vermeiden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108143</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108143</guid><dc:creator><![CDATA[cypoc]]></dc:creator><pubDate>Tue, 01 Aug 2006 05:11:27 GMT</pubDate></item><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Tue, 01 Aug 2006 07:01:57 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Es könnte der Grund sein, wenn der Pointer Form1 in dieser Methode nicht auf eine gültige Instanz zeigt. Benutzt also den Debugger und überprüf genau, wann was für Werte in den Variablen stehen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108185</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 01 Aug 2006 07:01:57 GMT</pubDate></item><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Tue, 01 Aug 2006 08:29:28 GMT]]></title><description><![CDATA[<p>cypoc schrieb:</p>
<blockquote>
<p>An einer anderen Stelle im Code, an der ich Daten in die Tabelle (mittels &quot;INSERT INTO&quot; und SQLQuery-&gt;SQL-&gt;ExecSQL( )) schreibe, funktioniert alles einwandfrei.</p>
</blockquote>
<p>Der besagte Code-Ausschnitt befindet sich nur wenige Zeilen unter dem oben geposteten. Auch hier wird Form1 (usw.) benutzt.<br />
Schließt diese Tatsache nicht automatisch den Umstand aus, dass der &quot;Pointer Form1 in dieser Methode nicht auf eine gültige Instanz zeigt&quot;?</p>
<p>cypoc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108246</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108246</guid><dc:creator><![CDATA[cypoc]]></dc:creator><pubDate>Tue, 01 Aug 2006 08:29:28 GMT</pubDate></item><item><title><![CDATA[Reply to Access Violation durch den Aufruf von SQLQuery-&amp;gt;Open() on Tue, 01 Aug 2006 08:38:22 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich habe meine Hinweise extra so ausgedrückt, das klar wird das ich aus deinem Auszug keinen definitiven Grund für die Speicherverletzung sehe. Sondern das ich dir Hinweise gebe, was du überprüfen solltest.<br />
Deshlb der Hinweis mit em Debugger : du must dir nun selber helfen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108252</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 01 Aug 2006 08:38:22 GMT</pubDate></item></channel></rss>