亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? shell.c

?? 新版輕量級嵌入式數(shù)據(jù)庫
?? C
?? 第 1 頁 / 共 4 頁
字號:
  if( c=='d' && strncmp(azArg[0], "dump", n)==0 ){    char *zErrMsg = 0;    open_db(p);    fprintf(p->out, "BEGIN TRANSACTION;\n");    if( nArg==1 ){      run_schema_dump_query(p,         "SELECT name, type, sql FROM sqlite_master "        "WHERE sql NOT NULL AND type=='table'", 0      );      run_schema_dump_query(p,         "SELECT name, type, sql FROM sqlite_master "        "WHERE sql NOT NULL AND type!='table' AND type!='meta'", 0      );    }else{      int i;      for(i=1; i<nArg; i++){        zShellStatic = azArg[i];        run_schema_dump_query(p,          "SELECT name, type, sql FROM sqlite_master "          "WHERE tbl_name LIKE shellstatic() AND type=='table'"          "  AND sql NOT NULL", 0);        run_schema_dump_query(p,          "SELECT name, type, sql FROM sqlite_master "          "WHERE tbl_name LIKE shellstatic() AND type!='table'"          "  AND type!='meta' AND sql NOT NULL", 0);        zShellStatic = 0;      }    }    if( zErrMsg ){      fprintf(stderr,"Error: %s\n", zErrMsg);      sqlite3_free(zErrMsg);    }else{      fprintf(p->out, "COMMIT;\n");    }  }else  if( c=='e' && strncmp(azArg[0], "echo", n)==0 && nArg>1 ){    int j;    char *z = azArg[1];    int val = atoi(azArg[1]);    for(j=0; z[j]; j++){      z[j] = tolower((unsigned char)z[j]);    }    if( strcmp(z,"on")==0 ){      val = 1;    }else if( strcmp(z,"yes")==0 ){      val = 1;    }    p->echoOn = val;  }else  if( c=='e' && strncmp(azArg[0], "exit", n)==0 ){    rc = 1;  }else  if( c=='e' && strncmp(azArg[0], "explain", n)==0 ){    int j;    static char zOne[] = "1";    char *z = nArg>=2 ? azArg[1] : zOne;    int val = atoi(z);    for(j=0; z[j]; j++){      z[j] = tolower((unsigned char)z[j]);    }    if( strcmp(z,"on")==0 ){      val = 1;    }else if( strcmp(z,"yes")==0 ){      val = 1;    }    if(val == 1) {      if(!p->explainPrev.valid) {        p->explainPrev.valid = 1;        p->explainPrev.mode = p->mode;        p->explainPrev.showHeader = p->showHeader;        memcpy(p->explainPrev.colWidth,p->colWidth,sizeof(p->colWidth));      }      /* We could put this code under the !p->explainValid      ** condition so that it does not execute if we are already in      ** explain mode. However, always executing it allows us an easy      ** was to reset to explain mode in case the user previously      ** did an .explain followed by a .width, .mode or .header      ** command.      */      p->mode = MODE_Column;      p->showHeader = 1;      memset(p->colWidth,0,ArraySize(p->colWidth));      p->colWidth[0] = 4;      p->colWidth[1] = 14;      p->colWidth[2] = 10;      p->colWidth[3] = 10;      p->colWidth[4] = 33;    }else if (p->explainPrev.valid) {      p->explainPrev.valid = 0;      p->mode = p->explainPrev.mode;      p->showHeader = p->explainPrev.showHeader;      memcpy(p->colWidth,p->explainPrev.colWidth,sizeof(p->colWidth));    }  }else  if( c=='h' && (strncmp(azArg[0], "header", n)==0                 ||                 strncmp(azArg[0], "headers", n)==0 )&& nArg>1 ){    int j;    char *z = azArg[1];    int val = atoi(azArg[1]);    for(j=0; z[j]; j++){      z[j] = tolower((unsigned char)z[j]);    }    if( strcmp(z,"on")==0 ){      val = 1;    }else if( strcmp(z,"yes")==0 ){      val = 1;    }    p->showHeader = val;  }else  if( c=='h' && strncmp(azArg[0], "help", n)==0 ){    fprintf(stderr,zHelp);  }else  if( c=='i' && strncmp(azArg[0], "import", n)==0 && nArg>=3 ){    char *zTable = azArg[2];    /* Insert data into this table */    char *zFile = azArg[1];     /* The file from which to extract data */    sqlite3_stmt *pStmt;        /* A statement */    int rc;                     /* Result code */    int nCol;                   /* Number of columns in the table */    int nByte;                  /* Number of bytes in an SQL string */    int i, j;                   /* Loop counters */    int nSep;                   /* Number of bytes in p->separator[] */    char *zSql;                 /* An SQL statement */    char *zLine;                /* A single line of input from the file */    char **azCol;               /* zLine[] broken up into columns */    char *zCommit;              /* How to commit changes */       FILE *in;                   /* The input file */    int lineno = 0;             /* Line number of input file */    nSep = strlen(p->separator);    if( nSep==0 ){      fprintf(stderr, "non-null separator required for import\n");      return 0;    }    zSql = sqlite3_mprintf("SELECT * FROM '%q'", zTable);    if( zSql==0 ) return 0;    nByte = strlen(zSql);    rc = sqlite3_prepare(p->db, zSql, -1, &pStmt, 0);    sqlite3_free(zSql);    if( rc ){      fprintf(stderr,"Error: %s\n", sqlite3_errmsg(db));      nCol = 0;    }else{      nCol = sqlite3_column_count(pStmt);    }    sqlite3_finalize(pStmt);    if( nCol==0 ) return 0;    zSql = malloc( nByte + 20 + nCol*2 );    if( zSql==0 ) return 0;    sqlite3_snprintf(nByte+20, zSql, "INSERT INTO '%q' VALUES(?", zTable);    j = strlen(zSql);    for(i=1; i<nCol; i++){      zSql[j++] = ',';      zSql[j++] = '?';    }    zSql[j++] = ')';    zSql[j] = 0;    rc = sqlite3_prepare(p->db, zSql, -1, &pStmt, 0);    free(zSql);    if( rc ){      fprintf(stderr, "Error: %s\n", sqlite3_errmsg(db));      sqlite3_finalize(pStmt);      return 0;    }    in = fopen(zFile, "rb");    if( in==0 ){      fprintf(stderr, "cannot open file: %s\n", zFile);      sqlite3_finalize(pStmt);      return 0;    }    azCol = malloc( sizeof(azCol[0])*(nCol+1) );    if( azCol==0 ){      fclose(in);      return 0;    }    sqlite3_exec(p->db, "BEGIN", 0, 0, 0);    zCommit = "COMMIT";    while( (zLine = local_getline(0, in))!=0 ){      char *z;      i = 0;      lineno++;      azCol[0] = zLine;      for(i=0, z=zLine; *z && *z!='\n' && *z!='\r'; z++){        if( *z==p->separator[0] && strncmp(z, p->separator, nSep)==0 ){          *z = 0;          i++;          if( i<nCol ){            azCol[i] = &z[nSep];            z += nSep-1;          }        }      }      *z = 0;      if( i+1!=nCol ){        fprintf(stderr,"%s line %d: expected %d columns of data but found %d\n",           zFile, lineno, nCol, i+1);        zCommit = "ROLLBACK";        break;      }      for(i=0; i<nCol; i++){        sqlite3_bind_text(pStmt, i+1, azCol[i], -1, SQLITE_STATIC);      }      sqlite3_step(pStmt);      rc = sqlite3_reset(pStmt);      free(zLine);      if( rc!=SQLITE_OK ){        fprintf(stderr,"Error: %s\n", sqlite3_errmsg(db));        zCommit = "ROLLBACK";        break;      }    }    free(azCol);    fclose(in);    sqlite3_finalize(pStmt);    sqlite3_exec(p->db, zCommit, 0, 0, 0);  }else  if( c=='i' && strncmp(azArg[0], "indices", n)==0 && nArg>1 ){    struct callback_data data;    char *zErrMsg = 0;    open_db(p);    memcpy(&data, p, sizeof(data));    data.showHeader = 0;    data.mode = MODE_List;    zShellStatic = azArg[1];    sqlite3_exec(p->db,      "SELECT name FROM sqlite_master "      "WHERE type='index' AND tbl_name LIKE shellstatic() "      "UNION ALL "      "SELECT name FROM sqlite_temp_master "      "WHERE type='index' AND tbl_name LIKE shellstatic() "      "ORDER BY 1",      callback, &data, &zErrMsg    );    zShellStatic = 0;    if( zErrMsg ){      fprintf(stderr,"Error: %s\n", zErrMsg);      sqlite3_free(zErrMsg);    }  }else  if( c=='m' && strncmp(azArg[0], "mode", n)==0 && nArg>=2 ){    int n2 = strlen(azArg[1]);    if( strncmp(azArg[1],"line",n2)==0        ||        strncmp(azArg[1],"lines",n2)==0 ){      p->mode = MODE_Line;    }else if( strncmp(azArg[1],"column",n2)==0              ||              strncmp(azArg[1],"columns",n2)==0 ){      p->mode = MODE_Column;    }else if( strncmp(azArg[1],"list",n2)==0 ){      p->mode = MODE_List;    }else if( strncmp(azArg[1],"html",n2)==0 ){      p->mode = MODE_Html;    }else if( strncmp(azArg[1],"tcl",n2)==0 ){      p->mode = MODE_Tcl;    }else if( strncmp(azArg[1],"csv",n2)==0 ){      p->mode = MODE_Csv;      strcpy(p->separator, ",");    }else if( strncmp(azArg[1],"tabs",n2)==0 ){      p->mode = MODE_List;      strcpy(p->separator, "\t");    }else if( strncmp(azArg[1],"insert",n2)==0 ){      p->mode = MODE_Insert;      if( nArg>=3 ){        set_table_name(p, azArg[2]);      }else{        set_table_name(p, "table");      }    }else {      fprintf(stderr,"mode should be on of: "         "column csv html insert line list tabs tcl\n");    }  }else  if( c=='n' && strncmp(azArg[0], "nullvalue", n)==0 && nArg==2 ) {    sprintf(p->nullvalue, "%.*s", (int)ArraySize(p->nullvalue)-1, azArg[1]);  }else  if( c=='o' && strncmp(azArg[0], "output", n)==0 && nArg==2 ){    if( p->out!=stdout ){      fclose(p->out);    }    if( strcmp(azArg[1],"stdout")==0 ){      p->out = stdout;      strcpy(p->outfile,"stdout");    }else{      p->out = fopen(azArg[1], "wb");      if( p->out==0 ){        fprintf(stderr,"can't write to \"%s\"\n", azArg[1]);        p->out = stdout;      } else {         strcpy(p->outfile,azArg[1]);      }    }  }else  if( c=='p' && strncmp(azArg[0], "prompt", n)==0 && (nArg==2 || nArg==3)){    if( nArg >= 2) {      strncpy(mainPrompt,azArg[1],(int)ArraySize(mainPrompt)-1);    }    if( nArg >= 3) {      strncpy(continuePrompt,azArg[2],(int)ArraySize(continuePrompt)-1);    }  }else  if( c=='q' && strncmp(azArg[0], "quit", n)==0 ){    rc = 1;  }else  if( c=='r' && strncmp(azArg[0], "read", n)==0 && nArg==2 ){    FILE *alt = fopen(azArg[1], "rb");    if( alt==0 ){      fprintf(stderr,"can't open \"%s\"\n", azArg[1]);    }else{      process_input(p, alt);      fclose(alt);    }  }else  if( c=='s' && strncmp(azArg[0], "schema", n)==0 ){    struct callback_data data;    char *zErrMsg = 0;    open_db(p);    memcpy(&data, p, sizeof(data));    data.showHeader = 0;    data.mode = MODE_Semi;    if( nArg>1 ){      int i;      for(i=0; azArg[1][i]; i++) azArg[1][i] = tolower(azArg[1][i]);      if( strcmp(azArg[1],"sqlite_master")==0 ){        char *new_argv[2], *new_colv[2];        new_argv[0] = "CREATE TABLE sqlite_master (\n"                      "  type text,\n"                      "  name text,\n"                      "  tbl_name text,\n"                      "  rootpage integer,\n"                      "  sql text\n"                      ")";        new_argv[1] = 0;        new_colv[0] = "sql";        new_colv[1] = 0;        callback(&data, 1, new_argv, new_colv);      }else if( strcmp(azArg[1],"sqlite_temp_master")==0 ){        char *new_argv[2], *new_colv[2];        new_argv[0] = "CREATE TEMP TABLE sqlite_temp_master (\n"                      "  type text,\n"                      "  name text,\n"                      "  tbl_name text,\n"                      "  rootpage integer,\n"                      "  sql text\n"                      ")";        new_argv[1] = 0;        new_colv[0] = "sql";        new_colv[1] = 0;        callback(&data, 1, new_argv, new_colv);      }else{        zShellStatic = azArg[1];        sqlite3_exec(p->db,          "SELECT sql FROM "          "  (SELECT * FROM sqlite_master UNION ALL"          "   SELECT * FROM sqlite_temp_master) "          "WHERE tbl_name LIKE shellstatic() AND type!='meta' AND sql NOTNULL "          "ORDER BY substr(type,2,1), name",          callback, &data, &zErrMsg);        zShellStatic = 0;      }    }else{      sqlite3_exec(p->db,         "SELECT sql FROM "         "  (SELECT * FROM sqlite_master UNION ALL"         "   SELECT * FROM sqlite_temp_master) "         "WHERE type!='meta' AND sql NOTNULL AND name NOT LIKE 'sqlite_%'"         "ORDER BY substr(type,2,1), name",         callback, &data, &zErrMsg      );    }    if( zErrMsg ){      fprintf(stderr,"Error: %s\n", zErrMsg);      sqlite3_free(zErrMsg);    }  }else  if( c=='s' && strncmp(azArg[0], "separator", n)==0 && nArg==2 ){    sprintf(p->separator, "%.*s", (int)ArraySize(p->separator)-1, azArg[1]);  }else  if( c=='s' && strncmp(azArg[0], "show", n)==0){    int i;    fprintf(p->out,"%9.9s: %s\n","echo", p->echoOn ? "on" : "off");    fprintf(p->out,"%9.9s: %s\n","explain", p->explainPrev.valid ? "on" :"off");    fprintf(p->out,"%9.9s: %s\n","headers", p->showHeader ? "on" : "off");    fprintf(p->out,"%9.9s: %s\n","mode", modeDescr[p->mode]);    fprintf(p->out,"%9.9s: ", "nullvalue");      output_c_string(p->out, p->nullvalue);      fprintf(p->out, "\n");    fprintf(p->out,"%9.9s: %s\n","output",                                 strlen(p->outfile) ? p->outfile : "stdout");    fprintf(p->out,"%9.9s: ", "separator");      output_c_string(p->out, p->separator);      fprintf(p->out, "\n");    fprintf(p->out,"%9.9s: ","width");    for (i=0;i<(int)ArraySize(p->colWidth) && p->colWidth[i] != 0;i++) {      fprintf(p->out,"%d ",p->colWidth[i]);    }    fprintf(p->out,"\n");  }else  if( c=='t' && n>1 && strncmp(azArg[0], "tables", n)==0 ){    char **azResult;    int nRow, rc;    char *zErrMsg;    open_db(p);    if( nArg==1 ){      rc = sqlite3_get_table(p->db,        "SELECT name FROM sqlite_master "        "WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%'"        "UNION ALL "        "SELECT name FROM sqlite_temp_master "        "WHERE type IN ('table','view') "        "ORDER BY 1",        &azResult, &nRow, 0, &zErrMsg      );    }else{      zShellStatic = azArg[1];      rc = sqlite3_get_table(p->db,        "SELECT name FROM sqlite_master "        "WHERE type IN ('table','view') AND name LIKE '%'||shellstatic()||'%' "        "UNION ALL "        "SELECT name FROM sqlite_temp_master "        "WHERE type IN ('table','view') AND name LIKE '%'||shellstatic()||'%' "        "ORDER BY 1",        &azResult, &nRow, 0, &zErrMsg      );      zShellStatic = 0;    }    if( zErrMsg ){      fprintf(stderr,"Error: %s\n", zErrMsg);      sqlite3_free(zErrMsg);    }    if( rc==SQLITE_OK ){

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av网站免费线看精品| 亚洲国产高清在线观看视频| 亚洲精品日日夜夜| 在线观看视频91| 午夜电影一区二区三区| 欧美一二区视频| 国产一区二区三区国产| 中文久久乱码一区二区| 91香蕉视频mp4| 视频在线在亚洲| 2023国产一二三区日本精品2022| 岛国一区二区在线观看| 亚洲一区在线观看免费| 欧美成人免费网站| 99久久777色| 日韩福利视频导航| 国产午夜亚洲精品不卡| 色狠狠一区二区| 蜜桃视频第一区免费观看| 国产精品网站在线| 欧美三级电影一区| 国产呦萝稀缺另类资源| 亚洲精品乱码久久久久| 日韩精品专区在线影院重磅| 国产大陆a不卡| 午夜视频在线观看一区二区| 久久影音资源网| 欧美三级韩国三级日本三斤 | 在线视频欧美精品| 日本亚洲三级在线| 日韩一区在线免费观看| 日韩欧美高清一区| 日本高清不卡aⅴ免费网站| 精品一二线国产| 一区二区三区四区精品在线视频| 欧美成人精品高清在线播放| 91激情五月电影| 国产精品综合二区| 天堂在线一区二区| 亚洲欧美综合另类在线卡通| 欧美成人免费网站| 欧美日韩高清一区| 99视频超级精品| 国内精品自线一区二区三区视频| 亚洲高清一区二区三区| 国产精品高潮呻吟| 欧美电视剧在线观看完整版| 欧美日韩中文另类| 色av成人天堂桃色av| 国产盗摄精品一区二区三区在线| 奇米精品一区二区三区在线观看一| 中文字幕色av一区二区三区| 久久久99久久| 精品理论电影在线| 欧美老人xxxx18| 欧洲人成人精品| 91老司机福利 在线| 国产精品18久久久久久久久久久久| 午夜成人免费电影| 亚洲成人精品一区| 亚洲狠狠爱一区二区三区| 中文字幕一区二区三区四区| 国产欧美久久久精品影院| 精品久久久久久久久久久久久久久 | 日韩欧美色综合| 91精品在线麻豆| 在线播放91灌醉迷j高跟美女 | 一区二区三区四区在线免费观看| 国产精品美女www爽爽爽| 国产视频一区二区在线观看| 久久女同精品一区二区| 精品久久一区二区三区| 精品国产自在久精品国产| 日韩区在线观看| 欧美xxxx在线观看| 久久麻豆一区二区| 国产精品情趣视频| 亚洲天堂2016| 亚洲精品欧美激情| 亚洲一区免费在线观看| 午夜精品久久一牛影视| 日韩国产一区二| 免费看欧美女人艹b| 黑人精品欧美一区二区蜜桃| 国产传媒欧美日韩成人| 99在线视频精品| 欧美优质美女网站| 欧美精品一级二级| 精品久久99ma| 国产精品卡一卡二| 亚洲一区欧美一区| 日本欧美大码aⅴ在线播放| 黑人巨大精品欧美一区| 成人黄色国产精品网站大全在线免费观看| 成人高清视频免费观看| 91小视频免费观看| 91精品久久久久久久91蜜桃| 日韩免费成人网| 欧美国产一区在线| 亚洲精品国久久99热| 视频精品一区二区| 国产精品综合网| 91日韩精品一区| 欧美一区二区三区在| 久久婷婷久久一区二区三区| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲欧美国产77777| 丝袜美腿亚洲色图| 成人在线视频一区| 欧美福利电影网| 国产欧美一区二区精品秋霞影院| 中文字幕一区二| 男男gaygay亚洲| 99久精品国产| 精品毛片乱码1区2区3区| 亚洲啪啪综合av一区二区三区| 日韩国产欧美三级| 不卡的av在线| 精品免费99久久| 亚洲与欧洲av电影| 国产精品99久久久久久久女警 | 国产一区二区三区蝌蚪| 在线观看亚洲精品| 久久综合久久久久88| 亚洲综合在线视频| 国产一区二区三区四区五区美女 | 亚洲欧美日韩电影| 精品一区二区日韩| 91久久国产综合久久| 久久久噜噜噜久久人人看| 亚洲成人激情综合网| www.视频一区| 久久久久久99精品| 图片区小说区国产精品视频| 972aa.com艺术欧美| 精品国产一区二区亚洲人成毛片| 一区二区三区 在线观看视频| 国内精品伊人久久久久影院对白| 欧美日韩在线播放三区四区| 国产精品日产欧美久久久久| 精品一二线国产| 在线电影欧美成精品| 亚洲精品欧美在线| 99久免费精品视频在线观看| 久久久久久亚洲综合| 久久国产剧场电影| 7777精品伊人久久久大香线蕉最新版| 亚洲免费av网站| 99久久国产综合精品色伊| 国产欧美一区二区在线| 国产原创一区二区三区| 欧美成人三级电影在线| 日韩国产精品久久| 欧美日韩免费高清一区色橹橹| 亚洲精品久久久蜜桃| 色综合天天性综合| 国产精品初高中害羞小美女文| 国产.精品.日韩.另类.中文.在线.播放| 日韩一区二区免费视频| 日韩电影免费一区| 日韩一卡二卡三卡国产欧美| 视频在线观看一区二区三区| 欧美喷潮久久久xxxxx| 亚洲v精品v日韩v欧美v专区| 欧美日韩情趣电影| 丝袜亚洲另类欧美| 日韩欧美第一区| 精品在线一区二区| 欧美成人一区二区三区| 国产一区二区美女| 国产片一区二区| av一二三不卡影片| 亚洲精品美国一| 欧美日韩黄色一区二区| 日韩成人dvd| 欧美精品一区二区三区在线| 国产成人精品亚洲日本在线桃色| 国产亚洲美州欧州综合国| 高清不卡在线观看| 亚洲欧洲日韩综合一区二区| 一本到一区二区三区| 亚洲www啪成人一区二区麻豆| 欧美日韩中文字幕一区| 久久精品国产一区二区三 | 99久久er热在这里只有精品66| 亚洲视频一区二区在线| 91国偷自产一区二区三区观看| 亚洲在线观看免费视频| 日韩欧美亚洲另类制服综合在线| 国产精品1区二区.| 亚洲精品乱码久久久久久黑人| 欧美日韩视频在线第一区 | 国产无一区二区| 99精品在线观看视频| 亚洲国产精品尤物yw在线观看| 欧美变态tickle挠乳网站| 99re66热这里只有精品3直播| 午夜精品123| 国产精品免费看片| 91精品国产欧美一区二区|