|
文/余涛
四、修改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下面增加一行
即将结构中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]  [下一页]
|