科技时代新浪首页 > 科技时代 > > 正文

ucLinux下sqlite嵌入式数据库移植全攻略(5)


http://www.sina.com.cn 2004年12月17日 08:40 天极yesky

  文/余涛

  四、修改sqlite/src/shell.c

  1、struct previous_mode_data 结构定义项:

  将 int colWidth[100];

  用 int colWidth[20];

  替换。

  2、struct callback_data 结构定义项

  将:

int colWidth[100];
int actualWidth[100];
char outfile[FILENAME_MAX];


  用:

int colWidth[20];
int actualWidth[20];
char *outfilep;


  对应替换。

  再在结构下面增加:

#ifndef FILENAME_MAX
#define FILENAME_MAX 4095
#endif
char outfilename[FILENAME_MAX]; /* Filename for *out */


  即

struct callback_data
{
...
};
#ifndef FILENAME_MAX
#define FILENAME_MAX 4095
#endif
char outfilename[FILENAME_MAX]; /* Filename for *out */


  3、函数do_meta_command(...)

  找到类似这样的一句:

sqlite_exec(p->db, "PRAGMA database_list; ", callback, &data, &zErrMsg);


  在它的前面有一句

memcpy(&data, p, sizeof(data));


  现在在memcpy下面增加一行

data.cnt = 0;


  即将结构中cnt的值赋为0 ;

  现在代码会被修改成类似:

open_db(p);
memcpy(&data, p, sizeof(data));
data.cnt = 0;


  再继续。

  找到类似这样的一句:

strcmp(azArg[1],"stdout")==0


  在它的下面的括号中:

  将 strcpy(p->outfile,"stdout");

  用 p->outfilep = "stdout";

  来替换。

  再在它下面的5-6行处

  将:

[上一页]  [1]  [2]  [3]  [4]  [5]  [6]  [下一页]


  点击此处查询全部ucLinux新闻 全部操作系统新闻


新浪科技24小时热门新闻排行     硬件驱动程序高速下载

评论】【推荐】【 】【打印】【下载点点通】【关闭
 

 
新 闻 查 询
关键词一
关键词二



彩 信 专 题
圣诞节
圣诞和弦铃声专题
3DMM
养眼到你喷血为止
请输入歌曲/歌手名:
更多专题   更多彩信
 
 



科技时代意见反馈留言板 电话:010-82628888-5488   欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2004 SINA Inc. All Rights Reserved

版权所有 新浪网