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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? test1.c

?? sqlite庫
?? C
?? 第 1 頁 / 共 5 頁
字號:
    if( Tcl_GetInt(interp, argv[2], &rep) ) return TCL_ERROR;  }else{    rep = 0;  }  sqlite3_iMallocFail = n;  sqlite3_iMallocReset = rep;  return TCL_OK;}#endif/*** Usage: sqlite_malloc_stat**** Return the number of prior calls to sqliteMalloc() and sqliteFree().*/#ifdef SQLITE_MEMDEBUGstatic int sqlite_malloc_stat(  void *NotUsed,  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int argc,              /* Number of arguments */  char **argv            /* Text of each argument */){  char zBuf[200];  sprintf(zBuf, "%d %d %d", sqlite3_nMalloc,sqlite3_nFree,sqlite3_iMallocFail);  Tcl_AppendResult(interp, zBuf, 0);  return TCL_OK;}/*** This function implements a Tcl command that may be invoked using any of** the four forms enumerated below.**** sqlite_malloc_outstanding**     Return a summary of all unfreed blocks of memory allocated by the**     current thread. See comments above function sqlite3OutstandingMallocs() **     in util.c for a description of the returned value.**** sqlite_malloc_outstanding -bytes**     Return the total amount of unfreed memory (in bytes) allocated by **     this thread.**** sqlite_malloc_outstanding -maxbytes**     Return the maximum amount of dynamic memory in use at one time **     by this thread.**** sqlite_malloc_outstanding -clearmaxbytes**     Set the value returned by [sqlite_malloc_outstanding -maxbytes]**     to the current value of [sqlite_malloc_outstanding -bytes]. */static int sqlite_malloc_outstanding(  ClientData clientData,  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int objc,              /* Number of arguments */  Tcl_Obj *CONST objv[]  /* Command arguments */){  extern int sqlite3OutstandingMallocs(Tcl_Interp *interp);#if defined(SQLITE_DEBUG) && defined(SQLITE_MEMDEBUG) && SQLITE_MEMDEBUG>1  if( objc==2 ){    const char *zArg = Tcl_GetString(objv[1]);#ifdef SQLITE_ENABLE_MEMORY_MANAGEMENT    ThreadData const *pTd = sqlite3ThreadDataReadOnly();    if( 0==strcmp(zArg, "-bytes") ){      Tcl_SetObjResult(interp, Tcl_NewIntObj(pTd->nAlloc));    }else if( 0==strcmp(zArg, "-clearmaxbytes") ){      sqlite3_nMaxAlloc = pTd->nAlloc;    }else #endif    if( 0==strcmp(zArg, "-maxbytes") ){      Tcl_SetObjResult(interp, Tcl_NewWideIntObj(sqlite3_nMaxAlloc));    }else{      Tcl_AppendResult(interp, "bad option \"", zArg,         "\": must be -bytes, -maxbytes or -clearmaxbytes", 0      );      return TCL_ERROR;    }    return TCL_OK;  }  if( objc!=1 ){    Tcl_WrongNumArgs(interp, 1, objv, "?-bytes?");    return TCL_ERROR;  }  return sqlite3OutstandingMallocs(interp);#else  return TCL_OK;#endif}#endif/*** Usage: sqlite3_enable_shared_cache      BOOLEAN***/#if !defined(SQLITE_OMIT_SHARED_CACHE)static int test_enable_shared(  ClientData clientData, /* Pointer to sqlite3_enable_XXX function */  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int objc,              /* Number of arguments */  Tcl_Obj *CONST objv[]  /* Command arguments */){  int rc;  int enable;  int ret = 0;  if( objc!=2 ){    Tcl_WrongNumArgs(interp, 1, objv, "BOOLEAN");    return TCL_ERROR;  }  if( Tcl_GetBooleanFromObj(interp, objv[1], &enable) ){    return TCL_ERROR;  }  ret = sqlite3ThreadDataReadOnly()->useSharedData;  rc = sqlite3_enable_shared_cache(enable);  if( rc!=SQLITE_OK ){    Tcl_SetResult(interp, (char *)sqlite3ErrStr(rc), TCL_STATIC);    return TCL_ERROR;  }  Tcl_SetObjResult(interp, Tcl_NewBooleanObj(ret));  return TCL_OK;}#endif/*** Usage: sqlite3_libversion_number***/static int test_libversion_number(  ClientData clientData, /* Pointer to sqlite3_enable_XXX function */  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int objc,              /* Number of arguments */  Tcl_Obj *CONST objv[]  /* Command arguments */){  Tcl_SetObjResult(interp, Tcl_NewIntObj(sqlite3_libversion_number()));  return TCL_OK;}/*** Usage: sqlite3_table_column_metadata DB dbname tblname colname***/#ifdef SQLITE_ENABLE_COLUMN_METADATAstatic int test_table_column_metadata(  ClientData clientData, /* Pointer to sqlite3_enable_XXX function */  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int objc,              /* Number of arguments */  Tcl_Obj *CONST objv[]  /* Command arguments */){  sqlite3 *db;  const char *zDb;  const char *zTbl;  const char *zCol;  int rc;  Tcl_Obj *pRet;  const char *zDatatype;  const char *zCollseq;  int notnull;  int primarykey;  int autoincrement;  if( objc!=5 ){    Tcl_WrongNumArgs(interp, 1, objv, "DB dbname tblname colname");    return TCL_ERROR;  }  if( getDbPointer(interp, Tcl_GetString(objv[1]), &db) ) return TCL_ERROR;  zDb = Tcl_GetString(objv[2]);  zTbl = Tcl_GetString(objv[3]);  zCol = Tcl_GetString(objv[4]);  if( strlen(zDb)==0 ) zDb = 0;  rc = sqlite3_table_column_metadata(db, zDb, zTbl, zCol,       &zDatatype, &zCollseq, &notnull, &primarykey, &autoincrement);  if( rc!=SQLITE_OK ){    Tcl_AppendResult(interp, sqlite3_errmsg(db), 0);    return TCL_ERROR;  }  pRet = Tcl_NewObj();  Tcl_ListObjAppendElement(0, pRet, Tcl_NewStringObj(zDatatype, -1));  Tcl_ListObjAppendElement(0, pRet, Tcl_NewStringObj(zCollseq, -1));  Tcl_ListObjAppendElement(0, pRet, Tcl_NewIntObj(notnull));  Tcl_ListObjAppendElement(0, pRet, Tcl_NewIntObj(primarykey));  Tcl_ListObjAppendElement(0, pRet, Tcl_NewIntObj(autoincrement));  Tcl_SetObjResult(interp, pRet);  return TCL_OK;}#endif/*** Usage:  sqlite_abort**** Shutdown the process immediately.  This is not a clean shutdown.** This command is used to test the recoverability of a database in** the event of a program crash.*/static int sqlite_abort(  void *NotUsed,  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int argc,              /* Number of arguments */  char **argv            /* Text of each argument */){  assert( interp==0 );   /* This will always fail */  return TCL_OK;}/*** The following routine is a user-defined SQL function whose purpose** is to test the sqlite_set_result() API.*/static void testFunc(sqlite3_context *context, int argc, sqlite3_value **argv){  while( argc>=2 ){    const char *zArg0 = (char*)sqlite3_value_text(argv[0]);    if( zArg0 ){      if( 0==sqlite3StrICmp(zArg0, "int") ){        sqlite3_result_int(context, sqlite3_value_int(argv[1]));      }else if( sqlite3StrICmp(zArg0,"int64")==0 ){        sqlite3_result_int64(context, sqlite3_value_int64(argv[1]));      }else if( sqlite3StrICmp(zArg0,"string")==0 ){        sqlite3_result_text(context, (char*)sqlite3_value_text(argv[1]), -1,            SQLITE_TRANSIENT);      }else if( sqlite3StrICmp(zArg0,"double")==0 ){        sqlite3_result_double(context, sqlite3_value_double(argv[1]));      }else if( sqlite3StrICmp(zArg0,"null")==0 ){        sqlite3_result_null(context);      }else if( sqlite3StrICmp(zArg0,"value")==0 ){        sqlite3_result_value(context, argv[sqlite3_value_int(argv[1])]);      }else{        goto error_out;      }    }else{      goto error_out;    }    argc -= 2;    argv += 2;  }  return;error_out:  sqlite3_result_error(context,"first argument should be one of: "      "int int64 string double null value", -1);}/*** Usage:   sqlite_register_test_function  DB  NAME**** Register the test SQL function on the database DB under the name NAME.*/static int test_register_func(  void *NotUsed,  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int argc,              /* Number of arguments */  char **argv            /* Text of each argument */){  sqlite3 *db;  int rc;  if( argc!=3 ){    Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0],        " DB FUNCTION-NAME", 0);    return TCL_ERROR;  }  if( getDbPointer(interp, argv[1], &db) ) return TCL_ERROR;  rc = sqlite3_create_function(db, argv[2], -1, SQLITE_UTF8, 0,       testFunc, 0, 0);  if( rc!=0 ){    Tcl_AppendResult(interp, sqlite3ErrStr(rc), 0);    return TCL_ERROR;  }  if( sqlite3TestErrCode(interp, db, rc) ) return TCL_ERROR;  return TCL_OK;}/*** Usage:  sqlite3_finalize  STMT **** Finalize a statement handle.*/static int test_finalize(  void * clientData,  Tcl_Interp *interp,  int objc,  Tcl_Obj *CONST objv[]){  sqlite3_stmt *pStmt;  int rc;  sqlite3 *db;  if( objc!=2 ){    Tcl_AppendResult(interp, "wrong # args: should be \"",        Tcl_GetStringFromObj(objv[0], 0), " <STMT>", 0);    return TCL_ERROR;  }  if( getStmtPointer(interp, Tcl_GetString(objv[1]), &pStmt) ) return TCL_ERROR;  if( pStmt ){    db = StmtToDb(pStmt);  }  rc = sqlite3_finalize(pStmt);  Tcl_SetResult(interp, (char *)errorName(rc), TCL_STATIC);  if( db && sqlite3TestErrCode(interp, db, rc) ) return TCL_ERROR;  return TCL_OK;}/*** Usage:  sqlite3_reset  STMT **** Reset a statement handle.*/static int test_reset(  void * clientData,  Tcl_Interp *interp,  int objc,  Tcl_Obj *CONST objv[]){  sqlite3_stmt *pStmt;  int rc;  if( objc!=2 ){    Tcl_AppendResult(interp, "wrong # args: should be \"",        Tcl_GetStringFromObj(objv[0], 0), " <STMT>", 0);    return TCL_ERROR;  }  if( getStmtPointer(interp, Tcl_GetString(objv[1]), &pStmt) ) return TCL_ERROR;  rc = sqlite3_reset(pStmt);  if( pStmt && sqlite3TestErrCode(interp, StmtToDb(pStmt), rc) ){    return TCL_ERROR;  }  Tcl_SetResult(interp, (char *)errorName(rc), TCL_STATIC);/*  if( rc ){    return TCL_ERROR;  }*/  return TCL_OK;}/*** Usage:  sqlite3_expired STMT **** Return TRUE if a recompilation of the statement is recommended.*/static int test_expired(  void * clientData,  Tcl_Interp *interp,  int objc,  Tcl_Obj *CONST objv[]){  sqlite3_stmt *pStmt;  if( objc!=2 ){    Tcl_AppendResult(interp, "wrong # args: should be \"",        Tcl_GetStringFromObj(objv[0], 0), " <STMT>", 0);    return TCL_ERROR;  }  if( getStmtPointer(interp, Tcl_GetString(objv[1]), &pStmt) ) return TCL_ERROR;  Tcl_SetObjResult(interp, Tcl_NewBooleanObj(sqlite3_expired(pStmt)));  return TCL_OK;}/*** Usage:  sqlite3_transfer_bindings FROMSTMT TOSTMT**** Transfer all bindings from FROMSTMT over to TOSTMT*/static int test_transfer_bind(  void * clientData,  Tcl_Interp *interp,  int objc,  Tcl_Obj *CONST objv[]){  sqlite3_stmt *pStmt1, *pStmt2;  if( objc!=3 ){    Tcl_AppendResult(interp, "wrong # args: should be \"",        Tcl_GetStringFromObj(objv[0], 0), " FROM-STMT TO-STMT", 0);    return TCL_ERROR;  }  if( getStmtPointer(interp, Tcl_GetString(objv[1]), &pStmt1)) return TCL_ERROR;  if( getStmtPointer(interp, Tcl_GetString(objv[2]), &pStmt2)) return TCL_ERROR;  Tcl_SetObjResult(interp,      Tcl_NewIntObj(sqlite3_transfer_bindings(pStmt1,pStmt2)));  return TCL_OK;}/*** Usage:  sqlite3_changes DB**** Return the number of changes made to the database by the last SQL** execution.*/static int test_changes(  void * clientData,  Tcl_Interp *interp,  int objc,  Tcl_Obj *CONST objv[]){  sqlite3 *db;  if( objc!=2 ){    Tcl_AppendResult(interp, "wrong # args: should be \"",       Tcl_GetString(objv[0]), " DB", 0);    return TCL_ERROR;  }  if( getDbPointer(interp, Tcl_GetString(objv[1]), &db) ) return TCL_ERROR;  Tcl_SetObjResult(interp, Tcl_NewIntObj(sqlite3_changes(db)));  return TCL_OK;}/*** This is the "static_bind_value" that variables are bound to when** the FLAG option of sqlite3_bind is "static"*/static char *sqlite_static_bind_value = 0;/*** Usage:  sqlite3_bind  VM  IDX  VALUE  FLAGS**** Sets the value of the IDX-th occurance of "?" in the original SQL** string.  VALUE is the new value.  If FLAGS=="null" then VALUE is** ignored and the value is set to NULL.  If FLAGS=="static" then** the value is set to the value of a static variable named** "sqlite_static_bind_value".  If FLAGS=="normal" then a copy** of the VALUE is made.  If FLAGS=="blob10" then a VALUE is ignored** an a 10-byte blob "abc\000xyz\000pq" is inserted.*/static int test_bind(  void *NotUsed,  Tcl_Interp *interp,    /* The TCL interpreter that invoked this command */  int argc,              /* Number of arguments */  char **argv            /* Text of each argument */){  sqlite3_stmt *pStmt;  int rc;  int idx;  if( argc!=5 ){    Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0],        " VM IDX VALUE (null|static|normal)\"", 0);    return TCL_ERROR;  }  if( getStmtPointer(interp, argv[1], &pStmt) ) return TCL_ERROR;  if( Tcl_GetInt(interp, argv[2], &idx) ) return TCL_ERROR;  if( strcmp(argv[4],"null")==0 ){    rc = sqlite3_bind_null(pStmt, idx);  }else if( strcmp(argv[4],"static")==0 ){    rc = sqlite3_bind_text(pStmt, idx, sqlite_static_bind_value, -1, 0);  }else if( strcmp(argv[4],"normal")==0 ){

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区四区av| 悠悠色在线精品| 久久亚洲影视婷婷| 国产精品高潮呻吟| 亚洲3atv精品一区二区三区| 蜜臀av一区二区在线观看| 高清不卡一二三区| 欧美吻胸吃奶大尺度电影| 精品免费国产一区二区三区四区| 国产精品嫩草99a| 奇米色一区二区三区四区| 成人一区二区三区在线观看 | 久久精品欧美日韩精品| 欧美激情一区二区三区蜜桃视频| 婷婷国产在线综合| 成人精品gif动图一区| 这里只有精品免费| 亚洲色图第一区| 国产自产2019最新不卡| 欧美日韩激情一区二区三区| 中文字幕av一区 二区| 性做久久久久久| 91麻豆成人久久精品二区三区| 91精品国产91久久综合桃花| 国产精品女上位| 国内精品伊人久久久久影院对白| 99re66热这里只有精品3直播| 精品国产电影一区二区| 视频一区中文字幕国产| 99久久精品国产观看| 久久久久久免费毛片精品| 肉色丝袜一区二区| 99国产精品国产精品久久| 精品成人一区二区三区| 天天综合网天天综合色| 91浏览器在线视频| 国产欧美日韩三区| 国产伦精品一区二区三区免费迷| 51精品久久久久久久蜜臀| 亚洲国产欧美在线| 欧美在线观看视频在线| 1000精品久久久久久久久| 国产成人在线视频免费播放| 久久久久久99久久久精品网站| 美女看a上一区| 日韩一级片在线播放| 亚洲444eee在线观看| 欧美日韩国产综合一区二区 | 精品99一区二区| 日本不卡的三区四区五区| 欧美日韩一区久久| 亚洲一区中文日韩| 成人综合在线网站| 久久久www成人免费无遮挡大片| 久久精品久久99精品久久| 欧美色视频在线| 午夜国产精品影院在线观看| 欧美三级电影在线观看| 日韩高清一级片| 欧美偷拍一区二区| 亚洲一二三四在线观看| 在线观看av不卡| 国产精品麻豆久久久| 白白色 亚洲乱淫| 亚洲综合在线免费观看| 欧美色手机在线观看| 免费成人结看片| 久久久久免费观看| 色综合久久综合网欧美综合网| 亚洲精品自拍动漫在线| 欧美久久久久久蜜桃| 美美哒免费高清在线观看视频一区二区| 欧美一级生活片| 国产成人夜色高潮福利影视| 中文字幕永久在线不卡| 91免费版pro下载短视频| 天天影视色香欲综合网老头| 制服丝袜日韩国产| 久久精品国内一区二区三区| 国产精品视频看| 粉嫩一区二区三区在线看| 亚洲三级在线播放| 欧美午夜精品免费| 亚洲一二三四久久| 欧美一区二区三区的| 亚洲电影第三页| 国产欧美在线观看一区| 欧美特级限制片免费在线观看| 久久国产综合精品| 亚洲天堂中文字幕| 精品黑人一区二区三区久久| 91啪亚洲精品| 国产精品一区二区三区99| 一区二区不卡在线播放| 国产情人综合久久777777| 欧美日韩和欧美的一区二区| 成人午夜电影小说| 免费观看一级欧美片| 亚洲人精品午夜| 精品成人一区二区| 69堂精品视频| 91蜜桃视频在线| 国产精品白丝jk白祙喷水网站| 亚洲一级在线观看| 亚洲欧洲另类国产综合| 精品欧美一区二区久久| 欧美美女bb生活片| 色综合久久综合网| 处破女av一区二区| 国产高清精品久久久久| 青青草97国产精品免费观看 | 亚洲人成伊人成综合网小说| 精品国产亚洲一区二区三区在线观看| 在线亚洲人成电影网站色www| 日韩经典中文字幕一区| 亚洲人成网站影音先锋播放| 日韩欧美亚洲一区二区| 91论坛在线播放| 国产成人午夜电影网| 亚洲成精国产精品女| 亚洲综合丁香婷婷六月香| 欧美激情一区二区三区蜜桃视频| 久久久久国产一区二区三区四区| 欧美日韩国产精品自在自线| 色噜噜狠狠成人网p站| eeuss鲁片一区二区三区| 国产·精品毛片| 国产在线一区二区| 国产一区二区福利视频| 毛片av一区二区| 精品亚洲欧美一区| 久久精品72免费观看| 韩国精品一区二区| 九一九一国产精品| 国产福利一区二区三区视频在线| 激情综合色播激情啊| 韩国欧美国产1区| 五月激情丁香一区二区三区| 性做久久久久久免费观看欧美| 亚洲国产精华液网站w| 中文无字幕一区二区三区| 中文一区一区三区高中清不卡| 国产精品嫩草久久久久| 亚洲精品自拍动漫在线| 亚洲妇熟xx妇色黄| 青青草成人在线观看| 国产伦精品一区二区三区免费迷| 国产精品亚洲人在线观看| 国产成人精品网址| 色哟哟一区二区三区| 欧美私模裸体表演在线观看| 4438x成人网最大色成网站| 欧美精品一区二区久久久| 国产精品美女www爽爽爽| 亚洲裸体xxx| 日本特黄久久久高潮| 国产一区二区成人久久免费影院| 懂色av一区二区夜夜嗨| 91美女在线看| 91精品国产欧美日韩| 中文字幕精品三区| 亚洲国产日日夜夜| 激情成人综合网| 99国产精品国产精品久久| 制服.丝袜.亚洲.中文.综合| 久久久久亚洲综合| 亚洲国产欧美日韩另类综合| 精品一区二区三区影院在线午夜| 成人性视频免费网站| 欧美日韩成人一区二区| 国产午夜一区二区三区| 一区二区三区四区高清精品免费观看| 麻豆精品在线视频| 色综合天天综合狠狠| 日韩网站在线看片你懂的| 精品国产凹凸成av人网站| 日本一区二区免费在线| 亚洲人成影院在线观看| 精品一区二区精品| 欧美日韩午夜影院| 国产精品人人做人人爽人人添| 日韩 欧美一区二区三区| 91免费视频网址| 国产精品免费视频一区| 成人小视频在线| 国产欧美一区二区精品忘忧草| 蜜桃视频一区二区三区| 911精品国产一区二区在线| 亚洲一区在线观看网站| 91在线精品一区二区| 亚洲欧洲日产国码二区| 成人精品视频一区| 国产精品萝li| 99国内精品久久| 亚洲欧美日韩电影| 色综合咪咪久久| 亚洲电影激情视频网站| 欧美理论在线播放| 免费成人在线观看| 久久这里只有精品视频网|