9.4网络编程作业

#include <myhead.h>
int do_insert(sqlite3 *pdb,char *perrmsg);
//int do_delete(sqlite3 *pdb,char *perrmsg);
//int do_update(sqlite3 *pdb,char *perrmsg);
//int do_select(sqlite3 *pdb,char *perrmsg);
 
int main(int argc, const char *argv[])
{
    if(access("./sq.db",F_OK)==0)
    {
        system("rm sq.db");
    }
 
    //打开数据库
    sqlite3 *db;
    if(sqlite3_open("./sq.db",&db)!=SQLITE_OK)
    {
        fprintf(stderr,"sqlite_open:%s %d __%d__\n",\
                sqlite3_errmsg(db),sqlite3_errcode(db),\
                __LINE__);
        return -1;
    }
    printf("sqlite_open success\n");
 
    //创建一个表格
    char sql[128]="create table if not exists word (wordname char,meaning char);";
    char* errmsg = NULL;
    if(sqlite3_exec(db,sql,NULL,NULL,&errmsg)!=SQLITE_OK)
    {
        fprintf(stderr,"sqlite3_exec:%s __%d__\n",errmsg,__LINE__);
        return -1;
    }
    printf("create table stu success\n");
    do_insert(db,errmsg);
 
    //关闭数据库
    if(sqlite3_close(db)!=SQLITE_OK)
    {
        fprintf(stderr,"sqlite_open:%s %d __%d__\n",\
                sqlite3_errmsg(db),sqlite3_errcode(db),\
                __LINE__);
        return -1;    
    }
    printf("sqlite3_close success\n");
 
    return 0;
}
 
int do_insert(sqlite3 *pdb,char *perrmsg)
{
    char buf[128]="";
    char wordname[128]="";
    char meaning[128]="";
 
    FILE* fp;
    if((fp=fopen("./dict.txt","r"))<0)
    {
        ERR_MSG("fopen error");
        return -1;
    }
    
    while(fgets(buf,sizeof(buf),fp)!=NULL)
    {
        //fgets(buf,sizeof(buf),fp);
        if(buf[strlen(buf)-1]=='\n')
        {
            bzero(wordname,sizeof(wordname));
            bzero(meaning,sizeof(meaning));
            int i=0;
            while(buf[i]!=' ')
            {
                wordname[i]=buf[i];
                i++;
            }
            int j=0;
            while(buf[i]!='\n')
            {
                
                meaning[j]=buf[i];
                i++;
                j++;
            }            
        }
        //向表格中插入数据
        char sql[128]="";
        sprintf(sql,"insert into word values(\"%s\",\"%s\");",wordname,meaning);
        if(sqlite3_exec(pdb,sql,NULL,NULL,&perrmsg)!=SQLITE_OK)
        {
            fprintf(stderr, "sqlite3_exec:%s __%d__\n", perrmsg, __LINE__);
            return -1;
        }
        //printf("insert success\n");
 
    }
 
    return 0;
}

f41f42207afd457d942b714e5f1bd88f.png

猜你喜欢

转载自blog.csdn.net/JunCool02/article/details/132679791
今日推荐