Bonjours,
Je ne parvien pas a faire une syntax correct il doit me manquer un caractère ou la requête est pas appropriée ?
c'est coder en C#
table mère sa passe:
le code a problème:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 private string sql_Sauvegarde = "CREATE TABLE IF NOT EXISTS 'T_Sauvegarde' ( " + " 'id' INTEGER PRIMARY KEY, " + " 'date' TEXT NOT NULL, " + " 'commentaire' TEXT " + ");";
Merssage d'erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 private string sql_FichierNormal = "CREATE TABLE IF NOT EXISTS 'T_FichierNormal' ( " + " 'subkey' INTEGER NOT NULL, " + " 'fullpath' TEXT NOT NULL, " + " 'sizefile' INTEGER NOT NULL," + " 'sha256' TEXT NOT NULL " + " FOREIGN KEY('subkey') REFERENCES 'T_sauvegarde'('id'));";
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Data Source=DATA.db; Version=3; code = Error (1), message = System.Data.SQLite.SQLiteException (0x800007BF): SQL logic error near "FOREIGN": syntax error à System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain) à System.Data.SQLite.SQLiteCommand.BuildNextCommand() à System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index) à System.Data.SQLite.SQLiteDataReader.NextResult() à System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave) à System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior) à System.Data.SQLite.SQLiteCommand.ExecuteNonQuery(CommandBehavior behavior) à System.Data.SQLite.SQLiteCommand.ExecuteNonQuery() à NSqlTSharp.CreateDatabaseAndTable.SqlCreateTable(String sql) dans C:\Users\Xerox\Documents\Devcpp\dev_visual_studio\Database\CreateTable.cs:ligne 67
Cela fait un moment que fouine et test mai sa veux rien savoir c'est peux être les parenthèse .
Merci d'avance
Partager