1.wxsqlite静态编译 sqlite3加密 的源码简单方法
2.node-pre-gyp以及node-gyp的源码简单解析(以安装sqlite3为例)
3.ubuntu上安装sqlite3
4.å¦ä½ç¼è¯SQLite-How To Compile SQLite
5.手把手教你在嵌入式设备中使用SQLite3
6.收藏!Python内置的编辑轻量级数据库竟如此好用!全网最实用sqlite3实战项目!源码
wxsqlite静态编译 sqlite3加密 的编辑简单方法
针对需要在项目中集成sqlite3加密功能的需求,可选择wxsqlite作为解决方案。源码相较于其他推荐的编辑influxdb 源码开发工具,wxsqlite提供了更为简便的源码静态编译方式。
通过使用xmake作为包管理器,编辑发现wxsqlite的源码集成相对简单,无需面对复杂的编辑库文件与配置问题。选择wxsqlite的源码理由在于其提供了合并的C文件,只需将其包含至项目中即可。编辑
首先,源码下载wxsqlite源码,编辑并在对应的源码目录下找到需要的两个文件。这些文件是wxsqlite的关键组成部分,直接将它们加入到项目内即可实现功能集成。
在构建系统中,只需简单配置,添加必要的包含路径,即可实现wxsqlite的静态编译。整个过程简洁高效,无需面对繁琐的库文件管理和复杂配置。
在项目中直接包含头文件,使用wxsqlite的加密功能即可。对于设置选项,通常默认配置已能满足基本需求,无需额外调整。dos 4.0 源码
使用wxsqlite后,可发现程序的执行文件大小略有增加,例如,加入SDL2后,执行文件大小增加了2M,加入skia后,增加了7、8M。这些额外的大小主要源自于所集成的额外依赖库。
针对不需进行图形绘制的情况,可选择使用SVG格式替代,通过SDL_image库处理SVG文件,同样可以实现所需的视觉效果。这种方法在简化代码的同时,也减少了依赖库的使用,进一步优化了项目的大小。
总体而言,通过wxsqlite实现sqlite3加密功能的过程简单明了,无需面对复杂的编译与配置问题。对于游戏项目而言,即使执行文件大小有所增加,对于整体的资源占用来说仍然属于较小的影响。
使用wxsqlite后,观察到编译后的执行文件大小相较于其他方法,保持在合理的范围内,通常在1M以上。这表明在集成wxsqlite时,dns 攻击 源码已较好地控制了对项目资源的影响。
node-pre-gyp以及node-gyp的源码简单解析(以安装sqlite3为例)
在Node.js开发中,确保模块跨平台性至关重要,尤其当涉及到使用C/C++原生代码的模块,如SQLite3。让我们通过一个实例来理解安装这种原生模块的过程,以SQLite3为例。项目初始化
首先,创建一个基础的Node.js项目,我们开始安装SQLite3。安装SQLite3
执行安装命令后,你会看到命令行输出关键信息:node-pre-gyp的引入
在安装过程中,你会遇到node-pre-gyp,这个工具与node-gyp和gyp紧密相关。gyp是一个用于生成项目文件的构建工具,它为Chromium项目生成IDE项目文件,如Visual Studio和Xcode。而node-gyp则是专为Node.js Addons(原生模块)编译设计的,它允许在本地编译C/C++代码。node-pre-gyp的作用
为了简化每次安装时的平台编译工作,node-pre-gyp允许预先为常见平台生成二进制文件。当项目尝试安装时,它会优先查找预编译的二进制包,如果找不到,才会转而依赖node-gyp进行源码编译。安装流程
当我们使用`npm install sqlite3`时,实际上执行了`node-pre-gyp install --fallback-to-build`。表白asp源码安装流程包括:检查node-pre-gyp是否已安装,如果没有,npm会自动安装。
node-pre-gyp查找预编译二进制包,如果存在,则直接使用。
如果没有找到,使用node-gyp进行源码编译。
深入了解SQLite3安装
查看sqlite3的package.json,`scripts`部分包含了`node-pre-gyp install`命令。npm会根据这个脚本执行安装过程。源码编译与node-gyp
node-gyp的`build.js`负责执行编译任务,通过`gyp`工具生成特定平台的项目文件,如Windows的vcxproj,然后使用MSBuild编译。node-pre-gyp与node-gyp的交互
node-pre-gyp的`do_build`模块调用node-gyp build,执行具体的编译操作,确保模块能在目标平台上正确工作。ubuntu上安装sqlite3
在Ubuntu系统中,直接使用apt命令安装sqlite3时,经常遇到依赖库问题,使得安装过程复杂且耗时。因此,推荐采用下载源码并自行编译安装的方法。操作步骤简单,通常只需五分钟即可完成,甚至比使用apt-get更加便捷。hot online 源码
对于初学者而言,使用源码编译安装sqlite3首先需要下载源码包,通常可以通过访问sqlite官方网站或使用wget命令进行下载。随后,解压缩并进入源码目录,执行configure命令配置编译选项。接着执行make命令进行编译,最后执行sudo make install命令安装。此过程无需额外的依赖解决步骤,简化了安装流程。
安装成功后,sqlite3即可投入使用,无需担心依赖问题。对于常用操作,例如创建、查询、更新或删除数据,可以使用以下命令:首先,通过sqlite3命令进入数据库。其次,使用CREATE TABLE命令创建表结构,INSERT INTO命令插入数据,SELECT命令查询数据,UPDATE命令更新数据,DELETE命令删除数据。最后,通过EXIT命令退出数据库环境。操作直观且高效,满足日常使用需求。
源码编译安装sqlite3的方法简化了安装流程,避免了依赖问题的困扰,使得安装过程更加高效便捷。同时,对于常用数据库操作,提供了直观且高效的命令,便于用户快速上手并进行数据管理。
å¦ä½ç¼è¯SQLite-How To Compile SQLite
SQLiteæ¯ANSI-Cçæºä»£ç ãå¨ä½¿ç¨ä¹åå¿ é¡»è¦ç¼è¯ææºå¨ç ãè¿ç¯æç« æ¯ç¨äºåç§ç¼è¯SQLiteæ¹æ³çæåã
è¿ç¯æç« ä¸å å«ç¼è¯SQLiteçæ¯ä¸ªæ¥éª¤çåé¦ï¼é£æ ·å¯è½ä¼å°é¾å 为æ¯ç§å¼ååºæ¯é½ä¸åãæ以è¿ç¯æç« æè¿°åéè¿°äºç¼è¯Sqliteçååãå ¸åçç¼è¯å½ä»¤å·²ç»ä½ä¸ºä¾åæä¾äºï¼ä»¥ææåºç¨å¼åè è½å¤ä½¿ç¨è¿äºä¾åä½ä¸ºå®æä»ä»¬èªå·±å®å¶çç¼è¯è¿ç¨ççä¸ä¸ªæåãæ¢å¥è¯è¯´ï¼è¿ç¯æç« æä¾äºæ³æ³åè§è§£ï¼èä¸æ¯äº¤é¥åç解å³æ¹æ³ã
èåVSåç¬æºæ件
Sqliteæ¯ç±è¶ è¿ä¸ç¾ä¸ªcæºç æ件以åä¼å¤çç®å½ä¸çèæ¬æ建çãSqliteçå®ç°æ¯çº¯ç²¹çANSI-Cï¼ä½æ¯è®¸å¤Cè¯è¨æºä»£ç æ件æ¯ç±è¾ å©çCç¨åºçææè 转æ¢æ¥çï¼å¹¶ä¸AWKï¼SEDåTCLèæ¬ä¼èåå°å®æçsqliteåºä¸ã对Sqliteæ建éè¦çCç¨åºå转æ¢åå建Cè¯è¨æºç æ¯ä¸ä¸ªå¤æçè¿ç¨ã
为äºç®åè¿äºï¼sqliteä¹éè¿ä¸ä¸ªé¢æå çå并åçæºç æ件ï¼sqlite3.cãè¿ä¸ªå并æ件æ¯ä¸ä¸ªANSI-Cæºç å®ç°æ´ä¸ªSQLiteåºçå¯ä¸æ件ãå并åçæ件æ´å®¹æå¤çãææçä¸è¥¿é½å å«å¨è¿ä¸ä¸ªæ件éï¼æ以å¾å®¹æè¿å ¥ä¸ä¸ªæ´å¤§çCæè C++ç¨åºçæºç æ ãææç代ç çæå转æ¢æ¥éª¤é½å·²ç»å®ç°äºï¼å æ¤æ²¡æè¾ å©çCç¨åºéè¦å»é ç½®ååå¼ï¼ä¹æ²¡æèæ¬éè¦å»è¿è¡ã并ä¸ï¼å æ¤ææåé½å å«å¨ä¸ä¸ªç¿»è¯åå ï¼ç¼è¯å¨å¯ä»¥åæ´å¤é«çº§çä¼åä»èæå5%å°%çæ§è½ãå 为è¿äºåå ï¼èååçæºç æ件sqlite3.c对ææç¨åºæ¥è®²é½æ¯å¼å¾æ¨èçã
æ¨èææçåºç¨ç¨åºä½¿ç¨èåæ件ã
ç´æ¥ä»åç¬çæºç æ件ä¸æ建sqliteå½ç¶å¯ä»¥ï¼ä½æ¯å¹¶ä¸æ¨èã对ä¸äºç¹æ®çåºç¨ç¨åºï¼å¯è½éè¦ä¿®æ¹æ建ç¨åºå»å¤ç使ç¨é£äºä»ç½ç«ä¸ä¸è½½çé¢æ建çæºç æ件ä¸è½å®æçæ åµã对äºè¿äºæ åµï¼æ¨èæ建å使ç¨ä¸ä¸ªå®å¶è¿çå并æ件ãæ¢å¥è¯è¯´ï¼å³ä½¿ä¸ä¸ªå·¥ç¨éè¦ä»¥åç¬çæºç æ件æ建sqliteï¼ä»ç¶æ¨è使ç¨ä¸ä¸ªèååçæºç æ件ä½ä¸ºä¸ä¸ªä¸é´æ¥éª¤ã
ç¼è¯å½ä»¤è¡æ¥å£ï¼CLIï¼
æ建å½ä»¤è¡æ¥å£éè¦ä¸ä¸ªæºç æ件ï¼
sqlite3.c:Sqliteèåçæºç æ件
sqlite3.h:å¹é sqlite3.c以åå®ä¹sqliteçcè¯è¨æ¥å£ç头æ件
shell.c:å½ä»¤è¡æ¥å£ç¨åºæ¬èº«ãè¿ä¸ªcæºç æ件å å«ä¸ä¸ªmain()çä¾ç¨åæ¯è½®å¾ªç¯çç¨æ·è¾å ¥çæ示符并å°è¾å ¥ä¼ ç»sqliteæ°æ®åºå¼æç¨äºå¤çã
ææçä¸è¿°æºç çä¸ä¸ªæ件é½è¢«å å«å¨ä¸è½½é¡µé¢çamalgamation tarballä¸ã
为äºæ建CLIï¼ç®åçå°è¿ä¸ä¸ªæ件æ¾ç½®å¨ç¸åçç®å½ä¸ç¶åä¸èµ·ç¼è¯ä»ä»¬ãç¨MSVCï¼
cl shell.c sqlite3.c -Fesqlite3.exe
å¨unixç³»ç»ä¸ï¼æè å¨windowsä¸ç¨cygwinæè mingw+msysï¼å ¸åçå½ä»¤ä¼æäºåè¿æ ·ï¼
gcc shell.c sqlite3.c -lpthread -ldl
为äºSQLite线ç¨å®å ¨ï¼éè¦pthreadsåºãä½æ¯å 为CLIæ¯ä¸ä¸ªå线ç¨çï¼æ们å¯ä»¥æ示SQLiteæ建ä¸ä¸ªé线ç¨å®å ¨çåºå¹¶å æ¤æ¤ç»¿pthreadsåºï¼
gcc -DSQLITE_THREADSAFE=0 shell.c sqlite3.c -ldl
-ldlåºæ¯å¨æ¯æå¨æè£ è½½æ¶éè¦ï¼ä¾å¦sqlite3_load_extension() æ¥å£åload_extension()
SQL functionãå¦æè¿äºç¹æ§é½ä¸è¦æ±ï¼é£ä¹æ们ä¹å¯ä»¥ä½¿ç¨SQLITE_OMIT_LOAD_EXTENSIONç¼è¯æ¶é´é项忽ç¥ä»ä»¬ã
gcc -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION shell.c sqlite3.c
æ人å¯è½æ³è¦æä¾å ¶ä»çç¼è¯æ¶é´é项(compile-time options)ï¼ä¾å¦SQLITE_ENABLE_FTS3å»å ¨ææ¬æç´¢æè SQLITE_ENABLE_RTREEç¨äºR*æ æç´¢å¼ææ©å±ãèæ人å°æ£å¸¸æå®ä¸äºç¼è¯ä¼åå¼å ³ãï¼é¢ç¼è¯çCLIå¯ä»¥ä»éæ©sqliteç½ç«ä¸ä½¿ç¨â-Osâä¸è½½ä¸æ¥ï¼ææ æ°ç§å¯è½çåæ°å¨è¿éã
å ³é®ç¹å¨è¿éï¼æ建CLIéè¦ç¼è¯ä¸èµ·ä¸¤ä¸ªCè¯è¨æ件ãshell.cæ件å å«å ¥å£çå®ä¹åç¨æ·è¾å ¥çloopï¼èsqliteèåæ件sqlite3.cå å«å®æ´çsqliteåºçå®ç°ã
ç¼è¯TCLæ¥å£
sqliteçtclæ¥å£æ¯ä¸ä¸ªå°ç模å被添å å°ä¸è¬çèåæ件ä¸ãç»ææ¯ä¸ä¸ªæ°çèååçæºç æ件ï¼ç§°ä¹ä¸ºâtclsqlite3.câãè¿ä¸ªæºç æ件æ¯çæä¸ä¸ªå¯ä»¥ä½¿ç¨TCL
loadå½ä»¤å»å è½½å°ä¸ä¸ªæ åçtclshæè wishä¸ï¼æè éçsqliteæ建æåçæä¸ä¸ªåç¬å¯ä¸çtclshçå ±äº«åºæéè¦çãä¸ä¸ªtclçèåçå¯æ¬è¢«å å«å¨ä¸è½½é¡µçTEA
tarballä¸ä½ä¸ºä¸ä¸ªæ件ã
为äºçæä¸ä¸ªlinuxä¸çsqliteçTCL-loadableåº,ä¸é¢çå½ä»¤éè¦æ»¡è¶³ï¼
gcc -o libtclsqlite3.so -shared tclsqlite3.c -lpthread -ldl -ltcl
ä¸å¹¸çæ¯æ建Mac OS X å Windowsçå ±äº«åºå¹¶ä¸æ¯å¦æ¤ç®åã对äºè¿äºå¹³å°æ好使ç¨å å«å¨TEA tarballä¸çconfigureèæ¬åmakefile.
为äºçæä¸ä¸ªåç¬çtclshï¼å¯ä»¥ç¨äºsqliteéæé¾æ¥ï¼ä½¿ç¨å¦ä¸çç¼è¯å¨è°ç¨ï¼
gcc -DTCLSH=1 tclsqlite3.c -ltcl -lpthread -ldl -lz -lm
è¿éçæå·§æ¯-DTCLSH=1é项ãsqliteçTCLæ¥å£æ¨¡åå å«ä¸ä¸ªmainçè¿ç¨ï¼ç¨äºåå§åä¸ä¸ªTCL解éå¨å¹¶å¨ä»¥-DTCLSH=1ç¼è¯åè¿å ¥å°ä¸ä¸ªå½ä»¤è¡loopãä¸è¿°å½ä»¤å¯ä»¥å·¥ä½å¨LinuxåMac
OS X,è½ç¶ææ¶å¯è½éè¦ä¾èµäºå¹³å°è°æ´åºé项以åç¼è¯çTCLçåªä¸ä¸ªçæ¬ã
æ建èåæ件
ä¸è½½é¡µæä¾çsqliteèåæ件ççæ¬å¯¹å¤§å¤æ°ç¨æ·æ¥è¯´æ¯è¶³å¤çãç¶èï¼ä¸äºå·¥ç¨å¯è½æ³è¦æè éè¦æ建ä»ä»¬èªå·±çèåæ件ãä¸ä¸ªå¸¸è§çæ建ä¸ä¸ªå®å¶çèåæ件ççç±æ¯ä¸ºäºä½¿ç¨ç¹å®çcompile-time optionsæ¥å®å¶sqliteåºãåæ³sqliteèåæ件ä¸å å«äºè®¸å¤C代ç ç±è¾ å©ç¨åºåèæ¬çæã许å¤çç¼è¯æ¶é´é项影åè¿ä¸æå£ä»£ç èä¸å¿ é¡»å¨èåæ件ç»è£ åæä¾ç»ä»£ç çæå¨ãè¿ä¸ç³»åå¿ é¡»ä¼ ç»ä»£ç çæå¨çç¼è¯æ¶é´ç¸å ³çé项ä¼ä½¿å¾sqliteçåå¸çæ¬åä¸ç¸åï¼ä½æ¯å¨åè¿è¾¹æç« çæ¶åï¼ä»£ç çæå¨éè¦ç¥éçè¿ç»é项å æ¬ï¼
SQLITE_ENABLE_UPDATE_DELETE_LIMIT
SQLITE_OMIT_ALTERTABLE
SQLITE_OMIT_ANALYZE
SQLITE_OMIT_ATTACH
SQLITE_OMIT_AUTOINCREMENT
SQLITE_OMIT_CAST
SQLITE_OMIT_COMPOUND_SELECT
SQLITE_OMIT_EXPLAIN
SQLITE_OMIT_FOREIGN_KEY
SQLITE_OMIT_PRAGMA
SQLITE_OMIT_REINDEX
SQLITE_OMIT_SUBQUERY
SQLITE_OMIT_TEMPDB
SQLITE_OMIT_TRIGGER
SQLITE_OMIT_VACUUM
SQLITE_OMIT_VIEW
SQLITE_OMIT_VIRTUALTABLE
为äºæ建ä¸ä¸ªå®å¶çèåæ件ï¼å ä¸è½½åå§çç¬ç«æºç æ件å°ä¸ä¸ªunixæè ç±»unixå¼åå¹³å°ãç¡®å®è·åçåå§æºç æ件ä¸æ¯âé¢ç¼è¯è¿çæºæ件âãä»»ä½äººé½å¯ä»¥éè¿å°ä¸è½½é¡µæè ç´æ¥ä»configuration management system.è·åå®æ´çä¸å¥åå§æºç æ件ã
å设sqliteæºç æ 被åå¨ä¸ä¸ªå为âsqliteâçç®å½ä¸ã计åæ建ä¸ä¸ªå¹³è¡ç®å½ä¸çå为âbldâçèåæ件ãé¦å éè¿è¿è¡sqliteæºç æ ç§çconfigureèæ¬è¿è¡æè éè¿å¶ä½ä¸ä»½æºç æ 顶å±ççmakfile模æ¿çä¸ä»½ï¼æ¥æ建ä¸ä¸ªåéçmakefile.ç¶åæå¨ç¼è¾è¿ä¸ªMakfileå»å å«éè¦çç¼è¯æ¶é´ç¸å ³çé项ãæç»è¿è¡ï¼
make sqlite3.c
å¨windowsä¸ä½¿ç¨MSVC:
nmake /f Makefile.msc sqlite3.c
sqlite3.cçmake
targetä¼èªå¨æé ä¸è¬çâsqlite3.câå并çæºç æ件ï¼ä»¥åå®ç头æ件âsqlite3.hâï¼åå å«TCLæ¥å£çèåæºç æ件âtclsqlite3.câãä¹åï¼éè¦çæ件å¯ä»¥è¢«æ·è´å°æ件ç®å½ä¸ç¶åæ ¹æ®ä¸è¿°å¾åçè¿ç¨ç¼è¯ã
æ建ä¸ä¸ªwindowsçå¨æé¾æ¥åºDLL
为äºå¨windowsæ建ä¸ä¸ªsqliteçdll使ç¨ï¼é¦å è·å对åºçèåè¿çæºç æ件ï¼sqlit3.cåsqlite.hãè¿äºå¯ä»¥ä»SQLite websiteä¸ä¸è½½æè åä¸è¿°åç¥çä¸æ ·å»å®å¶çæã
使ç¨å·¥ä½ç®å½ä¸çæºç æ件ï¼ä¸ä¸ªdllå¯ä»¥å¨msvcä¸ä½¿ç¨å¦ä¸å½ä»¤çæï¼
cl sqlite3.c -link -dll -out:sqlite3.dll
ä¸è¿°å½ä»¤éè¦è¿è¡å¨msvcçMSVC Native Tools Command
Prompt.å¦ä½ä½ å·²ç»å¨æºå¨ä¸å®è£ äºmsvcï¼ä½ å¯è½æå¤ä¸ªçæ¬çè¿ç§å½ä»¤æ示符ï¼é对äºxåxçèªå¸¦æ建çï¼æè 交åç¼è¯å°ARMçãä¾èµè¦æ±çDLLå»ä½¿ç¨å¯¹åºåéçå½ä»¤æç¤ºç¬¦å·¥å ·ã
å¦æ使ç¨MinGWç¼è¯å¨ï¼å½ä»¤æ¯è¿æ ·çï¼
gcc -shared sqlite3.c -o sqlite3.dll
注æMinGWåªçæä½çdllãå¦æä¸ä¸ªåå¼çMinGWå·¥ç¨å¯ä»¥ç¨æ¥çæä½çdllãå¯ä»¥æ¨æå ¶å½ä»¤è¡è¯æ³æ¯ç±»ä¼¼çãéè¦æ³¨æçæ¯æè¿çMSVCççæ¬çæçDLLså¯è½ä¸è½å·¥ä½å°WinXPæè æ´æ©çæ¬çwindowsä¸ãå æ¤ä¸ºäºæ大é度çå ¼å®¹ä½ ççæçdllï¼æ¨èMinGWãä¸ä¸ªå¥½çç»éªæ³åæ¯ä½¿ç¨MinGWå»çæä½çdllsï¼ä½¿ç¨msvcå»çæä½çdllsã
手把手教你在嵌入式设备中使用SQLite3
嵌入式设备中SQLite3的入门教程
数据管理的基石在于数据库,它为数据的安全、便捷和高效存储提供支持。在嵌入式Linux环境中,虽然看似复杂,但实际上只需掌握几个关键函数即可轻松上手。常见数据库类型
在不同规模的系统中,我们有大型的Oracle(处理亿级数据)、分布式MySQL(百万级),以及轻量级的SQLite(适合万级设备)。所有数据库都通过SQL语句进行访问。安装SQLite3
SQLite3的使用无需复杂的安装步骤。你可以选择直接命令安装或从源代码编译。命令安装
源码编译:将源码下载至非共享目录,执行解压、配置、编译和安装步骤。
基础操作与SQL语句
基本操作命令
SQL语句语法
创建和删除表格
数据插入、查询与查看
嵌入式物联网学习内容丰富,选择正确的学习路径至关重要。这里分享一份丰富的学习资料包,涵盖学习资料、行业经验及项目,价值不菲。更深入的学习
插入、查询、查看数据库的细节
条件查询、排序和修改操作
字段类型及其应用
C语言接口
SQLite3自带C语言接口,通过将SQLite源码编译到程序或链接库,即可在C环境中直接使用。打开数据库:sqlite3_open
关闭数据库:sqlite3_close
执行SQL语句:sqlite3_exec
文章链接:[文章链接1],更多内容可参考[文章链接2],作者[作者名]。 版权声明:本文内容源于网络,仅供知识分享,如侵犯版权,请联系删除。收藏!Python内置的轻量级数据库竟如此好用!全网最实用sqlite3实战项目!
今天我们将深入探讨 Python 内置的轻量级数据库 sqlite3 的使用方法与实战操作。对于那些希望避免复杂数据库安装过程的用户,sqlite3 无疑是一个理想的选择。它无需独立的服务器进程,且数据库文件为 .db 后缀,支持跨平台直接访问,便捷高效。 让我们一起通过实际案例来掌握 sqlite3 的常用操作,以便在日常项目开发中灵活运用。主要内容
1. 读取数据并插入数据库
我们将以 TXT 文件为例,进行示范操作。TXT 文件为单列数据,以换行符分割,文件数量超过 个,数据总量达到 5 万以上。1.1 源代码
1.2 运行效果
1.3 重点代码解释
自动获取所有 TXT 文件名称和路径:为了方便使用,我们编写代码自动查找所有文件名称和路径,无需手动指定。 数据库创建与连接:利用 sqlite3.connect() 创建数据库,如果数据库文件不存在则自动创建。 创建表:执行 SQL 语句创建表 numbers,包含两个字段:id 和 number。 插入数据:优化文件打开方式,使用 with 语句提高效率,同时使用占位符功能自动插入数据。2. 数据库操作
2.1 连接数据库
通过指定数据库文件路径连接数据库,简化数据库管理。2.2 查询数据库中有哪些表
使用 SQL 查询语句查看数据库中所有表的名称。2.3 删除数据库中的某个表
执行 drop table 语句删除指定表。2.4 查询表结构
2.5 查询表中前 条记录
2.6 查询表中所有记录
2.7 查询表中不重复记录
2.8 将老表中的不重复记录插入新表
2.9 将特定结果写入文本文件(单列)
2. 将特定结果写入文本文件(多列)
2. 将特定结果写入 CSV 文件(多列)
2. 办公自动化案例
利用 sqlite3 进行数据导出,实现批量生成 TXT 文件,显著提高办公效率。 为了帮助您快速上手,所有源代码已发布至公众号智能演示,只需回复 "sqlite3" 即可获取下载链接。 期待您的实践与探索,享受 Python 数据库操作带来的便利!地理信息--PROJ-安装手册-源码编译安装-
深入探索PROJ系列安装教程:源码编译与配置 在追求高效地理信息处理的道路上,安装PROJ是一项关键步骤。我们为您提供一份详细的编译安装指南,包括从源代码出发的步骤。1.1 源码编译准备
必备工具:C/C++兼容的编译器,SQLite 3.+,libtiff 4.0+(推荐curl 7.+),以及GNU make(autotools)或CMake 3.9+。对于Windows用户,CMake的版本至少需要3.9以上,以避免VS编译时的问题。
1.2 CMake编译步骤
首先,创建一个专用的build目录,然后按照以下流程操作:配置CMake:根据您的系统,可能需要指定SQLite3的include和library路径或前缀,以解决sqlite3 dependency not found问题。
继续编译TIFF模块:确保头文件和动态库路径设置正确。
进行单元测试:执行ctest确保一切正常。
Windows推荐方案
在Windows上,推荐使用vcpkg和Visual Studio /进行构建,具体步骤如下:安装Git和vcpkg,将vcpkg安装到c:\dev。
获取PROJ依赖,特别是sqlite3, tiff, curl(从PROJ 7.0开始必须安装)。
从vcpkg克隆PROJ源码,然后执行构建操作。
选择CMake路径,为VS创建build_vs目录,进行Debug版本的配置与编译,并运行测试。
另一种方法:Conda环境
对于更简便的环境管理,可以使用Conda。先安装Git、Miniconda,然后为SQLite3、TIFF、CURL(从PROJ 7.0开始)安装依赖。在Conda环境中,签出PROJ源码,激活proj环境,配置并构建Release版本,接着进行测试。后续任务:SQLite3的单独处理
值得注意的是,由于PROJ对SQLite3的依赖,后续可能会需要单独编译SQLite库以确保兼容性。 让我们一起期待周一的到来,继续探索PROJ世界的更多可能!