編譯加上連線庫 -lsqlite3
#include #include #include #include #define db_name "zb.db"
#define true 1
#define false 0
sqlite3 *pdb = null;
char *errmsg = null;
//建立資料庫 zb.db
int open_db()
return 0;
}//建立表 student
int creat_table()
return 0;
}/*資料插入*/
int insert_data()
//open_db();
creat_table();
strcpy(strsql, "insert into student");
strcat(strsql , " values(? , ? , ?);");
sqlite3_stmt *stmt = null;
rc = sqlite3_prepare_v2(pdb , strsql , strlen(strsql) , &stmt , null);
if(rc != sqlite_ok)
sqlite3_close(pdb);
return -1;
}while(flag)
sqlite3_reset(stmt);
printf("do you want to do insert ?(0 break, 1 insert):\n");
scanf("%d", &flag);
}sqlite3_finalize(stmt);
printf("insert success!\n");
sqlite3_close(pdb);
return 0;
}/*資料的查詢*/
int search_data()
char *strsql = "select * from student" ;
sqlite3_stmt *stmt = null;
rc = sqlite3_prepare_v2(pdb , strsql , strlen(strsql) , &stmt , null);
if(rc != sqlite_ok)
sqlite3_close(pdb);
return -1;
}/*sqlite3_column_count()函式返回結果集中包含的列數.
sqlite3_column_count() 可以在執行了 sqlite3_prepare()之後的任何時刻呼叫.
sqlite3_data_count()除了必需要在sqlite3_step()之後呼叫之外,其他跟
sqlite3_column_count() 大同小異. 如果呼叫sqlite3_step() 返回值是
sqlite_done 或者乙個錯誤**, 則此時呼叫sqlite3_data_count() 將返回 0 ,
然而 sqlite3_column_count() 仍然會返回結果集中包含的列數.
sqlite3_column_type()函式返回第n列的值的資料型別. 具體的返回值如下:
#define sqlite_integer 1
#define sqlite_float 2
#define sqlite_text 3
#define sqlite_blob 4
#define sqlite_null 5
sqlite3_setp()
用於執行有前面sqlite3_prepare建立的準備語句。這個語句,執行到結果的第一行可用的位置。
繼續前進(執行)到結果的第二行的話,只需再次呼叫sqlite3_setp()。繼續呼叫sqlite3_setp()
直到這個語句完成。
不返回結果的語句(如:insert,update,或delete),sqlite3_step()只執行一次就返回。
*/ int ncolumn = sqlite3_column_count(stmt); //ncolumn 表的列數
int vtype , i;
doelse if(vtype == sqlite_text)
else if(vtype == sqlite_null)
}printf("---------------\n");
}else if(rc == sqlite_done)
else
}while(1);
sqlite3_finalize(stmt);
sqlite3_close(pdb);
return 0;
}int main(int argc , char **argv)
return 0;
}
go語言使用sqlite3
1 在執行命令視窗建立資料庫和sql表d go src mytest sqlite3 建立資料表,使用.open命令,如果有這個資料庫開啟,若沒有則建立 sqlite open userdb.db 檢視當前使用的資料庫 sqlite database main d go src mytest use...
使用sqlite3 模組操作sqlite3資料庫
python內建了sqlite3模組,可以操作流行的嵌入式資料庫sqlite3。如果看了我前面的使用 pymysql 操作mysql資料庫這篇文章就更簡單了。因為它們都遵循pep 249,所以操作方法幾乎相同。廢話就不多說了,直接看 吧。都差不多,首先匯入模組,然後建立連線,然後獲取游標物件,之後利...
sqlite3使用sqlite2建立的資料庫
用sqlite 2.8.17建立了乙個資料庫heroes.db。其中建立了乙個表heroes,這張表中儲存的是魔獸爭霸中英雄的技能資料。select from heroes 會得到 大魔法師 人族 水元素 暴風雪 輝煌光環 時空傳送 山丘之王 人族 風暴之錘 雷霆一擊 重擊 天神下凡 血魔法師 人族...