Linux数据库(sqlite)编程:

一:数据库与表:

1:sqlite将每个数据库都保存成一个文件;

2:数据库中的每个数据被组织成表的形式,表由若干个相同字段的记录组成;

3:每个表中可以指定一个或多个字段为主键,表中所记录的主键的值都不能重复。这种不重复是在插入记录时控制的,即向表中插入一个相同记录的话,则插入失败。

二:数据库的启动

1:sqlite3  student.db

2:其中,student.db是要操作的数据库文件,如果它不存在,则会自动创建一个新的空数据库;

三:创建表

eg: create table student (ID  INTEGER , sex TEXT, name TEXT , age INTEGER ,tell INTEGER ,primary key(ID));

四:sql 语句汇总

1:  .tables    //显示数据库中的所有表名

       .exit       //退出sqlite互动模式的命令

       .schema    // 查看表的结构

2:增加一列数据 及 表的重命名

     alter  table  student  rename to  student2;  //  将表student重命名为student2;

     alter  table  student  add  column  sex text;  //在表student中增加sex;

3: 删除表

     drop  table  student;    //删除表student,表删除后,表中所有存储的数据将全部丢弃

     delete  from student  where ID=2;  //删除表中 ID=2 的哪一行

4:插入记录及查询

    select * from student;   //  查询student表中的所有数据

    select * from student  order  by  id;  //按ID顺序查找student中的所有信息;

    select * from student  order  by   id  asc/desc;  //按ID的正顺序/逆顺序查找表中的所有信息;

    select *  from student where  id > 3;  //查找ID>3的所有信息;

    select * from student where id>=2 and id<=4;  //查找student表中  4>=ID>=2  的所有信息;

    select * from student where name like 'T%';  // 查找表student中所有以T开头的所有信息;

    insert  into  student  values(1, 'boy' , 'leikun', 20 , 159084111);  //在表student中插入新的记录;

五:修改记录

    update  student  set  name='leikun' where  id =2;  //  将表中ID=2 的name 改为 leikun;

六:打开和关闭数据库

      1:打开数据库

    #include<sqlite.h>

     int  sqlite3_open(文件名,sqlite3**)  //  用这个函数开始数据库操作

      需要传入两个参数,一个是数据库文件名,比如:database.db     

      如果此文件不存在,sqlite会自动建立它,如果它存在,则尝试将它当作数据库文件来打开;

      sqlite**   为关键数据结构;

      2:关闭数据库

      int  sqlite3_close(sqlite *);

     如果前面用 sqlite_open 打开个一个数据库, 结尾时一定要用  sqlite_close 关闭数据库

     下面给出一个小程序:

    

int main()
{	
   sqlite3 * db = NULL; //声明sqlite关键结构指针	
  int result; 	
  result = sqlite3_open(“database.db”, &db );
  if( result != SQLITE_OK )   // 数据库正常打开,则返回值为: SQLITE_OK
	{
		return -1;   
	}	
  sqlite3_close( db );	
  return 0;
}

      //  sql 语句执行函数

      int sqlite3_exec(sqlite3*,  const char *sql,  sqlite3_callback,  void *,   char **errmsg );

      //  查询数据库的 sql  语句函数

      int sqlite3_get_table(sqlite3*, const char *sql, char ***resultp, int *nrow, int *ncolumn, char **errmsg );

      其中返回的结果都存放在一维数组 resultp 中

sql server 中创建的数据库可存多少条数据 数据库创建的sql语句_数据库

 


1:sqlite将每个数据库都保存成一个文件;

2:数据库中的数据被组织成表的形势,表由若干个相同字段的记录组成;