导入电子词典到数据库中
int main
{
sqlite3* db;
//open
if(sqlite3_open("./Edir.db", &db) != SQLITE_OK)
{
fprintf(stderr,"sqlite3_open:%d:%s__%d__\n",\
sqlite3_errcode(db),sqlite3_errmsg(db),__LINE__);
return -1;
}
printf("open success\n");
FILE* fp=fopen("./dict.txt","r");
//create
char sql[128] = "create table if not exists Edir(word char,meaning char);";
char* errmsg = NULL;
if(sqlite3_exec(db,"create table if not exists Edir(word char,\
meaning char);",NULL,NULL,&errmsg) != SQLITE_OK)
{
fprintf(stderr,"sqlite3_exec:%s__%d__\n",errmsg,__LINE__);
return -1;
}
printf("create table success __%d__\n",__LINE__);
int res=-1;
char word[128];
char mean[128];
while(1)
{
bzero(word,sizeof(word));
bzero(mean,sizeof(mean));
if((res=fscanf(fp,"%s",word))==EOF)
{
break;
}
//printf("%s\t",word);
if(fgets(mean,sizeof(mean),fp)==NULL)
{
break;
}
//printf("%s\n",mean);
char buf[512]="";
sprintf(buf,"insert into Edir(word, meaning) values ('%s','%s')", word, mean);
sqlite3_exec(db, buf, NULL, NULL, &errmsg);
}
fclose(fp);
if(sqlite3_close(db)!=SQLITE_OK)
{
printf("close error:%s\n",sqlite3_errmsg(db));
return -1;
}
return 0;
}