180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
|
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
|
+
-
-
+
|
const char *zSep; /* Term separator */
blob_zero(&sql);
blob_append(&sql, "DELETE FROM fv WHERE ", -1);
zSep = "";
for(i=3; i<g.argc; i++){
file_tree_name(g.argv[i], &treename, 1);
fprintf(stderr,"%s , %s\n",g.argv[i], blob_str(&treename));
if( file_isdir(g.argv[i])==1 ){
if( blob_size(&treename)>0 ){
blob_appendf(&sql, "%sfn NOT GLOB '%b/*' ", zSep, &treename);
}else{
blob_reset(&sql);
blob_append(&sql, "DELETE FROM fv", -1);
break;
}
}else{
blob_appendf(&sql, "%sfn<>%B ", zSep, &treename);
}
zSep = "AND ";
blob_reset(&treename);
}
/* fprintf(stderr, "%s\n", blob_str(&sql)); */
fprintf(stderr, "%s\n", blob_str(&sql));
db_multi_exec(blob_str(&sql));
blob_reset(&sql);
}
db_prepare(&q,
"SELECT fn, idv, ridv, idt, ridt, chnged FROM fv ORDER BY 1"
);
|