RSQLite 2.3.7 (2024-05-26)
diff --git a/dev/pkgdown.yml b/dev/pkgdown.yml
index 8b1af6c13..c8c298bf9 100644
--- a/dev/pkgdown.yml
+++ b/dev/pkgdown.yml
@@ -3,7 +3,7 @@ pkgdown: 2.1.1.9000
pkgdown_sha: 7645a47b08827c8ff6029c8afd09d9b13674ade5
articles:
RSQLite: RSQLite.html
-last_built: 2024-11-17T16:28Z
+last_built: 2024-11-17T16:30Z
urls:
reference: https://rsqlite.r-dbi.org/reference
article: https://rsqlite.r-dbi.org/articles
diff --git a/dev/reference/initExtension.html b/dev/reference/initExtension.html
index 1269e5f2a..ade38fc16 100644
--- a/dev/reference/initExtension.html
+++ b/dev/reference/initExtension.html
@@ -175,7 +175,7 @@
diff --git a/dev/search.json b/dev/search.json
index 6b8a430e8..00aa6ec61 100644
--- a/dev/search.json
+++ b/dev/search.json
@@ -1 +1 @@
-[{"path":"https://rsqlite.r-dbi.org/dev/CODE_OF_CONDUCT.html","id":null,"dir":"","previous_headings":"","what":"Contributor Code of Conduct","title":"Contributor Code of Conduct","text":"contributors maintainers project, pledge respect people contribute reporting issues, posting feature requests, updating documentation, submitting pull requests patches, activities. committed making participation project harassment-free experience everyone, regardless level experience, gender, gender identity expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion. Examples unacceptable behavior participants include use sexual language imagery, derogatory comments personal attacks, trolling, public private harassment, insults, unprofessional conduct. Project maintainers right responsibility remove, edit, reject comments, commits, code, wiki edits, issues, contributions aligned Code Conduct. Project maintainers follow Code Conduct may removed project team. Instances abusive, harassing, otherwise unacceptable behavior may reported opening issue contacting one project maintainers. Code Conduct adapted Contributor Covenant (http://contributor-covenant.org), version 1.0.0, available http://contributor-covenant.org/version/1/0/0/","code":""},{"path":"https://rsqlite.r-dbi.org/dev/CONTRIBUTING.html","id":null,"dir":"","previous_headings":"","what":"Contributing to RSQLite","title":"Contributing to RSQLite","text":"outlines propose change RSQLite.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/CONTRIBUTING.html","id":"fixing-typos","dir":"","previous_headings":"","what":"Fixing typos","title":"Contributing to RSQLite","text":"Small typos grammatical errors documentation may edited directly using GitHub web interface, long changes made source file. YES: edit roxygen comment .R file R/. : edit .Rd file man/.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/CONTRIBUTING.html","id":"prerequisites","dir":"","previous_headings":"","what":"Prerequisites","title":"Contributing to RSQLite","text":"make substantial pull request, always file issue make sure someone team agrees ’s problem. ’ve found bug, create associated issue illustrate bug minimal reprex.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/CONTRIBUTING.html","id":"pull-request-process","dir":"","previous_headings":"","what":"Pull request process","title":"Contributing to RSQLite","text":"recommend create Git branch pull request (PR). Look Travis AppVeyor build status making changes. README contain badges continuous integration services used package. use roxygen2, Markdown syntax, documentation. use testthat. Contributions test cases included easier accept. Please update NEWS.md.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/CONTRIBUTING.html","id":"code-of-conduct","dir":"","previous_headings":"","what":"Code of Conduct","title":"Contributing to RSQLite","text":"Please note RSQLite project released Contributor Code Conduct. contributing project agree abide terms.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/LICENSE.html","id":"gnu-lesser-general-public-license","dir":"","previous_headings":"","what":"GNU LESSER GENERAL PUBLIC LICENSE","title":"NA","text":"Version 2.1, February 1999","code":"Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.]"},{"path":"https://rsqlite.r-dbi.org/dev/LICENSE.html","id":"preamble","dir":"","previous_headings":"","what":"Preamble","title":"NA","text":"licenses software designed take away freedom share change . contrast, GNU General Public Licenses intended guarantee freedom share change free software–make sure software free users. license, Lesser General Public License, applies specially designated software packages–typically libraries–Free Software Foundation authors decide use . can use , suggest first think carefully whether license ordinary General Public License better strategy use particular case, based explanations . speak free software, referring freedom use, price. General Public Licenses designed make sure freedom distribute copies free software (charge service wish); receive source code can get want ; can change software use pieces new free programs; informed can things. protect rights, need make restrictions forbid distributors deny rights ask surrender rights. restrictions translate certain responsibilities distribute copies library modify . example, distribute copies library, whether gratis fee, must give recipients rights gave . must make sure , , receive can get source code. link code library, must provide complete object files recipients, can relink library making changes library recompiling . must show terms know rights. protect rights two-step method: (1) copyright library, (2) offer license, gives legal permission copy, distribute /modify library. protect distributor, want make clear warranty free library. Also, library modified someone else passed , recipients know original version, original author’s reputation affected problems might introduced others. Finally, software patents pose constant threat existence free program. wish make sure company effectively restrict users free program obtaining restrictive license patent holder. Therefore, insist patent license obtained version library must consistent full freedom use specified license. GNU software, including libraries, covered ordinary GNU General Public License. license, GNU Lesser General Public License, applies certain designated libraries, quite different ordinary General Public License. use license certain libraries order permit linking libraries non-free programs. program linked library, whether statically using shared library, combination two legally speaking combined work, derivative original library. ordinary General Public License therefore permits linking entire combination fits criteria freedom. Lesser General Public License permits lax criteria linking code library. call license “Lesser” General Public License Less protect user’s freedom ordinary General Public License. also provides free software developers Less advantage competing non-free programs. disadvantages reason use ordinary General Public License many libraries. However, Lesser license provides advantages certain special circumstances. example, rare occasions, may special need encourage widest possible use certain library, becomes de-facto standard. achieve , non-free programs must allowed use library. frequent case free library job widely used non-free libraries. case, little gain limiting free library free software , use Lesser General Public License. cases, permission use particular library non-free programs enables greater number people use large body free software. example, permission use GNU C Library non-free programs enables many people use whole GNU operating system, well variant, GNU/Linux operating system. Although Lesser General Public License Less protective users’ freedom, ensure user program linked Library freedom wherewithal run program using modified version Library. precise terms conditions copying, distribution modification follow. Pay close attention difference “work based library” “work uses library”. former contains code derived library, whereas latter must combined library order run.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/LICENSE.html","id":"terms-and-conditions-for-copying-distribution-and-modification","dir":"","previous_headings":"","what":"TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION","title":"NA","text":"0. License Agreement applies software library program contains notice placed copyright holder authorized party saying may distributed terms Lesser General Public License (also called “License”). licensee addressed “”. “library” means collection software functions /data prepared conveniently linked application programs (use functions data) form executables. “Library”, , refers software library work distributed terms. “work based Library” means either Library derivative work copyright law: say, work containing Library portion , either verbatim modifications /translated straightforwardly another language. (Hereinafter, translation included without limitation term “modification”.) “Source code” work means preferred form work making modifications . library, complete source code means source code modules contains, plus associated interface definition files, plus scripts used control compilation installation library. Activities copying, distribution modification covered License; outside scope. act running program using Library restricted, output program covered contents constitute work based Library (independent use Library tool writing ). Whether true depends Library program uses Library . 1. may copy distribute verbatim copies Library’s complete source code receive , medium, provided conspicuously appropriately publish copy appropriate copyright notice disclaimer warranty; keep intact notices refer License absence warranty; distribute copy License along Library. may charge fee physical act transferring copy, may option offer warranty protection exchange fee. 2. may modify copy copies Library portion , thus forming work based Library, copy distribute modifications work terms Section 1 , provided also meet conditions: ) modified work must software library. b) must cause files modified carry prominent notices stating changed files date change. c) must cause whole work licensed charge third parties terms License. d) facility modified Library refers function table data supplied application program uses facility, argument passed facility invoked, must make good faith effort ensure , event application supply function table, facility still operates, performs whatever part purpose remains meaningful. (example, function library compute square roots purpose entirely well-defined independent application. Therefore, Subsection 2d requires application-supplied function table used function must optional: application supply , square root function must still compute square roots.) requirements apply modified work whole. identifiable sections work derived Library, can reasonably considered independent separate works , License, terms, apply sections distribute separate works. distribute sections part whole work based Library, distribution whole must terms License, whose permissions licensees extend entire whole, thus every part regardless wrote . Thus, intent section claim rights contest rights work written entirely ; rather, intent exercise right control distribution derivative collective works based Library. addition, mere aggregation another work based Library Library (work based Library) volume storage distribution medium bring work scope License. 3. may opt apply terms ordinary GNU General Public License instead License given copy Library. , must alter notices refer License, refer ordinary GNU General Public License, version 2, instead License. (newer version version 2 ordinary GNU General Public License appeared, can specify version instead wish.) make change notices. change made given copy, irreversible copy, ordinary GNU General Public License applies subsequent copies derivative works made copy. option useful wish copy part code Library program library. 4. may copy distribute Library (portion derivative , Section 2) object code executable form terms Sections 1 2 provided accompany complete corresponding machine-readable source code, must distributed terms Sections 1 2 medium customarily used software interchange. distribution object code made offering access copy designated place, offering equivalent access copy source code place satisfies requirement distribute source code, even though third parties compelled copy source along object code. 5. program contains derivative portion Library, designed work Library compiled linked , called “work uses Library”. work, isolation, derivative work Library, therefore falls outside scope License. However, linking “work uses Library” Library creates executable derivative Library (contains portions Library), rather “work uses library”. executable therefore covered License. Section 6 states terms distribution executables. “work uses Library” uses material header file part Library, object code work may derivative work Library even though source code . Whether true especially significant work can linked without Library, work library. threshold true precisely defined law. object file uses numerical parameters, data structure layouts accessors, small macros small inline functions (ten lines less length), use object file unrestricted, regardless whether legally derivative work. (Executables containing object code plus portions Library still fall Section 6.) Otherwise, work derivative Library, may distribute object code work terms Section 6. executables containing work also fall Section 6, whether linked directly Library . 6. exception Sections , may also combine link “work uses Library” Library produce work containing portions Library, distribute work terms choice, provided terms permit modification work customer’s use reverse engineering debugging modifications. must give prominent notice copy work Library used Library use covered License. must supply copy License. work execution displays copyright notices, must include copyright notice Library among , well reference directing user copy License. Also, must one things: ) Accompany work complete corresponding machine-readable source code Library including whatever changes used work (must distributed Sections 1 2 ); , work executable linked Library, complete machine-readable “work uses Library”, object code /source code, user can modify Library relink produce modified executable containing modified Library. (understood user changes contents definitions files Library necessarily able recompile application use modified definitions.) b) Use suitable shared library mechanism linking Library. suitable mechanism one (1) uses run time copy library already present user’s computer system, rather copying library functions executable, (2) operate properly modified version library, user installs one, long modified version interface-compatible version work made . c) Accompany work written offer, valid least three years, give user materials specified Subsection 6a, , charge cost performing distribution. d) distribution work made offering access copy designated place, offer equivalent access copy specified materials place. e) Verify user already received copy materials already sent user copy. executable, required form “work uses Library” must include data utility programs needed reproducing executable . However, special exception, materials distributed need include anything normally distributed (either source binary form) major components (compiler, kernel, ) operating system executable runs, unless component accompanies executable. may happen requirement contradicts license restrictions proprietary libraries normally accompany operating system. contradiction means use Library together executable distribute. 7. may place library facilities work based Library side--side single library together library facilities covered License, distribute combined library, provided separate distribution work based Library library facilities otherwise permitted, provided two things: ) Accompany combined library copy work based Library, uncombined library facilities. must distributed terms Sections . b) Give prominent notice combined library fact part work based Library, explaining find accompanying uncombined form work. 8. may copy, modify, sublicense, link , distribute Library except expressly provided License. attempt otherwise copy, modify, sublicense, link , distribute Library void, automatically terminate rights License. However, parties received copies, rights, License licenses terminated long parties remain full compliance. 9. required accept License, since signed . However, nothing else grants permission modify distribute Library derivative works. actions prohibited law accept License. Therefore, modifying distributing Library (work based Library), indicate acceptance License , terms conditions copying, distributing modifying Library works based . 10. time redistribute Library (work based Library), recipient automatically receives license original licensor copy, distribute, link modify Library subject terms conditions. may impose restrictions recipients’ exercise rights granted herein. responsible enforcing compliance third parties License. 11. , consequence court judgment allegation patent infringement reason (limited patent issues), conditions imposed (whether court order, agreement otherwise) contradict conditions License, excuse conditions License. distribute satisfy simultaneously obligations License pertinent obligations, consequence may distribute Library . example, patent license permit royalty-free redistribution Library receive copies directly indirectly , way satisfy License refrain entirely distribution Library. portion section held invalid unenforceable particular circumstance, balance section intended apply, section whole intended apply circumstances. purpose section induce infringe patents property right claims contest validity claims; section sole purpose protecting integrity free software distribution system implemented public license practices. Many people made generous contributions wide range software distributed system reliance consistent application system; author/donor decide willing distribute software system licensee impose choice. section intended make thoroughly clear believed consequence rest License. 12. distribution /use Library restricted certain countries either patents copyrighted interfaces, original copyright holder places Library License may add explicit geographical distribution limitation excluding countries, distribution permitted among countries thus excluded. case, License incorporates limitation written body License. 13. Free Software Foundation may publish revised /new versions Lesser General Public License time time. new versions similar spirit present version, may differ detail address new problems concerns. version given distinguishing version number. Library specifies version number License applies “later version”, option following terms conditions either version later version published Free Software Foundation. Library specify license version number, may choose version ever published Free Software Foundation. 14. wish incorporate parts Library free programs whose distribution conditions incompatible , write author ask permission. software copyrighted Free Software Foundation, write Free Software Foundation; sometimes make exceptions . decision guided two goals preserving free status derivatives free software promoting sharing reuse software generally. WARRANTY 15. LIBRARY LICENSED FREE CHARGE, WARRANTY LIBRARY, EXTENT PERMITTED APPLICABLE LAW. EXCEPT OTHERWISE STATED WRITING COPYRIGHT HOLDERS /PARTIES PROVIDE LIBRARY “” WITHOUT WARRANTY KIND, EITHER EXPRESSED IMPLIED, INCLUDING, LIMITED , IMPLIED WARRANTIES MERCHANTABILITY FITNESS PARTICULAR PURPOSE. ENTIRE RISK QUALITY PERFORMANCE LIBRARY . LIBRARY PROVE DEFECTIVE, ASSUME COST NECESSARY SERVICING, REPAIR CORRECTION. 16. EVENT UNLESS REQUIRED APPLICABLE LAW AGREED WRITING COPYRIGHT HOLDER, PARTY MAY MODIFY /REDISTRIBUTE LIBRARY PERMITTED , LIABLE DAMAGES, INCLUDING GENERAL, SPECIAL, INCIDENTAL CONSEQUENTIAL DAMAGES ARISING USE INABILITY USE LIBRARY (INCLUDING LIMITED LOSS DATA DATA RENDERED INACCURATE LOSSES SUSTAINED THIRD PARTIES FAILURE LIBRARY OPERATE SOFTWARE), EVEN HOLDER PARTY ADVISED POSSIBILITY DAMAGES.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/LICENSE.html","id":"how-to-apply-these-terms-to-your-new-libraries","dir":"","previous_headings":"","what":"How to Apply These Terms to Your New Libraries","title":"NA","text":"develop new library, want greatest possible use public, recommend making free software everyone can redistribute change. can permitting redistribution terms (, alternatively, terms ordinary General Public License). apply terms, attach following notices library. safest attach start source file effectively convey exclusion warranty; file least “copyright” line pointer full notice found. Also add information contact electronic paper mail. also get employer (work programmer) school, , sign “copyright disclaimer” library, necessary. sample; alter names: ’s !","code":"one line to give the library's name and an idea of what it does. Copyright (C) year name of author This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. signature of Ty Coon, 1 April 1990 Ty Coon, President of Vice"},{"path":"https://rsqlite.r-dbi.org/dev/UPDATE.html","id":null,"dir":"","previous_headings":"","what":"Updates","title":"Updates","text":"Two components shipped package can updated: SQLite library Datasets database Ideally update happen right CRAN release, new SQLite version tested time ’s released CRAN.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/UPDATE.html","id":"sqlite-library","dir":"","previous_headings":"","what":"SQLite library","title":"Updates","text":"Download latest SQLite source running data-raw/upgrade.R Update DESCRIPTION included version SQLite Update NEWS","code":""},{"path":"https://rsqlite.r-dbi.org/dev/UPDATE.html","id":"datasets-database","dir":"","previous_headings":"","what":"Datasets database","title":"Updates","text":"RSQLite includes one SQLite database (accessible datasetsDb() contains data frames datasets package. code created located data-raw/datasets.R.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"creating-a-new-database","dir":"Articles","previous_headings":"","what":"Creating a new database","title":"RSQLite","text":"create new SQLite database, simply supply filename dbConnect(): just need temporary database, use either \"\" (-disk database) \":memory:\" \"file::memory:\" (-memory database). database automatically deleted disconnect .","code":"mydb <- dbConnect(RSQLite::SQLite(), \"my-db.sqlite\") dbDisconnect(mydb) mydb <- dbConnect(RSQLite::SQLite(), \"\") dbDisconnect(mydb)"},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"loading-data","dir":"Articles","previous_headings":"","what":"Loading data","title":"RSQLite","text":"can easily copy R data frame SQLite database dbWriteTable():","code":"mydb <- dbConnect(RSQLite::SQLite(), \"\") dbWriteTable(mydb, \"mtcars\", mtcars) dbWriteTable(mydb, \"iris\", iris) dbListTables(mydb) #> [1] \"iris\" \"mtcars\""},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"queries","dir":"Articles","previous_headings":"","what":"Queries","title":"RSQLite","text":"Issue query dbGetQuery(): R variable names valid SQL variable names, may need escape \": need insert value user query, don’t use paste()! makes easy malicious attacker insert SQL might damage database reveal sensitive information. Instead, use parameterised query: little typing, much much safer.","code":"dbGetQuery(mydb, 'SELECT * FROM mtcars LIMIT 5') #> mpg cyl disp hp drat wt qsec vs am gear carb #> 1 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4 #> 2 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4 #> 3 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1 #> 4 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1 #> 5 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2 dbGetQuery(mydb, 'SELECT * FROM iris WHERE \"Sepal.Length\" < 4.6') #> Sepal.Length Sepal.Width Petal.Length Petal.Width Species #> 1 4.4 2.9 1.4 0.2 setosa #> 2 4.3 3.0 1.1 0.1 setosa #> 3 4.4 3.0 1.3 0.2 setosa #> 4 4.5 2.3 1.3 0.3 setosa #> 5 4.4 3.2 1.3 0.2 setosa dbGetQuery(mydb, 'SELECT * FROM iris WHERE \"Sepal.Length\" < :x', params = list(x = 4.6)) #> Sepal.Length Sepal.Width Petal.Length Petal.Width Species #> 1 4.4 2.9 1.4 0.2 setosa #> 2 4.3 3.0 1.1 0.1 setosa #> 3 4.4 3.0 1.3 0.2 setosa #> 4 4.5 2.3 1.3 0.3 setosa #> 5 4.4 3.2 1.3 0.2 setosa"},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"batched-queries","dir":"Articles","previous_headings":"","what":"Batched queries","title":"RSQLite","text":"run query results don’t fit memory, can use dbSendQuery(), dbFetch() dbClearResults() retrieve results batches. default dbFetch() retrieve available rows: use n set maximum number rows return.","code":"rs <- dbSendQuery(mydb, 'SELECT * FROM mtcars') while (!dbHasCompleted(rs)) { df <- dbFetch(rs, n = 10) print(nrow(df)) } #> [1] 10 #> [1] 10 #> [1] 10 #> [1] 2 dbClearResult(rs)"},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"multiple-parameterised-queries","dir":"Articles","previous_headings":"","what":"Multiple parameterised queries","title":"RSQLite","text":"can use approach run parameterised query different parameters. Call dbBind() set parameters: can also pass multiple parameters one call dbBind():","code":"rs <- dbSendQuery(mydb, 'SELECT * FROM iris WHERE \"Sepal.Length\" < :x') dbBind(rs, params = list(x = 4.5)) nrow(dbFetch(rs)) #> [1] 4 dbBind(rs, params = list(x = 4)) nrow(dbFetch(rs)) #> [1] 0 dbClearResult(rs) rs <- dbSendQuery(mydb, 'SELECT * FROM iris WHERE \"Sepal.Length\" = :x') dbBind(rs, params = list(x = seq(4, 4.4, by = 0.1))) nrow(dbFetch(rs)) #> [1] 4 dbClearResult(rs)"},{"path":"https://rsqlite.r-dbi.org/dev/articles/RSQLite.html","id":"statements","dir":"Articles","previous_headings":"","what":"Statements","title":"RSQLite","text":"DBI new functions dbSendStatement() dbExecute(), counterparts dbSendQuery() dbGetQuery() SQL statements return tabular result, inserting records table, updating table, setting engine parameters. good practice, although currently enforced, use new functions don’t expect result.","code":"dbExecute(mydb, 'DELETE FROM iris WHERE \"Sepal.Length\" < 4') #> [1] 0 rs <- dbSendStatement(mydb, 'DELETE FROM iris WHERE \"Sepal.Length\" < :x') dbBind(rs, params = list(x = 4.5)) dbGetRowsAffected(rs) #> [1] 4 dbClearResult(rs)"},{"path":"https://rsqlite.r-dbi.org/dev/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Kirill Müller. Author, maintainer. Hadley Wickham. Author. David . James. Author. Seth Falcon. Author. D. Richard Hipp. Contributor. included SQLite sources Dan Kennedy. Contributor. included SQLite sources Joe Mistachkin. Contributor. included SQLite sources SQLite Authors. Contributor. included SQLite sources Liam Healy. Contributor. included SQLite sources R Consortium. Funder. RStudio. Copyright holder.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Müller K, Wickham H, James DA, Falcon S (2024). RSQLite: SQLite Interface R. R package version 2.3.7.9900, https://github.com/r-dbi/RSQLite, https://rsqlite.r-dbi.org.","code":"@Manual{, title = {RSQLite: SQLite Interface for R}, author = {Kirill Müller and Hadley Wickham and David A. James and Seth Falcon}, year = {2024}, note = {R package version 2.3.7.9900, https://github.com/r-dbi/RSQLite}, url = {https://rsqlite.r-dbi.org}, }"},{"path":"https://rsqlite.r-dbi.org/dev/index.html","id":"rsqlite","dir":"","previous_headings":"","what":"SQLite Interface for R","title":"SQLite Interface for R","text":"Embeds SQLite database engine R, providing DBI-compliant interface. SQLite public-domain, single-user, light-weight database engine implements decent subset SQL 92 standard, including core table creation, updating, insertion, selection operations, plus transaction management. can install latest released version CRAN : install latest development version GitHub : Discussions associated DBI related database packages take place R-SIG-DB. website Databases using R describes tools best practices ecosystem.","code":"install.packages(\"RSQLite\") # install.packages(\"devtools\") devtools::install_github(\"r-dbi/RSQLite\")"},{"path":"https://rsqlite.r-dbi.org/dev/index.html","id":"basic-usage","dir":"","previous_headings":"","what":"Basic usage","title":"SQLite Interface for R","text":"","code":"library(DBI) # Create an ephemeral in-memory RSQLite database con <- dbConnect(RSQLite::SQLite(), \":memory:\") dbListTables(con) ## character(0) dbWriteTable(con, \"mtcars\", mtcars) dbListTables(con) ## [1] \"mtcars\" dbListFields(con, \"mtcars\") ## [1] \"mpg\" \"cyl\" \"disp\" \"hp\" \"drat\" \"wt\" \"qsec\" \"vs\" \"am\" \"gear\" ## [11] \"carb\" dbReadTable(con, \"mtcars\") ## mpg cyl disp hp drat wt qsec vs am gear carb ## 1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4 ## 2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 ## 3 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 ## 4 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1 ## 5 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2 ## 6 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 ## 7 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4 ## 8 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 ## 9 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 ## [ reached 'max' / getOption(\"max.print\") -- omitted 23 rows ] # You can fetch all results: res <- dbSendQuery(con, \"SELECT * FROM mtcars WHERE cyl = 4\") dbFetch(res) ## mpg cyl disp hp drat wt qsec vs am gear carb ## 1 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 ## 2 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 ## 3 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 ## 4 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 ## 5 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 ## 6 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 ## 7 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 ## 8 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1 ## 9 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 ## [ reached 'max' / getOption(\"max.print\") -- omitted 2 rows ] dbClearResult(res) # Or a chunk at a time res <- dbSendQuery(con, \"SELECT * FROM mtcars WHERE cyl = 4\") while (!dbHasCompleted(res)) { chunk <- dbFetch(res, n = 5) print(nrow(chunk)) } ## [1] 5 ## [1] 5 ## [1] 1 # Clear the result dbClearResult(res) # Disconnect from the database dbDisconnect(con)"},{"path":"https://rsqlite.r-dbi.org/dev/index.html","id":"acknowledgements","dir":"","previous_headings":"","what":"Acknowledgements","title":"SQLite Interface for R","text":"Many thanks Doug Bates, Seth Falcon, Detlef Groth, Ronggui Huang, Kurt Hornik, Uwe Ligges, Charles Loboz, Duncan Murdoch, Brian D. Ripley comments, suggestions, bug reports, /patches. Please note ‘RSQLite’ project released Contributor Code Conduct. contributing project, agree abide terms.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":null,"dir":"Reference","previous_headings":"","what":"Connect to an SQLite database — SQLite","title":"Connect to an SQLite database — SQLite","text":"Together, SQLite() dbConnect() allow connect SQLite database file. See DBI::dbSendQuery() issue queries receive results.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Connect to an SQLite database — SQLite","text":"","code":"SQLite(...) # S4 method for class 'SQLiteConnection' dbConnect(drv, ...) # S4 method for class 'SQLiteDriver' dbConnect( drv, dbname = \"\", ..., loadable.extensions = TRUE, default.extensions = loadable.extensions, cache_size = NULL, synchronous = \"off\", flags = SQLITE_RWC, vfs = NULL, bigint = c(\"integer64\", \"integer\", \"numeric\", \"character\"), extended_types = FALSE ) # S4 method for class 'SQLiteConnection' dbDisconnect(conn, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Connect to an SQLite database — SQLite","text":"... previous versions, SQLite() took arguments. now moved DBI::dbConnect(), arguments ignored warning. drv, conn objected generated SQLite(), existing SQLiteConnection. connection, connection cloned. dbname path database file. SQLite keeps database instance one single file. name database file name, thus database names legal file names running platform. two exceptions: \"\" create temporary -disk database. file deleted connection closed. \":memory:\" \"file::memory:\" create temporary -memory database. loadable.extensions TRUE (default) SQLite3 loadable extensions enabled. Setting value FALSE prevents extensions loaded. default.extensions TRUE (default) initExtension() function called new connection.Setting value FALSE requires calling initExtension() manually. cache_size Advanced option. positive integer change maximum number disk pages SQLite holds memory (SQLite's default 2000 pages). See https://www.sqlite.org/pragma.html#pragma_cache_size details. synchronous Advanced options. Possible values synchronous \"\" (default), \"normal\", \"full\". Users reported significant speed ups using sychronous = \"\", SQLite documentation implies considerable improved performance modest risk database corruption unlikely case operating system (R application) crashing. See https://www.sqlite.org/pragma.html#pragma_synchronous details. flags SQLITE_RWC: open database read/write mode create database file already exist; SQLITE_RW: open database read/write mode. Raise error file already exist; SQLITE_RO: open database read mode. Raise error file already exist vfs Select SQLite3 OS interface. See https://www.sqlite.org/vfs.html details. Allowed values \"unix-posix\", \"unix-unix-afp\", \"unix-unix-flock\", \"unix-dotfile\", \"unix-none\". bigint R type 64-bit integer types mapped , default bit64::integer64, allows full range 64 bit integers. extended_types TRUE columns type DATE, DATETIME / TIMESTAMP, TIME mapped corresponding R-classes, c.f. details. Defaults FALSE.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Connect to an SQLite database — SQLite","text":"SQLite() returns object class SQLiteDriver. dbConnect() returns object class SQLiteConnection.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Connect to an SQLite database — SQLite","text":"Connections automatically cleaned-deleted reclaimed GC. can use DBI::dbDisconnect() terminate connection early, actually close open result sets closed (get warning message effect).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"extended-types","dir":"Reference","previous_headings":"","what":"Extended Types","title":"Connect to an SQLite database — SQLite","text":"parameter extended_types = TRUE date time columns directly mapped corresponding R-types. exactly depends whether actual value number string: value mapped NA returned place warning.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLite.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Connect to an SQLite database — SQLite","text":"","code":"library(DBI) # Initialize a temporary in memory database and copy a data.frame into it con <- dbConnect(RSQLite::SQLite(), \":memory:\") data(USArrests) dbWriteTable(con, \"USArrests\", USArrests) dbListTables(con) #> [1] \"USArrests\" # Fetch all query results into a data frame: dbGetQuery(con, \"SELECT * FROM USArrests\") #> Murder Assault UrbanPop Rape #> 1 13.2 236 58 21.2 #> 2 10.0 263 48 44.5 #> 3 8.1 294 80 31.0 #> 4 8.8 190 50 19.5 #> 5 9.0 276 91 40.6 #> 6 7.9 204 78 38.7 #> 7 3.3 110 77 11.1 #> 8 5.9 238 72 15.8 #> 9 15.4 335 80 31.9 #> 10 17.4 211 60 25.8 #> 11 5.3 46 83 20.2 #> 12 2.6 120 54 14.2 #> 13 10.4 249 83 24.0 #> 14 7.2 113 65 21.0 #> 15 2.2 56 57 11.3 #> 16 6.0 115 66 18.0 #> 17 9.7 109 52 16.3 #> 18 15.4 249 66 22.2 #> 19 2.1 83 51 7.8 #> 20 11.3 300 67 27.8 #> 21 4.4 149 85 16.3 #> 22 12.1 255 74 35.1 #> 23 2.7 72 66 14.9 #> 24 16.1 259 44 17.1 #> 25 9.0 178 70 28.2 #> 26 6.0 109 53 16.4 #> 27 4.3 102 62 16.5 #> 28 12.2 252 81 46.0 #> 29 2.1 57 56 9.5 #> 30 7.4 159 89 18.8 #> 31 11.4 285 70 32.1 #> 32 11.1 254 86 26.1 #> 33 13.0 337 45 16.1 #> 34 0.8 45 44 7.3 #> 35 7.3 120 75 21.4 #> 36 6.6 151 68 20.0 #> 37 4.9 159 67 29.3 #> 38 6.3 106 72 14.9 #> 39 3.4 174 87 8.3 #> 40 14.4 279 48 22.5 #> 41 3.8 86 45 12.8 #> 42 13.2 188 59 26.9 #> 43 12.7 201 80 25.5 #> 44 3.2 120 80 22.9 #> 45 2.2 48 32 11.2 #> 46 8.5 156 63 20.7 #> 47 4.0 145 73 26.2 #> 48 5.7 81 39 9.3 #> 49 2.6 53 66 10.8 #> 50 6.8 161 60 15.6 # Or do it in batches rs <- dbSendQuery(con, \"SELECT * FROM USArrests\") d1 <- dbFetch(rs, n = 10) # extract data in chunks of 10 rows dbHasCompleted(rs) #> [1] FALSE d2 <- dbFetch(rs, n = -1) # extract all remaining data dbHasCompleted(rs) #> [1] TRUE dbClearResult(rs) # clean up dbDisconnect(con)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteConnection-class.html","id":null,"dir":"Reference","previous_headings":"","what":"Class SQLiteConnection (and methods) — SQLiteConnection-class","title":"Class SQLiteConnection (and methods) — SQLiteConnection-class","text":"SQLiteConnection objects created passing SQLite() first argument DBI::dbConnect(). superclass DBI::DBIConnection class. \"Usage\" section lists class methods overridden RSQLite.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteConnection-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Class SQLiteConnection (and methods) — SQLiteConnection-class","text":"","code":"# S3 method for class 'SQLiteConnection' format(x, ...) # S4 method for class 'SQLiteConnection' dbAppendTable(conn, name, value, ..., row.names = NULL) # S4 method for class 'SQLiteConnection' dbDataType(dbObj, obj, ...) # S4 method for class 'SQLiteConnection,Id' dbExistsTable(conn, name, ...) # S4 method for class 'SQLiteConnection,character' dbExistsTable(conn, name, ...) # S4 method for class 'SQLiteConnection' dbGetException(conn, ...) # S4 method for class 'SQLiteConnection' dbGetInfo(dbObj, ...) # S4 method for class 'SQLiteConnection' dbIsValid(dbObj, ...) # S4 method for class 'SQLiteConnection' dbListTables(conn, ...) # S4 method for class 'SQLiteConnection,SQL' dbQuoteIdentifier(conn, x, ...) # S4 method for class 'SQLiteConnection,character' dbQuoteIdentifier(conn, x, ...) # S4 method for class 'SQLiteConnection,character' dbRemoveTable(conn, name, ..., temporary = FALSE, fail_if_missing = TRUE) # S4 method for class 'SQLiteConnection,character' dbSendQuery(conn, statement, params = NULL, ...) # S4 method for class 'SQLiteConnection,SQL' dbUnquoteIdentifier(conn, x, ...) # S4 method for class 'SQLiteConnection' show(object) # S4 method for class 'SQLiteConnection' sqlData( con, value, row.names = pkgconfig::get_config(\"RSQLite::row.names.query\", FALSE), ... )"},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteConnection-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Class SQLiteConnection (and methods) — SQLiteConnection-class","text":"temporary TRUE, temporary tables considered. fail_if_missing FALSE, dbRemoveTable() succeeds table exist.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteDriver-class.html","id":null,"dir":"Reference","previous_headings":"","what":"Class SQLiteDriver (and methods) — SQLiteDriver-class","title":"Class SQLiteDriver (and methods) — SQLiteDriver-class","text":"SQLiteDriver objects created SQLite(), used select correct method DBI::dbConnect(). superclass DBI::DBIDriver class, used purely dispatch. \"Usage\" section lists class methods overridden RSQLite. DBI::dbUnloadDriver() method null-op.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteDriver-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Class SQLiteDriver (and methods) — SQLiteDriver-class","text":"","code":"# S4 method for class 'SQLiteDriver' dbDataType(dbObj, obj, ..., extended_types = FALSE) # S4 method for class 'SQLiteDriver' dbGetInfo(dbObj, ...) # S4 method for class 'SQLiteDriver' dbIsValid(dbObj, ...) # S4 method for class 'SQLiteDriver' dbUnloadDriver(drv, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteResult-class.html","id":null,"dir":"Reference","previous_headings":"","what":"Class SQLiteResult (and methods) — SQLiteResult-class","title":"Class SQLiteResult (and methods) — SQLiteResult-class","text":"SQLiteDriver objects created DBI::dbSendQuery() DBI::dbSendStatement(), encapsulate result SQL statement (either SELECT ). superclass DBI::DBIResult class. \"Usage\" section lists class methods overridden RSQLite.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/SQLiteResult-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Class SQLiteResult (and methods) — SQLiteResult-class","text":"","code":"# S4 method for class 'SQLiteResult' dbBind(res, params, ...) # S4 method for class 'SQLiteResult' dbClearResult(res, ...) # S4 method for class 'SQLiteResult' dbColumnInfo(res, ...) # S4 method for class 'SQLiteResult' dbFetch( res, n = -1, ..., row.names = pkgconfig::get_config(\"RSQLite::row.names.query\", FALSE) ) # S4 method for class 'SQLiteResult' dbGetRowCount(res, ...) # S4 method for class 'SQLiteResult' dbGetRowsAffected(res, ...) # S4 method for class 'SQLiteResult' dbGetStatement(res, ...) # S4 method for class 'SQLiteResult' dbHasCompleted(res, ...) # S4 method for class 'SQLiteResult' dbIsValid(dbObj, ...)"},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/datasetsDb.html","id":null,"dir":"Reference","previous_headings":"","what":"A sample sqlite database — datasetsDb","title":"A sample sqlite database — datasetsDb","text":"database bundled package, contains data frames datasets package.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/datasetsDb.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A sample sqlite database — datasetsDb","text":"","code":"datasetsDb()"},{"path":"https://rsqlite.r-dbi.org/dev/reference/datasetsDb.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"A sample sqlite database — datasetsDb","text":"","code":"library(DBI) db <- RSQLite::datasetsDb() dbListTables(db) #> [1] \"BOD\" \"CO2\" \"ChickWeight\" \"DNase\" #> [5] \"Formaldehyde\" \"Indometh\" \"InsectSprays\" \"LifeCycleSavings\" #> [9] \"Loblolly\" \"Orange\" \"OrchardSprays\" \"PlantGrowth\" #> [13] \"Puromycin\" \"Theoph\" \"ToothGrowth\" \"USArrests\" #> [17] \"USJudgeRatings\" \"airquality\" \"anscombe\" \"attenu\" #> [21] \"attitude\" \"cars\" \"chickwts\" \"esoph\" #> [25] \"faithful\" \"freeny\" \"infert\" \"iris\" #> [29] \"longley\" \"morley\" \"mtcars\" \"npk\" #> [33] \"pressure\" \"quakes\" \"randu\" \"rock\" #> [37] \"sleep\" \"stackloss\" \"swiss\" \"trees\" #> [41] \"warpbreaks\" \"women\" dbReadTable(db, \"CO2\") #> Plant Type Treatment conc uptake #> 1 Qn1 Quebec nonchilled 95 16.0 #> 2 Qn1 Quebec nonchilled 175 30.4 #> 3 Qn1 Quebec nonchilled 250 34.8 #> 4 Qn1 Quebec nonchilled 350 37.2 #> 5 Qn1 Quebec nonchilled 500 35.3 #> 6 Qn1 Quebec nonchilled 675 39.2 #> 7 Qn1 Quebec nonchilled 1000 39.7 #> 8 Qn2 Quebec nonchilled 95 13.6 #> 9 Qn2 Quebec nonchilled 175 27.3 #> 10 Qn2 Quebec nonchilled 250 37.1 #> 11 Qn2 Quebec nonchilled 350 41.8 #> 12 Qn2 Quebec nonchilled 500 40.6 #> 13 Qn2 Quebec nonchilled 675 41.4 #> 14 Qn2 Quebec nonchilled 1000 44.3 #> 15 Qn3 Quebec nonchilled 95 16.2 #> 16 Qn3 Quebec nonchilled 175 32.4 #> 17 Qn3 Quebec nonchilled 250 40.3 #> 18 Qn3 Quebec nonchilled 350 42.1 #> 19 Qn3 Quebec nonchilled 500 42.9 #> 20 Qn3 Quebec nonchilled 675 43.9 #> 21 Qn3 Quebec nonchilled 1000 45.5 #> 22 Qc1 Quebec chilled 95 14.2 #> 23 Qc1 Quebec chilled 175 24.1 #> 24 Qc1 Quebec chilled 250 30.3 #> 25 Qc1 Quebec chilled 350 34.6 #> 26 Qc1 Quebec chilled 500 32.5 #> 27 Qc1 Quebec chilled 675 35.4 #> 28 Qc1 Quebec chilled 1000 38.7 #> 29 Qc2 Quebec chilled 95 9.3 #> 30 Qc2 Quebec chilled 175 27.3 #> 31 Qc2 Quebec chilled 250 35.0 #> 32 Qc2 Quebec chilled 350 38.8 #> 33 Qc2 Quebec chilled 500 38.6 #> 34 Qc2 Quebec chilled 675 37.5 #> 35 Qc2 Quebec chilled 1000 42.4 #> 36 Qc3 Quebec chilled 95 15.1 #> 37 Qc3 Quebec chilled 175 21.0 #> 38 Qc3 Quebec chilled 250 38.1 #> 39 Qc3 Quebec chilled 350 34.0 #> 40 Qc3 Quebec chilled 500 38.9 #> 41 Qc3 Quebec chilled 675 39.6 #> 42 Qc3 Quebec chilled 1000 41.4 #> 43 Mn1 Mississippi nonchilled 95 10.6 #> 44 Mn1 Mississippi nonchilled 175 19.2 #> 45 Mn1 Mississippi nonchilled 250 26.2 #> 46 Mn1 Mississippi nonchilled 350 30.0 #> 47 Mn1 Mississippi nonchilled 500 30.9 #> 48 Mn1 Mississippi nonchilled 675 32.4 #> 49 Mn1 Mississippi nonchilled 1000 35.5 #> 50 Mn2 Mississippi nonchilled 95 12.0 #> 51 Mn2 Mississippi nonchilled 175 22.0 #> 52 Mn2 Mississippi nonchilled 250 30.6 #> 53 Mn2 Mississippi nonchilled 350 31.8 #> 54 Mn2 Mississippi nonchilled 500 32.4 #> 55 Mn2 Mississippi nonchilled 675 31.1 #> 56 Mn2 Mississippi nonchilled 1000 31.5 #> 57 Mn3 Mississippi nonchilled 95 11.3 #> 58 Mn3 Mississippi nonchilled 175 19.4 #> 59 Mn3 Mississippi nonchilled 250 25.8 #> 60 Mn3 Mississippi nonchilled 350 27.9 #> 61 Mn3 Mississippi nonchilled 500 28.5 #> 62 Mn3 Mississippi nonchilled 675 28.1 #> 63 Mn3 Mississippi nonchilled 1000 27.8 #> 64 Mc1 Mississippi chilled 95 10.5 #> 65 Mc1 Mississippi chilled 175 14.9 #> 66 Mc1 Mississippi chilled 250 18.1 #> 67 Mc1 Mississippi chilled 350 18.9 #> 68 Mc1 Mississippi chilled 500 19.5 #> 69 Mc1 Mississippi chilled 675 22.2 #> 70 Mc1 Mississippi chilled 1000 21.9 #> 71 Mc2 Mississippi chilled 95 7.7 #> 72 Mc2 Mississippi chilled 175 11.4 #> 73 Mc2 Mississippi chilled 250 12.3 #> 74 Mc2 Mississippi chilled 350 13.0 #> 75 Mc2 Mississippi chilled 500 12.5 #> 76 Mc2 Mississippi chilled 675 13.7 #> 77 Mc2 Mississippi chilled 1000 14.4 #> 78 Mc3 Mississippi chilled 95 10.6 #> 79 Mc3 Mississippi chilled 175 18.0 #> 80 Mc3 Mississippi chilled 250 17.9 #> 81 Mc3 Mississippi chilled 350 17.9 #> 82 Mc3 Mississippi chilled 500 17.9 #> 83 Mc3 Mississippi chilled 675 18.9 #> 84 Mc3 Mississippi chilled 1000 19.9 dbGetQuery(db, \"SELECT * FROM CO2 WHERE conc < 100\") #> Plant Type Treatment conc uptake #> 1 Qn1 Quebec nonchilled 95 16.0 #> 2 Qn2 Quebec nonchilled 95 13.6 #> 3 Qn3 Quebec nonchilled 95 16.2 #> 4 Qc1 Quebec chilled 95 14.2 #> 5 Qc2 Quebec chilled 95 9.3 #> 6 Qc3 Quebec chilled 95 15.1 #> 7 Mn1 Mississippi nonchilled 95 10.6 #> 8 Mn2 Mississippi nonchilled 95 12.0 #> 9 Mn3 Mississippi nonchilled 95 11.3 #> 10 Mc1 Mississippi chilled 95 10.5 #> 11 Mc2 Mississippi chilled 95 7.7 #> 12 Mc3 Mississippi chilled 95 10.6 dbDisconnect(db)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbBeginTransaction.html","id":null,"dir":"Reference","previous_headings":"","what":"Generic for creating a new transaction — dbBeginTransaction","title":"Generic for creating a new transaction — dbBeginTransaction","text":"See method documentation details.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbBeginTransaction.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generic for creating a new transaction — dbBeginTransaction","text":"","code":"dbBeginTransaction(conn, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbBeginTransaction.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Generic for creating a new transaction — dbBeginTransaction","text":"conn DBIConnection object. ... arguments used methods","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbListResults.html","id":null,"dir":"Reference","previous_headings":"","what":"dbListResults — dbListResults_SQLiteConnection","title":"dbListResults — dbListResults_SQLiteConnection","text":"DEPRECATED","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbListResults.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"dbListResults — dbListResults_SQLiteConnection","text":"","code":"# S4 method for class 'SQLiteConnection' dbListResults(conn, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":null,"dir":"Reference","previous_headings":"","what":"Read a database table — dbReadTable_SQLiteConnection_character","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"Returns contents database table given name data frame.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"","code":"# S4 method for class 'SQLiteConnection,character' dbReadTable( conn, name, ..., row.names = pkgconfig::get_config(\"RSQLite::row.names.table\", FALSE), check.names = TRUE, select.cols = NULL )"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"conn SQLiteConnection object, produced DBI::dbConnect() name character string specifying table name. SQLite table names case sensitive, e.g., table names ABC abc considered equal. ... Needed compatibility generic. Otherwise ignored. row.names Either TRUE, FALSE, NA string. TRUE, always translate row names column called \"row_names\". FALSE, never translate row names. NA, translate rownames character vector. string equivalent TRUE, allows override default name. backward compatibility, NULL equivalent FALSE. check.names TRUE, default, column names converted valid R identifiers. select.cols Deprecated, use.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"data frame.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"Note data frame returned dbReadTable() primitive data, e.g., coerce character data factors.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbReadTable.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Read a database table — dbReadTable_SQLiteConnection_character","text":"","code":"library(DBI) db <- RSQLite::datasetsDb() dbReadTable(db, \"mtcars\") #> row_names mpg cyl disp hp drat wt qsec vs am gear carb #> 1 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4 #> 2 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> 3 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> 4 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1 #> 5 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2 #> 6 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> 7 Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4 #> 8 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 #> 9 Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 #> 10 Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4 #> 11 Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4 #> 12 Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3 #> 13 Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3 #> 14 Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3 #> 15 Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4 #> 16 Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> 17 Chrysler Imperial 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4 #> 18 Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> 19 Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 #> 20 Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 #> 21 Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> 22 Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> 23 AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2 #> 24 Camaro Z28 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4 #> 25 Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2 #> 26 Fiat X1-9 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1 #> 27 Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 #> 28 Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2 #> 29 Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4 #> 30 Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6 #> 31 Maserati Bora 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8 #> 32 Volvo 142E 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2 dbReadTable(db, \"mtcars\", row.names = FALSE) #> row_names mpg cyl disp hp drat wt qsec vs am gear carb #> 1 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4 #> 2 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> 3 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> 4 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1 #> 5 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2 #> 6 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> 7 Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4 #> 8 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 #> 9 Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 #> 10 Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4 #> 11 Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4 #> 12 Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3 #> 13 Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3 #> 14 Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3 #> 15 Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4 #> 16 Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> 17 Chrysler Imperial 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4 #> 18 Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> 19 Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 #> 20 Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 #> 21 Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> 22 Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> 23 AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2 #> 24 Camaro Z28 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4 #> 25 Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2 #> 26 Fiat X1-9 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1 #> 27 Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 #> 28 Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2 #> 29 Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4 #> 30 Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6 #> 31 Maserati Bora 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8 #> 32 Volvo 142E 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2 dbDisconnect(db)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbWriteTable.html","id":null,"dir":"Reference","previous_headings":"","what":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","title":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","text":"Functions writing data frames delimiter-separated files database tables.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbWriteTable.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","text":"","code":"# S4 method for class 'SQLiteConnection,character,character' dbWriteTable( conn, name, value, ..., field.types = NULL, overwrite = FALSE, append = FALSE, header = TRUE, colClasses = NA, row.names = FALSE, nrows = 50, sep = \",\", eol = \"\\n\", skip = 0, temporary = FALSE ) # S4 method for class 'SQLiteConnection,character,data.frame' dbWriteTable( conn, name, value, ..., row.names = pkgconfig::get_config(\"RSQLite::row.names.table\", FALSE), overwrite = FALSE, append = FALSE, field.types = NULL, temporary = FALSE )"},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbWriteTable.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","text":"conn SQLiteConnection object, produced DBI::dbConnect() name character string specifying table name. SQLite table names case sensitive, e.g., table names ABC abc considered equal. value data.frame (coercible data.frame) object file name (character). first case, data.frame written temporary file imported SQLite; value character, interpreted file name contents imported SQLite. ... Needed compatibility generic. Otherwise ignored. field.types character vector named SQL field types names names new table's columns. missing, types inferred DBI::dbDataType()). overwrite logical specifying whether overwrite existing table . default FALSE. append logical specifying whether append existing table DBMS. default FALSE. header logical indicating whether first data line (see skip) header . missing, value determined following read.table() convention, namely, set TRUE first row one fewer field number columns. colClasses Character vector R type names, used override defaults imputing classes -disk file. row.names logical specifying whether row.names output output DBMS table; TRUE, extra field whose name whatever R identifier \"row.names\" maps DBMS (see DBI::make.db.names()). NA add rows names characters, otherwise ignore. nrows Number rows read determine types. sep field separator, defaults ','. eol end--line delimiter, defaults '\\n'. skip number lines skip reading data. Defaults 0. temporary logical specifying whether new table temporary. default FALSE.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbWriteTable.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","text":"primary key column qualified AUTOINCREMENT, missing values assigned next largest positive integer, nonmissing elements/cells retain value. autoincrement column exists data frame passed value argument, NA elements overwritten. Similarly, key column present data frame, elements automatically assigned value.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/dbWriteTable.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Write a local data frame or file to the database — dbWriteTable_SQLiteConnection_character_character","text":"","code":"con <- dbConnect(SQLite()) dbWriteTable(con, \"mtcars\", mtcars) dbReadTable(con, \"mtcars\") #> mpg cyl disp hp drat wt qsec vs am gear carb #> 1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4 #> 2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> 3 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> 4 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1 #> 5 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2 #> 6 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> 7 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4 #> 8 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 #> 9 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 #> 10 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4 #> 11 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4 #> 12 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3 #> 13 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3 #> 14 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3 #> 15 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4 #> 16 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> 17 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4 #> 18 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> 19 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 #> 20 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 #> 21 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> 22 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> 23 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2 #> 24 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4 #> 25 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2 #> 26 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1 #> 27 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 #> 28 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2 #> 29 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4 #> 30 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6 #> 31 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8 #> 32 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2 # A zero row data frame just creates a table definition. dbWriteTable(con, \"mtcars2\", mtcars[0, ]) dbReadTable(con, \"mtcars2\") #> [1] mpg cyl disp hp drat wt qsec vs am gear carb #> <0 rows> (or 0-length row.names) dbDisconnect(con)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/fetch.html","id":null,"dir":"Reference","previous_headings":"","what":"Fetch — fetch_SQLiteResult","title":"Fetch — fetch_SQLiteResult","text":"shortcut dbFetch(res, n = n, row.names = FALSE), kept compatibility reasons.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/fetch.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Fetch — fetch_SQLiteResult","text":"","code":"# S4 method for class 'SQLiteResult' fetch(res, n = -1, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":null,"dir":"Reference","previous_headings":"","what":"Add useful extension functions — initExtension","title":"Add useful extension functions — initExtension","text":"Several extension functions included RSQLite package. enabled via initExtension(), extension functions can used SQL queries. Extensions must enabled separately connection.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add useful extension functions — initExtension","text":"","code":"initExtension(db, extension = c(\"math\", \"regexp\", \"series\", \"csv\", \"uuid\"))"},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add useful extension functions — initExtension","text":"db SQLiteConnection object load extensions . extension extension load.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Add useful extension functions — initExtension","text":"\"math\" extension functions written Liam Healy made available SQLite website (https://www.sqlite.org/contrib). package contains slightly modified version original code. See section \"Available functions math extension\" details. \"regexp\" extension provides regular-expression matcher POSIX extended regular expressions, available SQLite source code repository (https://sqlite.org/src/file?filename=ext/misc/regexp.c). SQLite implement regexp B operator, string matched B regular expression. \"series\" extension loads table-valued function generate_series(), available SQLite source code repository (https://sqlite.org/src/file?filename=ext/misc/series.c). \"csv\" extension loads function csv() can used create virtual tables, available SQLite source code repository (https://sqlite.org/src/file?filename=ext/misc/csv.c). \"uuid\" extension loads functions uuid(), uuid_str(X) uuid_blob(X) can used create universally unique identifiers, available SQLite source code repository (https://sqlite.org/src/file?filename=ext/misc/uuid.c).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":"available-functions-in-the-math-extension","dir":"Reference","previous_headings":"","what":"Available functions in the math extension","title":"Add useful extension functions — initExtension","text":"Math functions acos, acosh, asin, asinh, atan, atan2, atanh, atn2, ceil, cos, cosh, cot, coth, degrees, difference, exp, floor, log, log10, pi, power, radians, sign, sin, sinh, sqrt, square, tan, tanh String functions charindex, leftstr, ltrim, padc, padl, padr, proper, replace, replicate, reverse, rightstr, rtrim, strfilter, trim Aggregate functions stdev, variance, mode, median, lower_quartile, upper_quartile","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initExtension.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add useful extension functions — initExtension","text":"","code":"library(DBI) db <- RSQLite::datasetsDb() # math RSQLite::initExtension(db) dbGetQuery(db, \"SELECT stdev(mpg) FROM mtcars\") #> stdev(mpg) #> 1 6.026948 sd(mtcars$mpg) #> [1] 6.026948 # regexp RSQLite::initExtension(db, \"regexp\") dbGetQuery(db, \"SELECT * FROM mtcars WHERE carb REGEXP '[12]'\") #> row_names mpg cyl disp hp drat wt qsec vs am gear carb #> 1 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> 2 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1 #> 3 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2 #> 4 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> 5 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2 #> 6 Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 #> 7 Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> 8 Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 #> 9 Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 #> 10 Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> 11 Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> 12 AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2 #> 13 Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2 #> 14 Fiat X1-9 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1 #> 15 Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 #> 16 Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2 #> 17 Volvo 142E 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2 # series RSQLite::initExtension(db, \"series\") dbGetQuery(db, \"SELECT value FROM generate_series(0, 20, 5);\") #> value #> 1 0 #> 2 5 #> 3 10 #> 4 15 #> 5 20 dbDisconnect(db) # csv db <- dbConnect(RSQLite::SQLite()) RSQLite::initExtension(db, \"csv\") # use the filename argument to mount CSV files from disk sql <- paste0( \"CREATE VIRTUAL TABLE tbl USING \", \"csv(data='1,2', schema='CREATE TABLE x(a INT, b INT)')\" ) dbExecute(db, sql) #> [1] 0 dbGetQuery(db, \"SELECT * FROM tbl\") #> a b #> 1 1 2 # uuid db <- dbConnect(RSQLite::SQLite()) RSQLite::initExtension(db, \"uuid\") dbGetQuery(db, \"SELECT uuid();\") #> uuid() #> 1 0a9c53b4-a319-4a6c-9cf9-3f0881a09503 dbDisconnect(db)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/initRegExp.html","id":null,"dir":"Reference","previous_headings":"","what":"Add regular expression operator — initRegExp","title":"Add regular expression operator — initRegExp","text":"Forwarded initExtension(db, \"regexp\") .","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initRegExp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add regular expression operator — initRegExp","text":"","code":"initRegExp(db)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/initRegExp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add regular expression operator — initRegExp","text":"db SQLiteConnection object add regular expression operator connection.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/initRegExp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add regular expression operator — initRegExp","text":"Always TRUE, invisibly.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/isIdCurrent.html","id":null,"dir":"Reference","previous_headings":"","what":"isIdCurrent — isIdCurrent","title":"isIdCurrent — isIdCurrent","text":"Deprecated. Please use dbIsValid instead.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/isIdCurrent.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"isIdCurrent — isIdCurrent","text":"","code":"isIdCurrent(obj)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/keywords-dep.html","id":null,"dir":"Reference","previous_headings":"","what":"Make R/S-Plus identifiers into legal SQL identifiers — SQLKeywords_SQLiteConnection","title":"Make R/S-Plus identifiers into legal SQL identifiers — SQLKeywords_SQLiteConnection","text":"Deprecated. Please use DBI::dbQuoteIdentifier() instead.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/keywords-dep.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Make R/S-Plus identifiers into legal SQL identifiers — SQLKeywords_SQLiteConnection","text":"","code":"# S4 method for class 'SQLiteConnection' SQLKeywords(dbObj, ...) # S4 method for class 'SQLiteConnection,character' isSQLKeyword( dbObj, name, keywords = .SQL92Keywords, case = c(\"lower\", \"upper\", \"any\")[3], ... ) # S4 method for class 'SQLiteConnection,character' make.db.names( dbObj, snames, keywords = .SQL92Keywords, unique = TRUE, allow.keywords = TRUE, ... )"},{"path":"https://rsqlite.r-dbi.org/dev/reference/query-dep.html","id":null,"dir":"Reference","previous_headings":"","what":"Deprecated querying tools — dbGetPreparedQuery","title":"Deprecated querying tools — dbGetPreparedQuery","text":"functions deprecated. Please switch using DBI::dbSendQuery()/DBI::dbGetQuery() params argument calling DBI::dbBind() instead.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/query-dep.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Deprecated querying tools — dbGetPreparedQuery","text":"","code":"dbGetPreparedQuery(conn, statement, bind.data, ...) # S4 method for class 'SQLiteConnection,character,data.frame' dbGetPreparedQuery(conn, statement, bind.data, ...) dbSendPreparedQuery(conn, statement, bind.data, ...) # S4 method for class 'SQLiteConnection,character,data.frame' dbSendPreparedQuery(conn, statement, bind.data, ...)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/query-dep.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Deprecated querying tools — dbGetPreparedQuery","text":"conn DBIConnection object. statement SQL string bind.data data frame data bound. ... arguments used methods","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/reexports.html","id":null,"dir":"Reference","previous_headings":"","what":"Objects exported from other packages — reexports","title":"Objects exported from other packages — reexports","text":"objects imported packages. Follow links see documentation. DBI Id","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/rsqliteVersion.html","id":null,"dir":"Reference","previous_headings":"","what":"RSQLite version — rsqliteVersion","title":"RSQLite version — rsqliteVersion","text":"Return version RSQLite.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/rsqliteVersion.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"RSQLite version — rsqliteVersion","text":"","code":"rsqliteVersion()"},{"path":"https://rsqlite.r-dbi.org/dev/reference/rsqliteVersion.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"RSQLite version — rsqliteVersion","text":"character vector containing header library versions RSQLite.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/rsqliteVersion.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"RSQLite version — rsqliteVersion","text":"","code":"RSQLite::rsqliteVersion() #> header library #> \"3.47.0\" \"3.47.0\""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqlite-transaction.html","id":null,"dir":"Reference","previous_headings":"","what":"SQLite transaction management — dbBegin_SQLiteConnection","title":"SQLite transaction management — dbBegin_SQLiteConnection","text":"default, SQLite auto-commit mode. dbBegin() starts SQLite transaction turns auto-commit . dbCommit() dbRollback() commit rollback transaction, respectively turn auto-commit . DBI::dbWithTransaction() convenient wrapper makes sure dbCommit() dbRollback() called. helper function sqliteIsTransacting() available check current transaction status connection.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqlite-transaction.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"SQLite transaction management — dbBegin_SQLiteConnection","text":"","code":"# S4 method for class 'SQLiteConnection' dbBegin(conn, .name = NULL, ..., name = NULL) # S4 method for class 'SQLiteConnection' dbCommit(conn, .name = NULL, ..., name = NULL) # S4 method for class 'SQLiteConnection' dbRollback(conn, .name = NULL, ..., name = NULL) sqliteIsTransacting(conn)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqlite-transaction.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"SQLite transaction management — dbBegin_SQLiteConnection","text":"conn SQLiteConnection object, produced DBI::dbConnect() .name backward compatibility, use. ... Needed compatibility generic. Otherwise ignored. name Supply name use named savepoint. allows nest multiple transaction","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqlite-transaction.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"SQLite transaction management — dbBegin_SQLiteConnection","text":"","code":"library(DBI) con <- dbConnect(SQLite(), \":memory:\") dbWriteTable(con, \"arrests\", datasets::USArrests) dbGetQuery(con, \"select count(*) from arrests\") #> count(*) #> 1 50 dbBegin(con) rs <- dbSendStatement(con, \"DELETE from arrests WHERE Murder > 1\") dbGetRowsAffected(rs) #> [1] 49 dbClearResult(rs) dbGetQuery(con, \"select count(*) from arrests\") #> count(*) #> 1 1 dbRollback(con) dbGetQuery(con, \"select count(*) from arrests\")[1, ] #> [1] 50 dbBegin(con) rs <- dbSendStatement(con, \"DELETE FROM arrests WHERE Murder > 5\") dbClearResult(rs) dbCommit(con) dbGetQuery(con, \"SELECT count(*) FROM arrests\")[1, ] #> [1] 16 # Named savepoints can be nested -------------------------------------------- dbBegin(con, name = \"a\") dbBegin(con, name = \"b\") sqliteIsTransacting(con) #> [1] TRUE dbRollback(con, name = \"b\") dbCommit(con, name = \"a\") dbDisconnect(con)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteBuildTableDefinition.html","id":null,"dir":"Reference","previous_headings":"","what":"Build the SQL CREATE TABLE definition as a string — sqliteBuildTableDefinition","title":"Build the SQL CREATE TABLE definition as a string — sqliteBuildTableDefinition","text":"output SQL statement simple CREATE TABLE suitable dbGetQuery","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteBuildTableDefinition.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Build the SQL CREATE TABLE definition as a string — sqliteBuildTableDefinition","text":"","code":"sqliteBuildTableDefinition( con, name, value, field.types = NULL, row.names = pkgconfig::get_config(\"RSQLite::row.names.query\", FALSE) )"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteBuildTableDefinition.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Build the SQL CREATE TABLE definition as a string — sqliteBuildTableDefinition","text":"con database connection. name Name new SQL table value data.frame, want create table. field.types Optional, named character vector types field value row.names Logical. row.name value exported row_names field? Default TRUE","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteBuildTableDefinition.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Build the SQL CREATE TABLE definition as a string — sqliteBuildTableDefinition","text":"SQL string","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":null,"dir":"Reference","previous_headings":"","what":"Copy a SQLite database — sqliteCopyDatabase","title":"Copy a SQLite database — sqliteCopyDatabase","text":"Copies database connection file another database connection. can used save -memory database (created using dbname = \":memory:\" dbname = \"file::memory:\") file create -memory database copy another database.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Copy a SQLite database — sqliteCopyDatabase","text":"","code":"sqliteCopyDatabase(from, to)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Copy a SQLite database — sqliteCopyDatabase","text":"SQLiteConnection object. main database copied . SQLiteConnection object pointing empty database.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Copy a SQLite database — sqliteCopyDatabase","text":"https://www.sqlite.org/backup.html","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Copy a SQLite database — sqliteCopyDatabase","text":"Seth Falcon","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteCopyDatabase.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Copy a SQLite database — sqliteCopyDatabase","text":"","code":"library(DBI) # Copy the built in databaseDb() to an in-memory database con <- dbConnect(RSQLite::SQLite(), \":memory:\") dbListTables(con) #> character(0) db <- RSQLite::datasetsDb() RSQLite::sqliteCopyDatabase(db, con) dbDisconnect(db) dbListTables(con) #> [1] \"BOD\" \"CO2\" \"ChickWeight\" \"DNase\" #> [5] \"Formaldehyde\" \"Indometh\" \"InsectSprays\" \"LifeCycleSavings\" #> [9] \"Loblolly\" \"Orange\" \"OrchardSprays\" \"PlantGrowth\" #> [13] \"Puromycin\" \"Theoph\" \"ToothGrowth\" \"USArrests\" #> [17] \"USJudgeRatings\" \"airquality\" \"anscombe\" \"attenu\" #> [21] \"attitude\" \"cars\" \"chickwts\" \"esoph\" #> [25] \"faithful\" \"freeny\" \"infert\" \"iris\" #> [29] \"longley\" \"morley\" \"mtcars\" \"npk\" #> [33] \"pressure\" \"quakes\" \"randu\" \"rock\" #> [37] \"sleep\" \"stackloss\" \"swiss\" \"trees\" #> [41] \"warpbreaks\" \"women\" dbDisconnect(con)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteQuickColumn.html","id":null,"dir":"Reference","previous_headings":"","what":"Return an entire column from a SQLite database — sqliteQuickColumn","title":"Return an entire column from a SQLite database — sqliteQuickColumn","text":"shortcut dbReadTable(con, table, select.cols = column, row.names = FALSE)[[1]], kept compatibility reasons.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteQuickColumn.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return an entire column from a SQLite database — sqliteQuickColumn","text":"","code":"sqliteQuickColumn(con, table, column)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteSetBusyHandler.html","id":null,"dir":"Reference","previous_headings":"","what":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","title":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","text":"transaction lock database, already locked another one, SQLite default throws error: database locked. behavior usually appropriate concurrent access needed, typically multiple processes write database. sqliteSetBusyHandler() lets set timeout handler events. setting timeout, SQLite try transaction multiple times within timeout. set timeout, pass integer scalar sqliteSetBusyHandler(). Another way set timeout use PRAGMA, e.g. SQL query sets busy timeout three seconds.","code":"PRAGMA busy_timeout=3000"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteSetBusyHandler.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","text":"","code":"sqliteSetBusyHandler(dbObj, handler)"},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteSetBusyHandler.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","text":"dbObj SQLiteConnection object. handler Specifies database locked another transaction. can : NULL: fail immediately, integer scalar: timeout milliseconds corresponds PRAGMA busy_timeout, R function: function called one argument, see details .","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteSetBusyHandler.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","text":"Invisible NULL.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/reference/sqliteSetBusyHandler.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Configure what SQLite should do when the database is locked — sqliteSetBusyHandler","text":"Note SQLite currently schedule concurrent transactions fairly. multiple transactions waiting database, one can granted access next. Moreover, SQLite currently ensure access granted soon database available. Make sure set busy timeout high enough value applications high concurrency many writes. handler argument function, used callback function. database locked, called single integer, number calls locking event. callback function must return integer scalar. returns 0L, additional attempts made access database, error thrown. Otherwise another attempt made access database cycle repeats. Handler callbacks useful debugging concurrent behavior, implement sophisticated busy algorithm. latter currently considered experimental RSQLite. callback function fails, RSQLite print warning, transaction aborted \"database locked\" error. Note every database connection busy timeout handler function. Calling sqliteSetBusyHandler() connection connected error.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/security.html","id":null,"dir":"","previous_headings":"","what":"Process for reporting security vulnerabilities","title":"Process for reporting security vulnerabilities","text":"reporting security vulnerability, please e-mail package maintainer krlmlr+r@mailbox.org instructions. include confidential information e-mail.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Ensure testthat::skip() called RSQLite’s tests, never tests packages (@jeanetteclark, #515, #516).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Upgrade bundled SQLite 3.47.0 (#525). Upgrade bundled SQLite 3.46.1 (#518). Add uuid extension (@rfhb, #517). Upgrade bundled SQLite 3.46.0 (#510).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"chore-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Chore","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Bump main branch CI/CD. Auto-update GitHub Actions. Run: https://github.com/r-dbi/RSQLite/actions/runs/10425484283 Run: https://github.com/r-dbi/RSQLite/actions/runs/10200117162 Run: https://github.com/r-dbi/RSQLite/actions/runs/9985920040 Run: https://github.com/r-dbi/RSQLite/actions/runs/9728432835 Run: https://github.com/r-dbi/RSQLite/actions/runs/9691621408","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"continuous-integration-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Continuous integration","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Import actions-sync, check carefully (#527). Import actions-sync, check carefully (#526). Import actions-sync, check carefully (#521). Import actions-sync, check carefully. Inline action. Use dev roxygen2 decor. Add decor support auto-document. Fix Windows, tweak lock workflow. Allow NOTEs R-devel. Avoid checking bashisms Windows. Better commit message. Bump versions, better default, consume custom matrix. Recent updates.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"documentation-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Documentation","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Reword warning message misuse dbGetQuery()/dbSendQuery()/dbFetch() (#524, @mikmart).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"uncategorized-2-3-7-9900","dir":"Changelog","previous_headings":"","what":"Uncategorized","title":"RSQLite 2.3.7.9900 (2024-11-17)","text":"Merge branch ‘cran-2.3.7’.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"breaking-changes-2-3-7","dir":"Changelog","previous_headings":"","what":"Breaking changes","title":"RSQLite 2.3.7 (2024-05-26)","text":"Breaking change: Avoid appending numeric suffix duplicate column names (#503).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-7","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.7 (2024-05-26)","text":"Upgrade bundled SQLite 3.46.0 (#510). Add Id method dbExistsTable() (@kjellpk, #498, #499). Breaking change: Avoid appending numeric suffix duplicate column names (#503).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"documentation-2-3-7","dir":"Changelog","previous_headings":"","what":"Documentation","title":"RSQLite 2.3.7 (2024-05-26)","text":"Set BS version explicitly now (@maelle, #506).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"testing-2-3-7","dir":"Changelog","previous_headings":"","what":"Testing","title":"RSQLite 2.3.7 (2024-05-26)","text":"Fix test FreeBSD (@nunotexbsd, #502, #504).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-6","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.6 (2024-03-31)","text":"Upgrade bundled SQLite 3.45.2 (#500).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"documentation-2-3-6","dir":"Changelog","previous_headings":"","what":"Documentation","title":"RSQLite 2.3.6 (2024-03-31)","text":"Use dbitemplate (@maelle, #496).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-5","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.5 (2024-01-20)","text":"Upgrade bundled SQLite 3.45.0 (#491).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"chore-2-3-5","dir":"Changelog","previous_headings":"","what":"Chore","title":"RSQLite 2.3.5 (2024-01-20)","text":"Update upcoming DBItest 1.8.1 (#488, #492). Remove compiler warning unused variable (#486).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-3-4","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.3.4 (2023-12-07)","text":"Fix compiler warning regarding formatting specifier used Rf_warning() (#482). Upgrade bundled SQLite 3.44.2 (#479).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"chore-2-3-4","dir":"Changelog","previous_headings":"","what":"Chore","title":"RSQLite 2.3.4 (2023-12-07)","text":"Use check_suggested() standalone hms package (#477).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-3","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.3 (2023-11-04)","text":"Upgrade bundled SQLite 3.43.2 (#473). New sqliteIsTransacting() returns transaction active current connection (@bpvgoncalves, #462, #464).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"testing-2-3-3","dir":"Changelog","previous_headings":"","what":"Testing","title":"RSQLite 2.3.3 (2023-11-04)","text":"Skip DBItest tests installed.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-2","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.2 (2023-10-27)","text":"Upgrade bundled SQLite 3.42.0 (#461).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-3-2","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.3.2 (2023-10-27)","text":"Require cpp11 >= 0.4.0 (#456).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-1","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.1 (2023-04-03)","text":"Upgrade bundled SQLite 3.41.2 (#455).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"chore-2-3-1","dir":"Changelog","previous_headings":"","what":"Chore","title":"RSQLite 2.3.1 (2023-04-03)","text":"Require cpp11 >= 0.4.0 DESCRIPTION (#456).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-3-0","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.3.0 (2023-02-13)","text":"Upgrade bundled SQLite 3.40.1 (#448).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"chore-2-3-0","dir":"Changelog","previous_headings":"","what":"Chore","title":"RSQLite 2.3.0 (2023-02-13)","text":"Upgrade boost 1.81.0-1 (#450). Clean GitPod configuration. Replace Rcpp cpp11 (@Antonov548, #441).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-20","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.20 (2022-12-21)","text":"Upgrade bundled SQLite 3.40.0 (#446).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"tests-2-2-20","dir":"Changelog","previous_headings":"","what":"Tests","title":"RSQLite 2.2.20 (2022-12-21)","text":"Fix test non-UTF-8 locales.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-20","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.20 (2022-12-21)","text":"GitPod cmake integration.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-2-19","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.2.19 (2022-11-22)","text":"Add missing boost headers icpc compiler (@lolow, #442, #443).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-19","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.19 (2022-11-22)","text":"Use testthat edition 3 (#438).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2218-2022-10-04","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.18 (2022-10-04)","title":"RSQLite 2.2.18 (2022-10-04)","text":"Upgrade bundled SQLite 3.39.4 (#435).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2217-2022-09-09","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.17 (2022-09-09)","title":"RSQLite 2.2.17 (2022-09-09)","text":"Upgrade bundled SQLite 3.39.3 (#433).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2216-2022-08-16","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.16 (2022-08-16)","title":"RSQLite 2.2.16 (2022-08-16)","text":"Upgrade bundled SQLite 3.39.2 (#431).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2215-2022-07-15","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.15 (2022-07-15)","title":"RSQLite 2.2.15 (2022-07-15)","text":"Upgrade bundled SQLite 3.39.1 (#429).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2214-2022-05-05","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.14 (2022-05-05)","title":"RSQLite 2.2.14 (2022-05-05)","text":"Upgrade bundled SQLite version 3.38.5 (#421, #423).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-2213-2022-04-29","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.13 (2022-04-29)","title":"RSQLite 2.2.13 (2022-04-29)","text":"Upgrade bundled SQLite version 3.38.3 (#418).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-12","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.12 (2022-04-02)","text":"Upgrade bundled SQLite version 3.38.2 (#415).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-12","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.12 (2022-04-02)","text":"Prefer empty() size() == 0 (#410, @MichaelChirico). Refactor improve code consistency (#411, @MichaelChirico). Use parsimonious header avoid CRAN warnings.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-11","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.11 (2022-03-07)","text":"initExtension() gains extension argument (#407, #408) options \"math\", \"regexp\", \"series\" \"csv\" (#274, #389, @mgirlich). Upgrade bundled SQLite version 3.38.0 (#405).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-2-11","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.2.11 (2022-03-07)","text":"Skip failing test CRAN.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-10","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.10 (2022-02-16)","text":"Upgrade bundled SQLite version 3.37.2 (#403).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"documentation-2-2-10","dir":"Changelog","previous_headings":"","what":"Documentation","title":"RSQLite 2.2.10 (2022-02-16)","text":"Explain reason bundling SQLite sources. Add known SQLite authors DESCRIPTION.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-10","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.10 (2022-02-16)","text":"Add test interrupt behavior sqliteSetBusyHandler() (#401). Make method definition similar S3. setMethod() calls refer top-level functions (#396).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-9","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.9 (2021-12-06)","text":"Upgrade bundled SQLite version 3.37.0 (#392). dbConnect() now supports URIs start file:// dbname argument. SQLite code now built SQLITE_USE_URI (#390, @tschoonj).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-2-9","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.2.9 (2021-12-06)","text":"dbBegin(), dbCommit() dbRollback() support keywords savepoint names (#386).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-9","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.9 (2021-12-06)","text":"Adapt DBItest 1.7.2 (#385). Enable DBItest tests, passing now.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-228-2021-08-21","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.8 (2021-08-21)","title":"RSQLite 2.2.8 (2021-08-21)","text":"Upgrade bundled SQLite version 3.36.0 (#374). Fix build CentOS 7 (#367). Busy callback emits message instead warning (#355). Avoid using memoise build time (#371).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-227-2021-04-22","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.7 (2021-04-22)","title":"RSQLite 2.2.7 (2021-04-22)","text":"Remove RStudio Connection pane support due problems reported users (#352). Upgrade bundled SQLite version 3.35.5 (#368).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-226-2021-04-11","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.6 (2021-04-11)","title":"RSQLite 2.2.6 (2021-04-11)","text":"Upgrade bundled SQLite 3.35.4 (#361). Implement RStudio Connection Contract (#352, @edwindj). dbDataType() supports extended types connections created extended_types = TRUE (#360, @ablack3). dbWriteTable() creates tables extended types connections created extended_types = TRUE (#360, @ablack3). Remove BH dependency inlining header files (#362).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-225-2021-03-25","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.5 (2021-03-25)","title":"RSQLite 2.2.5 (2021-03-25)","text":"Upgrade bundled SQLite version 3.35.2 (#357). busy handler fails, transaction aborted explicitly (#348, @gaborcsardi).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-4","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.4 (2021-03-12)","text":"Improve concurrency behavior multiple writers (#280, @gaborcsardi). New sqliteSetBusyHandler() helps configure SQLite database locked (#280, @gaborcsardi). dbConnect() gains extended_types argument adds support date, time timestamp columns. column declared type DATE, TIME TIMESTAMP, returned Date, hms POSIXct value, respectively (#333, @anderic1). Upgrade bundled SQLite version 3.34.1 (#342).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-3","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.3 (2021-01-24)","text":"Upgrade bundled SQLite version 3.34.1 (#342). dbConnect() gains extended_types argument adds support date, time timestamp columns. column declared type DATE, TIME TIMESTAMP, returned Date, hms POSIXct value, respectively (#333, @anderic1).","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-2-2","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.2.2 (2021-01-04)","text":"Upgrade bundled SQLite version 3.34 (#337).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-2-2","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.2.2 (2021-01-04)","text":"dbWriteTable() dbAppendTable() use transactions unique savepoint IDs (#338). Loading extensions works RSQLite installed path non-ASCII characters (#310).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-2-2","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.2.2 (2021-01-04)","text":"Implement automatic upgrade bundled SQLite via GitHub Actions (#335). Switch GitHub Actions (#331).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-221-2020-09-28","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.1 (2020-09-28)","title":"RSQLite 2.2.1 (2020-09-28)","text":"Upgrade SQLite 3.33.0 (#321). Use transaction faster processing dbAppendTable() (#306). Strings blobs now can size 2 GB (#314, @shutinet). Multipart queries now give warning (#313).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-220-2020-01-07","dir":"Changelog","previous_headings":"","what":"RSQLite 2.2.0 (2020-01-07)","title":"RSQLite 2.2.0 (2020-01-07)","text":"Avoid mangling column names (#259).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-215-2019-12-18","dir":"Changelog","previous_headings":"","what":"RSQLite 2.1.5 (2019-12-18)","title":"RSQLite 2.1.5 (2019-12-18)","text":"Upgrade bundled sqlite version 3.30.1. Implement dbGetInfo() driver connection objects (#117). Remove custom dbListFields() method (#228). export relevant symbols shared library (#303, @troels). Fulfill requirements CII badge (#300, @TSchiefer).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-214-2019-12-04","dir":"Changelog","previous_headings":"","what":"RSQLite 2.1.4 (2019-12-04)","title":"RSQLite 2.1.4 (2019-12-04)","text":"Replace std::mem_fn() boost::mem_fn() works older compilers.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-213-2019-12-03","dir":"Changelog","previous_headings":"","what":"RSQLite 2.1.3 (2019-12-03)","title":"RSQLite 2.1.3 (2019-12-03)","text":"Replace std::mem_fun_ref() std::mem_fn().","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bundled-library-2-1-2","dir":"Changelog","previous_headings":"","what":"Bundled library","title":"RSQLite 2.1.2 (2019-07-24)","text":"Upgrade bundled sqlite version 3.29.0.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"compatibility-fixes-2-1-2","dir":"Changelog","previous_headings":"","what":"Compatibility fixes","title":"RSQLite 2.1.2 (2019-07-24)","text":"Compatibility new releases blob hms. dbUnquoteIdentifier() also handles unquoted identifiers form table schema.table, compatibility dbplyr.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-1-2","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.1.2 (2019-07-24)","text":"Fix query listing tables schema (#279). Coercing NULL values integer64 numeric now works corner cases (#291). dbExistsTable() works corner cases table name contains backticks (#275). Error messages encoded UTF-8. Column names marked UTF-8 return, fix encoding problems Windows (#276, @shrektan). Fix segmentation fault open connection garbage-collected options(warn = 2) (#245).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"new-features-2-1-2","dir":"Changelog","previous_headings":"","what":"New features","title":"RSQLite 2.1.2 (2019-07-24)","text":"Add regular expression operator (#296, @rfhb).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-1-2","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.1.2 (2019-07-24)","text":"Load extensions API call, support repeated loading. Align DbResult classes RPostgres RMariaDB. Tested R >= 3.2 (declared). Use default_skip. Improve warning dbGetQuery() called statement (#226). Add test correct use non-UTF8-encoded column names (#277, @wush978). Avoid including call errors.","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"rsqlite-211-2018-05-05","dir":"Changelog","previous_headings":"","what":"RSQLite 2.1.1 (2018-05-05)","title":"RSQLite 2.1.1 (2018-05-05)","text":"Breaking change: field.types argument dbWriteTable() longer takes precedence defining order columns new table. Add support bigint argument dbConnect(), supported values \"integer64\", \"integer\", \"numeric\" \"character\". Large integers returned values type (r-dbi/DBItest#133). Data frames resulting query always unique non-empty column names (r-dbi/DBItest#137). New arguments temporary fail_if_missing (default: TRUE) dbRemoveTable() (r-dbi/DBI#141, r-dbi/DBI#197). Using dbCreateTable() dbAppendTable() internally (r-dbi/DBI#74). Implement format() method SqliteConnection (r-dbi/DBI#163). Reexporting Id(), DBI::dbIsReadOnly() DBI::dbCanConnect(). Now imports DBI 1.0.0.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-1-0","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.1.0 (2018-03-29)","text":"Fix rchk warnings CRAN (#250). dbRowsAffected() dbExecute() return zero DROP TABLE statement, number rows affected last INSERT, UPDATE, DELETE (#238). dbIsValid() returns FALSE instead throwing error invalid connection object (#217). Names x argument dbQuoteIdentifier() preserved output (r-lib/DBI#173). Ignore invalid UTF-8 strings dbQuoteIdentifier() (r-dbi/DBItest#156).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"features-2-1-0","dir":"Changelog","previous_headings":"","what":"Features","title":"RSQLite 2.1.0 (2018-03-29)","text":"Update bundled sqlite3 library 3.22 (#252). Values class \"integer64\" now supported dbWriteTable() dbBind() (#243). New connections now automatically load default RSQLite extensions (#236). Implement dbUnquoteIdentifier().","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-1-0","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.1.0 (2018-03-29)","text":"Now raising error dbBind() called many named arguments, according spec. Refactor connection result handling similar backends.","code":""},{"path":[]},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"api-changes-2-0","dir":"Changelog","previous_headings":"","what":"API changes","title":"RSQLite 2.0 (2017-06-18)","text":"Updated embedded SQLite 3.19.3. 64-bit integers returned integer64 vectors. bit64 package imported support data type (#65). row.names argument dbFetch(), dbReadTable(), dbWriteTable(), sqliteBuildTableDefinition(), sqlData() now defaults FALSE. (also affects dbGetQuery().) old default can restored temporarily per-package basis calling pkgconfig::set_config(\"RSQLite::row.names.query\" = NA). NULL valid value row.names argument, FALSE (#210). name argument dbBegin(), dbCommit(), dbRollback() now declared ellipsis. Code calls methods unnamed second argument still works receives warning (#208). select.cols argument dbReadTable() deprecated, use dbGetQuery() SELECT query instead (#185). methods related tables (dbReadTable(), dbWriteTable(), dbExistsTable(), dbRemoveTable()) always treat name argument literal name, even contains backticks. breaks CRAN version (GitHub version) sqldf package (#188). dbWriteTable(append = TRUE) raises error column names data existing table (#165). dbFetch() now errs n < -1, accepts n == Inf. Removed dummy dbGetQuery() method introduced compatibility Bioconductor packages (#187). sqlData() now returns quoted strings, like default implementation DBI (#207). dbWriteTable() returns invisibly. Now returning objects type blob blobs (#189). dbGetRowsAffected() now returns NA statement placeholders, dbBind() called. column contains incompatible values (e.g., numbers strings), warning raised dbFetch() (#161). Failing set PRAGMA cache_size PRAGMA synchronous dbConnect() now gives clear warning (#197). Improve warning message named parameters used dbGetPreparedQuery() dbSendPreparedQuery() (#193). SQLite collects additional histogram data ANALYZE, may lead faster executions queries (#124).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"bug-fixes-2-0","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"RSQLite 2.0 (2017-06-18)","text":"Identifiers now escaped backticks, avoid ambiguous handling double quotes context strings (#123). Fix dbBind() behavior tests. Attempting bind query without parameters throws error (#114). Fix corner case repeatedly fetching columns don’t affinity. variance() stdev() extension functions now return NULL input length 1 (#201). Fix roundtrip raw columns (#116).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"documentation-2-0","dir":"Changelog","previous_headings":"","what":"Documentation","title":"RSQLite 2.0 (2017-06-18)","text":"Remove redundant documentation, link DBI prominently (#186).","code":""},{"path":"https://rsqlite.r-dbi.org/dev/news/index.html","id":"internal-2-0","dir":"Changelog","previous_headings":"","what":"Internal","title":"RSQLite 2.0 (2017-06-18)","text":"DBItest tests now pass. Reduced number skips shown tests. C++ code now compiles strict compiler settings -Wall -Wextra -pedantic -Wconversion. Restore compatibility older compilers/libraries using