<?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[sqlite3 insert problem]]></title><description><![CDATA[<p>Hi Leute, habe versucht variablen in den values abschnitt der insert abfrage reinzumachen, ohne erflog!!<br />
geht das in c++ überhaupt, da ich ne menge erfahrung in php habe, weiß ich, das es dort geht, bin aber in c++ ein naja, fast neuling *g*.</p>
<p>Hier mal mein nicht fertiger code , das andre ist noch am am arbeiten, aber zumindest müsste case 1 funktionieren, weiß aber eben nich wie ich das hinbekommen soll!!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;sqlite3.h&gt;

using namespace std;

  int Callback( void *Pointer, int argc, char **argv, char **columnNames)
{
cout&lt;&lt; *argv &lt;&lt;endl; // Gibt die Einträge aus

return 0;
}

 int main()
 {
     int menu;

 while (menu != 4)
 { 

     //Menüaufbau
     cout &lt;&lt;&quot;Was willst du machen?\n&quot;;
     cout &lt;&lt;&quot;1 = Daten speichern\n&quot;;
     cout &lt;&lt;&quot;2 = Daten lesen\n&quot;;
     cout &lt;&lt;&quot;3 = Daten loeschen\n&quot;;
     cout &lt;&lt;&quot;4 = Beenden\n&quot;;

     //Eingabe abfragen
     cout &lt;&lt; &quot;Auswahl: &quot;;
     cin &gt;&gt; menu;

     //Verzweigung
		switch (menu)
		{
			// Daten speichern
			case (1):
			{
                 //char datname;
                    // Als erstes legen wir einen sqlite3-Zeiger an
                       sqlite3* Db;
                       //Dateiname Festlegen
                 //cout &lt;&lt;&quot;Name der Datei:\n&quot;;
                 //cin &gt;&gt; datname;

                  // und instantiieren ein Objekt von string auf dem Stack
                          string Path = &quot;C:/Saves/test.save&quot;;

      if(sqlite3_open(Path.c_str(), &amp;Db) != SQLITE_OK)
   {
      // Es ist ein Fehler aufgetreten!
      cout &lt;&lt; &quot;Fehler beim Öffnen: &quot; &lt;&lt; sqlite3_errmsg(Db) &lt;&lt; endl;

      // Programm beenden
      return 1;
   }
      // Es hat alles geklappt, die Datenbank wurde geöffnet
   cout &lt;&lt; &quot;Datenbank erfolgreich geöffnet!&quot; &lt;&lt; endl;
   cin.get();

   cout &lt;&lt;&quot;Bitte geben Sie nun ihre Daten ein &quot; &lt;&lt;endl;
   char name[50];
   cout &lt;&lt;&quot;Name: &quot;;
   cin.get (name,49);
   cin.get();

   char klasse[50];
   cout &lt;&lt;&quot;Klasse &quot;;
   cin.get (klasse,49);
   cin.get();

   char telenummer[50];
   cout &lt;&lt;&quot;Telefonnummer: &quot;;
   cin.get (telenummer,49);
   cin.get();

   cout &lt;&lt;&quot;Das sind Ihre Daten: \n&quot;;
   cout &lt;&lt; name &lt;&lt; endl;
   cout &lt;&lt; klasse &lt;&lt; endl;
   cout &lt;&lt; telenummer &lt;&lt; endl;
   cin.get();

    sqlite3_exec(Db , &quot;create table daten (klasse text, name text, telenummer text); &quot; , Callback , NULL , NULL);
    sqlite3_exec(Db , &quot;insert into daten (klasse,name,telenummer) values ('&quot; &lt;&lt; klasse &lt;&lt;&quot;','&quot; &lt;&lt; name &lt;&lt;&quot;','&quot; &lt;&lt; telenummer &lt;&lt;&quot;'); &quot; , Callback , NULL , NULL);
           			} 
                       break;

              default:
              {
                 cout &lt;&lt;&quot;Falsche Eingabe&quot;;
                 }
              }
   }

	cout &lt;&lt; &quot;Bis zum nächsten Mal&quot; &lt;&lt; endl;
    cin.get();
	return 0;
}
</code></pre>
<p>fehler spucht mein dev-c++ folgendes aus:</p>
<p>Zeile 83 K:\Dev-Cpp\Projekte ; Quelldateien\tests\main2.cpp invalid operands of types `const char[53]' and `char[50]' to binary `operator&lt;&lt;'</p>
<p>Hoffe ihr könnt mir helfen!!<br />
ach ja, wie gesagt hab ich dev c++ und als betriebssystem habsch win vista ultimate...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/219944/sqlite3-insert-problem</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 13:07:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/219944.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 09 Aug 2008 20:17:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to sqlite3 insert problem on Sat, 09 Aug 2008 20:17:14 GMT]]></title><description><![CDATA[<p>Hi Leute, habe versucht variablen in den values abschnitt der insert abfrage reinzumachen, ohne erflog!!<br />
geht das in c++ überhaupt, da ich ne menge erfahrung in php habe, weiß ich, das es dort geht, bin aber in c++ ein naja, fast neuling *g*.</p>
<p>Hier mal mein nicht fertiger code , das andre ist noch am am arbeiten, aber zumindest müsste case 1 funktionieren, weiß aber eben nich wie ich das hinbekommen soll!!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;sqlite3.h&gt;

using namespace std;

  int Callback( void *Pointer, int argc, char **argv, char **columnNames)
{
cout&lt;&lt; *argv &lt;&lt;endl; // Gibt die Einträge aus

return 0;
}

 int main()
 {
     int menu;

 while (menu != 4)
 { 

     //Menüaufbau
     cout &lt;&lt;&quot;Was willst du machen?\n&quot;;
     cout &lt;&lt;&quot;1 = Daten speichern\n&quot;;
     cout &lt;&lt;&quot;2 = Daten lesen\n&quot;;
     cout &lt;&lt;&quot;3 = Daten loeschen\n&quot;;
     cout &lt;&lt;&quot;4 = Beenden\n&quot;;

     //Eingabe abfragen
     cout &lt;&lt; &quot;Auswahl: &quot;;
     cin &gt;&gt; menu;

     //Verzweigung
		switch (menu)
		{
			// Daten speichern
			case (1):
			{
                 //char datname;
                    // Als erstes legen wir einen sqlite3-Zeiger an
                       sqlite3* Db;
                       //Dateiname Festlegen
                 //cout &lt;&lt;&quot;Name der Datei:\n&quot;;
                 //cin &gt;&gt; datname;

                  // und instantiieren ein Objekt von string auf dem Stack
                          string Path = &quot;C:/Saves/test.save&quot;;

      if(sqlite3_open(Path.c_str(), &amp;Db) != SQLITE_OK)
   {
      // Es ist ein Fehler aufgetreten!
      cout &lt;&lt; &quot;Fehler beim Öffnen: &quot; &lt;&lt; sqlite3_errmsg(Db) &lt;&lt; endl;

      // Programm beenden
      return 1;
   }
      // Es hat alles geklappt, die Datenbank wurde geöffnet
   cout &lt;&lt; &quot;Datenbank erfolgreich geöffnet!&quot; &lt;&lt; endl;
   cin.get();

   cout &lt;&lt;&quot;Bitte geben Sie nun ihre Daten ein &quot; &lt;&lt;endl;
   char name[50];
   cout &lt;&lt;&quot;Name: &quot;;
   cin.get (name,49);
   cin.get();

   char klasse[50];
   cout &lt;&lt;&quot;Klasse &quot;;
   cin.get (klasse,49);
   cin.get();

   char telenummer[50];
   cout &lt;&lt;&quot;Telefonnummer: &quot;;
   cin.get (telenummer,49);
   cin.get();

   cout &lt;&lt;&quot;Das sind Ihre Daten: \n&quot;;
   cout &lt;&lt; name &lt;&lt; endl;
   cout &lt;&lt; klasse &lt;&lt; endl;
   cout &lt;&lt; telenummer &lt;&lt; endl;
   cin.get();

    sqlite3_exec(Db , &quot;create table daten (klasse text, name text, telenummer text); &quot; , Callback , NULL , NULL);
    sqlite3_exec(Db , &quot;insert into daten (klasse,name,telenummer) values ('&quot; &lt;&lt; klasse &lt;&lt;&quot;','&quot; &lt;&lt; name &lt;&lt;&quot;','&quot; &lt;&lt; telenummer &lt;&lt;&quot;'); &quot; , Callback , NULL , NULL);
           			} 
                       break;

              default:
              {
                 cout &lt;&lt;&quot;Falsche Eingabe&quot;;
                 }
              }
   }

	cout &lt;&lt; &quot;Bis zum nächsten Mal&quot; &lt;&lt; endl;
    cin.get();
	return 0;
}
</code></pre>
<p>fehler spucht mein dev-c++ folgendes aus:</p>
<p>Zeile 83 K:\Dev-Cpp\Projekte ; Quelldateien\tests\main2.cpp invalid operands of types `const char[53]' and `char[50]' to binary `operator&lt;&lt;'</p>
<p>Hoffe ihr könnt mir helfen!!<br />
ach ja, wie gesagt hab ich dev c++ und als betriebssystem habsch win vista ultimate...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562014</guid><dc:creator><![CDATA[nedron]]></dc:creator><pubDate>Sat, 09 Aug 2008 20:17:14 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sat, 09 Aug 2008 22:18:46 GMT]]></title><description><![CDATA[<p>Du musst den string zuerst mal zusammenbauen und dann übergeben.</p>
<pre><code class="language-cpp">sqlite3_exec(Db , &quot;insert into daten (klasse,name,telenummer) values ('&quot; &lt;&lt; klasse &lt;&lt;&quot;','&quot; &lt;&lt; name &lt;&lt;&quot;','&quot; &lt;&lt; telenummer &lt;&lt;&quot;'); &quot; , Callback , NULL , NULL);
</code></pre>
<p>Wird zu:</p>
<pre><code class="language-cpp">std::string str;
str &lt;&lt; &quot;insert into daten (klasse,name,telenummer) values ('&quot; &lt;&lt; klasse &lt;&lt;&quot;','&quot; &lt;&lt; name &lt;&lt;&quot;','&quot; &lt;&lt; telenummer &lt;&lt;&quot;'); &quot;;
sqlite3_exec(Db ,str.c_str ()  , Callback , NULL , NULL);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1562061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562061</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sat, 09 Aug 2008 22:18:46 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sat, 09 Aug 2008 23:00:54 GMT]]></title><description><![CDATA[<p>Bevor ich erst ma iwas anderes durchlese:</p>
<p>erstell mal für die verschiedenen cases funktionen - das würde es ein wenig übersichtlich machen, als so nen switch-block über 100de Zeilen...</p>
<p>dev-c++ ist veraltet und wird nicht mehr weiterentwickelt... entweder du nutzt code::blocks (ist der nachfolger) oder msvc (würde ich dir ja empfehlen aber ich kenn code::blocks auch nicht)</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562068</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Sat, 09 Aug 2008 23:00:54 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sun, 10 Aug 2008 08:00:16 GMT]]></title><description><![CDATA[<p>hi,<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/18422">@drakon</a><br />
irgendwie will das codestück nich funktionieren, wenn ich das mit den variablen mache!!, hier mal `n ausschnitt wies jetzt bei mir aussieht.</p>
<pre><code class="language-cpp">string str = &quot;insert into daten (klasse,name,telenummer)values 
('&quot; &lt;&lt;klasse&lt;&lt; &quot;','&quot;&lt;&lt; name &lt;&lt;&quot;','&quot;&lt;&lt; telenummer &lt;&lt;&quot;'); &quot;;
sqlite3_exec(Db ,str.c_str ()  , Callback , NULL , NULL);
</code></pre>
<p>Das geht eindfach nich! Wenn ichs aber so mache, mit normalen wörtern:</p>
<pre><code class="language-cpp">string str = &quot;insert into daten (klasse,name,telenummer)values ('Klasse','Name','Telenummer'); &quot;;
sqlite3_exec(Db ,str.c_str ()  , Callback , NULL , NULL);
</code></pre>
<p>dann gehts, als fehler spuckt mir dev das hier aus:</p>
<p>Zeile 84 K:\Dev-Cpp\Projekte ; Quelldateien\tests\main2.cpp invalid operands of types `const char[53]' and `char[50]' to binary `operator&lt;&lt;'</p>
<p>ach noch ne frage, was hat das mit dem std:: aufsich, kenns zwar, wußte aber immer nich, was es bedeutet (weil ich bei meinn strings das nich brauche, i.wie)</p>
<p>selbst wenn ich haargenau den code von dir nehme, kommt der fehler(nun ja, en bissl anders sieht dann so aus:</p>
<p>Zeile 85 K:\Dev-Cpp\Projekte ; Quelldateien\tests\main2.cpp no match for 'operator&lt;&lt;' in 'str &lt;&lt; &quot;insert into daten (klasse,name,telenummer) values (\'&quot;'</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/16305">@unskilled</a><br />
nunja, ich bin son typ, der erst den code schreibt, und wenn er funtioniert in funktionen packt, nunja,...habs mir so angewöhnt xD</p>
<p>kann es sein, dass es an dev-cpp liegt, oder am code? - wenns am dev lieg,t iss kein problem, für nich code::blocks zu nehmen, oder i.was andres(komm aber bei dev sehr gut zurecht).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562109</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562109</guid><dc:creator><![CDATA[nedron]]></dc:creator><pubDate>Sun, 10 Aug 2008 08:00:16 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sun, 10 Aug 2008 09:43:05 GMT]]></title><description><![CDATA[<p>Ich habs nicht getestet. Kein Wunder, dass es nicht geht. Das ist ein string und kein stringstream. <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>
<pre><code class="language-cpp">#include &lt;sstream&gt;

...

std::stringstream str;
str &lt;&lt;  &quot;insert into daten (klasse,name,telenummer)values
('&quot; &lt;&lt;klasse&lt;&lt; &quot;','&quot;&lt;&lt; name &lt;&lt;&quot;','&quot;&lt;&lt; telenummer &lt;&lt;&quot;'); &quot;;
sqlite3_exec(Db ,str.str ().c_str ()  , Callback , NULL , NULL);
</code></pre>
<p>Immernoch ungetestet, sollte aber gehen. <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>Das mit dem std:: bedeutet, dass sich string im Namensbereich std liegt. (Stichwort namespace)</p>
<p>Du kannst den Namensbereich auch bekannt machen für die aktuelle Übersetzungseinheit,was du ach gemacht hast:</p>
<blockquote>
<pre><code class="language-cpp">using namespace std;
</code></pre>
</blockquote>
<p>Das bedeutet einfach, dass du jetzt den Namensbereich std benutzt und den expliziten Auflöser :: nicht brauchst.</p>
<p>Ich würde dir auch empfehlen so schnell, wie möglich auf Code::Blocks, oder MSVC++ umzusteigen, weil tatsächlich gewisse Sachen mit alten Compiler nicht richtig funktionieren. (Templates).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562139</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562139</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 10 Aug 2008 09:43:05 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sun, 10 Aug 2008 10:34:13 GMT]]></title><description><![CDATA[<p>thx, es geht!!<br />
okay, dann werd ich wohl dann demnächst von dev-cpp verabschieden, werd mich noch entscheiden was ich nehm, dann ...bye bye dev-cpp *g*</p>
<p>nochmals danke für die hilfe, ich glaub, ich wär da niemals druf gekommen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562164</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562164</guid><dc:creator><![CDATA[nedron]]></dc:creator><pubDate>Sun, 10 Aug 2008 10:34:13 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sun, 10 Aug 2008 13:08:38 GMT]]></title><description><![CDATA[<p>warum nimmst du eigtl überhaupt nen stringstream und nicht nur nen string? Oo</p>
<p>also <code>const std::string query (&quot;INSERT INTO &quot; + tabelle + &quot; ...&quot;);</code></p>
<p>Ich wüsste nicht, welchen Vorteil ein stringstream dort hat... Ist weder schneller noch komfortabler - würde ich zumindest sagen!?</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562224</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Sun, 10 Aug 2008 13:08:38 GMT</pubDate></item><item><title><![CDATA[Reply to sqlite3 insert problem on Sun, 10 Aug 2008 13:18:26 GMT]]></title><description><![CDATA[<p>unskilled schrieb:</p>
<blockquote>
<p>warum nimmst du eigtl überhaupt nen stringstream und nicht nur nen string? Oo</p>
</blockquote>
<p>Weil ich dort nicht den ganzen string anpssen musste. <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="😉"
    /> - Sonst hätte ich ja alles ändern müssen. So hatte ich nur std::stringstream und einmal .cstr() hinzufügen müssen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Spielt eigl. keine Rolle. Kann man nehmen, was einem besser passt. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1562226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562226</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 10 Aug 2008 13:18:26 GMT</pubDate></item></channel></rss>