SQLite - 如何在终端级别使用它& C ++应用程序?

时间:2012-08-13 07:12:13

标签: c++ sql sqlite

我是sqlite的新手,我刚刚安装了它。我熟悉mysql但是我需要使用sqlite,因为我将它用于我要创建的C ++应用程序。

问题1:

我在命令行终端

输入此内容
root@ubuntu:/home/baoky/version1.2/Assignment 2# sqlite abeserver.db

然后我看到了这个输出

sqlite>

所以我输入.h,我看到一个帮助命令列表

但我想创建一个表

源码> .databases

seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main             /home/baoky/version1.2/Assignment 2/abeserver.db          
1    temp             /var/tmp/sqlite_hjT3FEefcAHRPhn 

在我的主数据库中

如何在终端级别执行此sql命令

CREATE TABLE abe_account (
  username TEXT,
  name TEXT,
  department TEXT,
  password TEXT
);

问题2:

如何使用C ++将记录插入表abe_account

问题3:

如何从表abe_account中检索记录并使用C ++将其分配给字符串

抱歉,我试过谷歌周围搜索堆栈溢出,我仍然对使用感到困惑,如果它的mysql,它对我来说会很简单。

3 个答案:

答案 0 :(得分:2)

  

问题2:

     

问题3:

让我谷歌给你,朋友:An Introduction To The SQLite C/C++ Interface

答案 1 :(得分:1)

要创建新数据库,只需连接到它:

$ sqlite3 your_database_file

这将在文件your_database_file中创建您的数据库。如果此文件已存在,则命令将打开它。

然后您可以执行CREATE TABLE或任何其他SQL。

答案 2 :(得分:1)

如果您使用的是sqlite终端,您只需在那里键入SQL,它就会被执行。

C ++代码的典型工作周期看起来像某样

sqlite3 * db;//database
sqlite3_stmt * stmt;//sql statement

sqlite3_open( "database.db", & db );//opening database

sqlite3_prepare( db, "SELECT something FROM something else;", -1, &stmt, NULL );//preparing the statement
sqlite3_step( stmt );//executing the statement

while( sqlite3_column_text( stmt, 0 ) )
{
char * str = (char *) sqlite3_column_text( stmt, 0 );///reading the 1st column of the result
//do your stuff
sqlite3_step( stmt );//moving to the next row of the result
}

sqlite3_finalize(stmt);
sqlite3_close(db);

您可以轻松地对这些功能进行谷歌搜索,以了解他们的论点以及他们的详细信息。