Lines Matching defs:p
51 # define readline(p) local_getline(p,stdin)
291 struct callback_data *p = (struct callback_data*)pArg;
292 switch( p->mode ){
300 if( p->cnt++>0 ) fprintf(p->out,"\n");
302 fprintf(p->out,"%*s = %s\n", w, azCol[i],
303 azArg[i] ? azArg[i] : p->nullvalue);
308 if( p->cnt++==0 ){
311 if( i<ArraySize(p->colWidth) ){
312 w = p->colWidth[i];
319 n = strlen(azArg && azArg[i] ? azArg[i] : p->nullvalue);
322 if( i<ArraySize(p->actualWidth) ){
323 p->actualWidth[i] = w;
325 if( p->showHeader ){
326 fprintf(p->out,"%-*.*s%s",w,w,azCol[i], i==nArg-1 ? "\n": " ");
329 if( p->showHeader ){
332 if( i<ArraySize(p->actualWidth) ){
333 w = p->actualWidth[i];
337 fprintf(p->out,"%-*.*s%s",w,w,"-----------------------------------"
346 if( i<ArraySize(p->actualWidth) ){
347 w = p->actualWidth[i];
351 fprintf(p->out,"%-*.*s%s",w,w,
352 azArg[i] ? azArg[i] : p->nullvalue, i==nArg-1 ? "\n": " ");
358 if( p->cnt++==0 && p->showHeader ){
360 fprintf(p->out,"%s%s",azCol[i], i==nArg-1 ? "\n" : p->separator);
366 if( z==0 ) z = p->nullvalue;
367 fprintf(p->out, "%s", z);
369 fprintf(p->out, "%s", p->separator);
370 }else if( p->mode==MODE_Semi ){
371 fprintf(p->out, ";\n");
373 fprintf(p->out, "\n");
379 if( p->cnt++==0 && p->showHeader ){
380 fprintf(p->out,"<TR>");
382 fprintf(p->out,"<TH>%s</TH>",azCol[i]);
384 fprintf(p->out,"</TR>\n");
387 fprintf(p->out,"<TR>");
389 fprintf(p->out,"<TD>");
390 output_html_string(p->out, azArg[i] ? azArg[i] : p->nullvalue);
391 fprintf(p->out,"</TD>\n");
393 fprintf(p->out,"</TR>\n");
398 fprintf(p->out,"INSERT INTO %s VALUES(",p->zDestTable);
402 fprintf(p->out,"%sNULL",zSep);
404 fprintf(p->out,"%s%s",zSep, azArg[i]);
406 if( zSep[0] ) fprintf(p->out,"%s",zSep);
407 output_quoted_string(p->out, azArg[i]);
410 fprintf(p->out,");\n");
422 static void set_table_name(struct callback_data *p, const char *zName){
427 if( p->zDestTable ){
428 free(p->zDestTable);
429 p->zDestTable = 0;
440 z = p->zDestTable = malloc( n+1 );
462 struct callback_data *p = (struct callback_data *)pArg;
464 fprintf(p->out, "%s;\n", azArg[2]);
467 d2 = *p;
471 sqlite_exec_printf(p->db,
513 static void process_input(struct callback_data *p, FILE *in);
519 static void open_db(struct callback_data *p){
520 if( p->db==0 ){
523 int n = p->zKey ? strlen(p->zKey) : 0;
524 db = p->db = sqlite_open_encrypted(p->zDbFilename, p->zKey, n, 0, &zErrMsg);
526 db = p->db = sqlite_open(p->zDbFilename, 0, &zErrMsg);
528 if( p->db==0 ){
531 p->zDbFilename, zErrMsg);
533 fprintf(stderr,"Unable to open database %s\n", p->zDbFilename);
546 static int do_meta_command(char *zLine, struct callback_data *p){
580 open_db(p);
581 memcpy(&data, p, sizeof(data));
587 sqlite_exec(p->db, "PRAGMA database_list; ", callback, &data, &zErrMsg);
596 open_db(p);
597 fprintf(p->out, "BEGIN TRANSACTION;\n");
599 sqlite_exec(p->db,
603 dump_callback, p, &zErrMsg
608 sqlite_exec_printf(p->db,
612 dump_callback, p, &zErrMsg, azArg[i]
620 fprintf(p->out, "COMMIT;\n");
636 p->echoOn = val;
656 if(!p->explainPrev.valid) {
657 p->explainPrev.valid = 1;
658 p->explainPrev.mode = p->mode;
659 p->explainPrev.showHeader = p->showHeader;
660 memcpy(p->explainPrev.colWidth,p->colWidth,sizeof(p->colWidth));
662 /* We could put this code under the !p->explainValid
669 p->mode = MODE_Column;
670 p->showHeader = 1;
671 memset(p->colWidth,0,ArraySize(p->colWidth));
672 p->colWidth[0] = 4;
673 p->colWidth[1] = 12;
674 p->colWidth[2] = 10;
675 p->colWidth[3] = 10;
676 p->colWidth[4] = 35;
677 }else if (p->explainPrev.valid) {
678 p->explainPrev.valid = 0;
679 p->mode = p->explainPrev.mode;
680 p->showHeader = p->explainPrev.showHeader;
681 memcpy(p->colWidth,p->explainPrev.colWidth,sizeof(p->colWidth));
699 p->showHeader = val;
709 open_db(p);
710 memcpy(&data, p, sizeof(data));
713 sqlite_exec_printf(p->db,
733 p->mode = MODE_Line;
737 p->mode = MODE_Column;
739 p->mode = MODE_List;
741 p->mode = MODE_Html;
743 p->mode = MODE_Insert;
745 set_table_name(p, azArg[2]);
747 set_table_name(p, "table");
755 sprintf(p->nullvalue, "%.*s", (int)ArraySize(p->nullvalue)-1, azArg[1]);
759 if( p->out!=stdout ){
760 fclose(p->out);
763 p->out = stdout;
764 strcpy(p->outfile,"stdout");
766 p->out = fopen(azArg[1], "wb");
767 if( p->out==0 ){
769 p->out = stdout;
771 strcpy(p->outfile,azArg[1]);
776 if( c=='p' && strncmp(azArg[0], "prompt", n)==0 && (nArg==2 || nArg==3)){
794 process_input(p, alt);
801 char *zOld = p->zKey;
808 sqlite_freemem(p->zKey);
809 p->zKey = sqlite_mprintf("%s", azArg[2]);
810 sqlite_rekey(p->db, p->zKey, strlen(p->zKey));
818 open_db(p);
819 memcpy(&data, p, sizeof(data));
851 sqlite_exec_printf(p->db,
860 sqlite_exec(p->db,
876 sprintf(p->separator, "%.*s", (int)ArraySize(p->separator)-1, azArg[1]);
881 fprintf(p->out,"%9.9s: %s\n","echo", p->echoOn ? "on" : "off");
882 fprintf(p->out,"%9.9s: %s\n","explain", p->explainPrev.valid ? "on" :"off");
883 fprintf(p->out,"%9.9s: %s\n","headers", p->showHeader ? "on" : "off");
884 fprintf(p->out,"%9.9s: %s\n","mode", modeDescr[p->mode]);
885 fprintf(p->out,"%9.9s: %s\n","nullvalue", p->nullvalue);
886 fprintf(p->out,"%9.9s: %s\n","output",
887 strlen(p->outfile) ? p->outfile : "stdout");
888 fprintf(p->out,"%9.9s: %s\n","separator", p->separator);
889 fprintf(p->out,"%9.9s: ","width");
890 for (i=0;i<(int)ArraySize(p->colWidth) && p->colWidth[i] != 0;i++) {
891 fprintf(p->out,"%d ",p->colWidth[i]);
893 fprintf(p->out,"\n\n");
900 open_db(p);
902 rc = sqlite_get_table(p->db,
912 rc = sqlite_get_table_printf(p->db,
950 open_db(p);
951 sqlite_busy_timeout(p->db, atoi(azArg[1]));
956 for(j=1; j<nArg && j<ArraySize(p->colWidth); j++){
957 p->colWidth[j-1] = atoi(azArg[j]);
1024 static void process_input(struct callback_data *p, FILE *in){
1030 while( fflush(p->out), (zLine = one_input_line(zSql, in))!=0 ){
1035 if( p->echoOn ) printf("%s\n", zLine);
1038 int rc = do_meta_command(zLine, p);
1067 p->cnt = 0;
1068 open_db(p);
1069 rc = sqlite_exec(p->db, zSql, callback, p, &zErrMsg);
1071 if( in!=0 && !p->echoOn ) printf("%s\n",zSql);
1140 struct callback_data *p, /* Configuration data */
1168 process_input(p,in);