Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   C# SQLite insert! (https://www.delphipraxis.net/106066-sqlite-insert.html)

Kidix 4. Jan 2008 17:48

Datenbank: SQLite • Version: 3.0 • Zugriff über: ADO.NET

SQLite insert!
 
Hallo,


ich habe folgendes Problem...

Es existiert eine Tabelle in der Form...

id = primärschlüssel + autoincrement
text = text

Wenn ich jetzt wie folgt versuche einen Text in die Tabelle zu fügen kommt eine Fehlermeldung:

Code:
sqlite_cmd.CommandText = "INSERT INTO test (text) VALUES ('Test Text 1');";
sqlite_cmd.ExecuteNonQuery();
Code:
malformed database schema - near "AUTOINCREMENT": syntax error
Was hab ich falsch gemacht?

Kidix

kiar 4. Jan 2008 18:05

Re: SQLite insert!
 
Moin,

zeige mal das Script mit der du die Tabelle erstellt hast. Hast du
SQL-Code:
AUTO_INCREMENT
geschrieben?

raik

schau mal hier: http://de.wikibooks.org/wiki/Einf%C3...enbank:_SQLite

Kidix 4. Jan 2008 18:10

Re: SQLite insert!
 
ich hab die tabelle mit dem SQLite Administrator erstellt.

http://sqliteadmin.orbmu2k.de/

Code:
PRIMARY KEY AUTOINCREMENT NOT NULL

kiar 4. Jan 2008 18:14

Re: SQLite insert!
 
hallo,

SQL-Code:
AUTO_INCREMENT
kann nie not Null sein, denn es wird automatisch erhöht.Schau dir mal den Link an.

Raik

Kidix 4. Jan 2008 18:19

Re: SQLite insert!
 
hab ich...komischerweise funktioniert der query string wenn ich ihn nicht über mein c# programm eingebe...

Code:
INSERT INTO test (text) VALUES ('Test Text 1')
Außerdem setzt der SQLite Administrarot automatisch das id Feld auf Not Null...Da kann ich garnichts abändern.

Ghostwalker 4. Jan 2008 18:33

Re: SQLite insert!
 
Das Problem würd ich eher darin sehen, das der Feldname gleich einem Datentypen ist, was wohl zu Problemen führt.

Änder doch einfach mal den Feldnamen von Text auf Text1.

Kidix 4. Jan 2008 18:43

Re: SQLite insert!
 
funktioniert leider auch nicht...

Hier mal der komplette Quellcode:

Code:
/*
 * Erstellt mit SharpDevelop.
 * Benutzer: Sandra
 * Datum: 04.01.2008
 * Zeit: 18:08
 * 
 * Sie können diese Vorlage unter Extras > Optionen > Codeerstellung > Standardheader ändern.
 */

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using Finisar.SQLite;

namespace Datenbank
{
   /// <summary>
   /// Description of MainForm.
   /// </summary>
   public partial class MainForm : Form
   {
      public MainForm()
      {
         //
         // The InitializeComponent() call is required for Windows Forms designer support.
         //
         InitializeComponent();
         
         //
         // TODO: Add constructor code after the InitializeComponent() call.
         //
      }
      
      void Button1Click(object sender, EventArgs e)
      {
         
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;

sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=False;Compress=False;");
sqlite_conn.Open();

sqlite_cmd = sqlite_conn.CreateCommand();
sqlite_cmd.CommandText = "INSERT INTO wetterdaten (grad) VALUES ('Test Text 1')";
sqlite_cmd.ExecuteNonQuery();

sqlite_cmd.CommandText = "SELECT * FROM test";
sqlite_datareader=sqlite_cmd.ExecuteReader();
while (sqlite_datareader.Read())
{
textBox1.Text = sqlite_datareader["text"].ToString();
}
sqlite_conn.Close();
      }
   }
}

kiar 4. Jan 2008 18:58

Re: SQLite insert!
 
moin kidix,

du arbeitest mit dem .net2.0 aber die
Code:
Finisar.Sqllite.dll
ist für die .net 1.1.

ziehe dir mal die
Code:
System.Data.SQLlite.dll

Raik

Kidix 4. Jan 2008 19:10

Re: SQLite insert!
 
Auch das funktioniert leider nicht...

Kidix 4. Jan 2008 19:38

Re: SQLite insert!
 
komischerweise gehts, wenn ich die felder wie folgt definiere:

id: integer, primärschlüssel, not null
text = text

dann zählt er automatisch hoch, wenn ich bei id nichts eingebe...sollte doch normal auch nicht oder?

Kidix


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:43 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz