<?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[&#x27; in einem SQL Ausdruck]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreib mir gerade eine kleine MovieDB, leider steh ich nun vor einem Problem:<br />
Wenn ich einen Film wie:<br />
&quot;Acidmrp's Urlaub 2004&quot; in eine Tabelle einfügen will kommt verständlicherweise<br />
erstmal ein Fehler wegen dem '</p>
<p>Nun hab ich folgedes gemacht (auch aus Sicherheitsgründen):</p>
<pre><code class="language-cpp">AnsiString __fastcall CDatabase::Unquote(AnsiString sString)
{
    AnsiString sReturn = &quot;&quot;;
    for (int i = 0; i &lt; sString.Length(); i++) {
        if (sString.c_str()[i] == '\''
         || sString.c_str()[i] == '\\') {
            sReturn = sReturn + &quot;\\&quot;;
         }
         sReturn = sReturn + sString.c_str()[i];
    }
    return sReturn;
}
</code></pre>
<p>raus kommt folgendes String: &quot;Acidmrp\'s Urlaub 2004&quot; und den kann ich immer<br />
noch nicht in die Tabelle schreiben:</p>
<p>Benachrichtigung über Debugger-Exception:<br />
Im Projetkt ... ist eine Exception der Klasse EOleException aufgetreten. Meldung:<br />
'Syntaxfehler (fehlender Operator) in<br />
Abfrageausdruck 'Name='Acidmrp\'s Urlaub 2004';''.</p>
<p>Was hab ich falsch gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/115626/in-einem-sql-ausdruck</link><generator>RSS for Node</generator><lastBuildDate>Thu, 23 Jul 2026 11:25:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/115626.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 17 Jul 2005 09:04:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 09:04:14 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreib mir gerade eine kleine MovieDB, leider steh ich nun vor einem Problem:<br />
Wenn ich einen Film wie:<br />
&quot;Acidmrp's Urlaub 2004&quot; in eine Tabelle einfügen will kommt verständlicherweise<br />
erstmal ein Fehler wegen dem '</p>
<p>Nun hab ich folgedes gemacht (auch aus Sicherheitsgründen):</p>
<pre><code class="language-cpp">AnsiString __fastcall CDatabase::Unquote(AnsiString sString)
{
    AnsiString sReturn = &quot;&quot;;
    for (int i = 0; i &lt; sString.Length(); i++) {
        if (sString.c_str()[i] == '\''
         || sString.c_str()[i] == '\\') {
            sReturn = sReturn + &quot;\\&quot;;
         }
         sReturn = sReturn + sString.c_str()[i];
    }
    return sReturn;
}
</code></pre>
<p>raus kommt folgendes String: &quot;Acidmrp\'s Urlaub 2004&quot; und den kann ich immer<br />
noch nicht in die Tabelle schreiben:</p>
<p>Benachrichtigung über Debugger-Exception:<br />
Im Projetkt ... ist eine Exception der Klasse EOleException aufgetreten. Meldung:<br />
'Syntaxfehler (fehlender Operator) in<br />
Abfrageausdruck 'Name='Acidmrp\'s Urlaub 2004';''.</p>
<p>Was hab ich falsch gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832616</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832616</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Sun, 17 Jul 2005 09:04:14 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 09:11:09 GMT]]></title><description><![CDATA[<p>Ich vermute mal, die hast den \ intern als \\ dargestellt, so dass die Escape-Sequenz nicht mehr auf das Hochkomma reagiert, sondern einfach auf den darauf folgenden Backslash...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832620</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832620</guid><dc:creator><![CDATA[Reyx]]></dc:creator><pubDate>Sun, 17 Jul 2005 09:11:09 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 09:30:10 GMT]]></title><description><![CDATA[<p>das hab ich auch überlegt, aber wie kann ich das anders machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832634</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Sun, 17 Jul 2005 09:30:10 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 09:43:12 GMT]]></title><description><![CDATA[<p>Acidmrp schrieb:</p>
<blockquote>
<p>Wenn ich einen Film wie: &quot;Acidmrp's Urlaub 2004&quot; in eine Tabelle einfügen will kommt verständlicherweise erstmal ein Fehler wegen dem '<br />
[...]<br />
Was hab ich falsch gemacht?</p>
</blockquote>
<p>Du hast einen <a href="http://members.aol.com/apostrophs/" rel="nofollow">überflüssigen</a> Apostroph eingefügt.<br />
Ausserdem: <a href="http://www.soviseau.de/verben/genitiv.htm" rel="nofollow">Rettet des Genitivs!</a></p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Von diesen grundsätzlichen Problemen mal abgesehen wäre es hilfreich, den konkreten Code zu sehen, mit dem du in die DB schreibst, inklusive der &quot;Befüllung&quot; der Variablen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832639</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Sun, 17 Jul 2005 09:43:12 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 14:10:37 GMT]]></title><description><![CDATA[<p>in diesem Fall ist es sogar nur eine Überprüfung ob ein Eintrag schon existiert:</p>
<pre><code class="language-cpp">bool __fastcall CDatabase::exists(AnsiString strTable, AnsiString strValueName, AnsiString strValue)
{
    // schaut nach ob ein Wert in einer Tabelle schon existiert

    bool bReturn = false;

    try {
        ADOQuery-&gt;Close();
        ADOQuery-&gt;SQL-&gt;Clear();
        ADOQuery-&gt;SQL-&gt;Add(&quot;SELECT * FROM &quot; + strTable);
        ADOQuery-&gt;SQL-&gt;Add(&quot;WHERE &quot; + strValueName + &quot;='&quot; + strValue + &quot;';&quot;);
        ADOQuery-&gt;Open();

        bReturn = ADOQuery-&gt;RecordCount &gt;= 1;

        ADOQuery-&gt;Close();
    } catch (...) {
    }

    return bReturn;
}
</code></pre>
<p>Dieser Aufruf crasht bei:<br />
exists(&quot;MeineTabelle&quot;, &quot;MeineWerte&quot;, &quot;Test: '&quot;);</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832863</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Sun, 17 Jul 2005 14:10:37 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 17:09:57 GMT]]></title><description><![CDATA[<p>Verdopplung des Hochkommas hilft hier normalerweise.<br />
Dafür gibt's verschiedene Wege. Es gibt eine Funktion, die Hochkommas autoamtisch verdoppelt<br />
(QuotedString oder so ähnlich) oder aber Du verwendest ein parametrisiertes Query.<br />
Oder Du machst alles selbst.</p>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832966</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832966</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Sun, 17 Jul 2005 17:09:57 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Sun, 17 Jul 2005 17:15:02 GMT]]></title><description><![CDATA[<p>Alexander Kempf schrieb:</p>
<blockquote>
<p>Es gibt eine Funktion, die Hochkommas autoamtisch verdoppelt<br />
(QuotedString oder so ähnlich)</p>
</blockquote>
<p>QuotedStr()</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/832969</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/832969</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 17 Jul 2005 17:15:02 GMT</pubDate></item><item><title><![CDATA[Reply to &#x27; in einem SQL Ausdruck on Mon, 18 Jul 2005 09:38:22 GMT]]></title><description><![CDATA[<p>mit QuotedStr() klappts. Danke an alle!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833327</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Mon, 18 Jul 2005 09:38:22 GMT</pubDate></item></channel></rss>