Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ sqlite3 c+中的主键错误+;_C++_Sqlite - Fatal编程技术网

C++ sqlite3 c+中的主键错误+;

C++ sqlite3 c+中的主键错误+;,c++,sqlite,C++,Sqlite,我的代码在编译和执行时显示: 已成功打开数据库 SQL错误:接近“;”:语法错误 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std; 静态int回调(void*NotUsed,int argc,char**argv,char**azColName){ int i; 对于查询中的(i=0;i缺少最后一个)。谢谢!!这么简单的错误。 #include <iostream> #include <fstream> #inclu

我的代码在编译和执行时显示:

  • 已成功打开数据库
  • SQL错误:接近“;”:语法错误
  • #包括
    #包括
    #包括
    #包括
    #包括
    #包括
    #包括
    #包括
    #包括
    使用名称空间std;
    静态int回调(void*NotUsed,int argc,char**argv,char**azColName){
    int i;
    
    对于查询中的(i=0;i缺少最后一个)。

    谢谢!!这么简单的错误。
      #include <iostream>
      #include <fstream>
      #include <string>
      #include <vector>
      #include <stdlib.h>
      #include <cstring>
      #include <sstream>
      #include <sqlite3.h>
      #include <stdio.h>
    
    using namespace std;
    
    static int callback(void *NotUsed, int argc, char **argv, char **azColName){
     int i;
     for(i=0; i<argc; i++){
      printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
    }
    printf("\n");
    return 0;
    }
    
    static void createTrackTable(){
     sqlite3 *db;
     char *zErrMsg = 0;
     int  rc;
     char *sql;
    
     rc = sqlite3_open("idk.db", &db);
     if( rc ){
      fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
      exit(0);
    }else{
      fprintf(stdout, "Opened database successfully\n");
    }
    
    sql = "CREATE TABLE TRACK (" \
      "CD_ID INTEGER NOT NULL," \
      "TRACK_ID INTEGER NOT NULL," \
      "TITLE VARCHAR(70) NOT NULL," \
      "PRIMARY KEY(CD_ID, TRACK_ID);";
    
      rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
      if( rc != SQLITE_OK ){
       fprintf(stderr, "SQL error: %s\n", zErrMsg);
       sqlite3_free(zErrMsg);
     }else{
      fprintf(stdout, "Track table created successfully\n");
    }
    sqlite3_close(db);
    }
    
    int main(){
      createTrackTable();
    
      return 0;
    
    }