欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQLite教程(十):內(nèi)存數(shù)據(jù)庫和臨時(shí)數(shù)據(jù)庫

 更新時(shí)間:2015年05月04日 16:49:08   投稿:junjie  
這篇文章主要介紹了SQLite教程(十):內(nèi)存數(shù)據(jù)庫和臨時(shí)數(shù)據(jù)庫,本文講解了它們的創(chuàng)建方法和相關(guān)知識(shí),需要的朋友可以參考下

一、內(nèi)存數(shù)據(jù)庫:

    在SQLite中,數(shù)據(jù)庫通常是存儲(chǔ)在磁盤文件中的。然而在有些情況下,我們可以讓數(shù)據(jù)庫始終駐留在內(nèi)存中。最常用的一種方式是在調(diào)用sqlite3_open()的時(shí)候,數(shù)據(jù)庫文件名參數(shù)傳遞":memory:",如:
 

復(fù)制代碼 代碼如下:

    rc = sqlite3_open(":memory:", &db);
 

    在調(diào)用完以上函數(shù)后,不會(huì)有任何磁盤文件被生成,取而代之的是,一個(gè)新的數(shù)據(jù)庫在純內(nèi)存中被成功創(chuàng)建了。由于沒有持久化,該數(shù)據(jù)庫在當(dāng)前數(shù)據(jù)庫連接被關(guān)閉后就會(huì)立刻消失。需要注意的是,盡管多個(gè)數(shù)據(jù)庫連接都可以通過上面的方法創(chuàng)建內(nèi)存數(shù)據(jù)庫,然而它們卻是不同的數(shù)據(jù)庫,相互之間沒有任何關(guān)系。事實(shí)上,我們也可以通過Attach命令將內(nèi)存數(shù)據(jù)庫像其他普通數(shù)據(jù)庫一樣,附加到當(dāng)前的連接中,如:
 
復(fù)制代碼 代碼如下:

    ATTACH DATABASE ':memory:' AS aux1;
 

   
二、臨時(shí)數(shù)據(jù)庫:

    在調(diào)用sqlite3_open()函數(shù)或執(zhí)行ATTACH命令時(shí),如果數(shù)據(jù)庫文件參數(shù)傳的是空字符串,那么一個(gè)新的臨時(shí)文件將被創(chuàng)建作為臨時(shí)數(shù)據(jù)庫的底層文件,如:
 

復(fù)制代碼 代碼如下:

    rc = sqlite3_open("", &db);
 

    或
 
復(fù)制代碼 代碼如下:

    ATTACH DATABASE '' AS aux2;
 

    和內(nèi)存數(shù)據(jù)庫非常相似,兩個(gè)數(shù)據(jù)庫連接創(chuàng)建的臨時(shí)數(shù)據(jù)庫也是各自獨(dú)立的,在連接關(guān)閉后,臨時(shí)數(shù)據(jù)庫將自動(dòng)消失,其底層文件也將被自動(dòng)刪除。
    盡管磁盤文件被創(chuàng)建用于存儲(chǔ)臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)信息,但是實(shí)際上臨時(shí)數(shù)據(jù)庫也會(huì)和內(nèi)存數(shù)據(jù)庫一樣通常駐留在內(nèi)存中,唯一不同的是,當(dāng)臨時(shí)數(shù)據(jù)庫中數(shù)據(jù)量過大時(shí),SQLite為了保證有更多的內(nèi)存可用于其它操作,因此會(huì)將臨時(shí)數(shù)據(jù)庫中的部分?jǐn)?shù)據(jù)寫到磁盤文件中,而內(nèi)存數(shù)據(jù)庫則始終會(huì)將數(shù)據(jù)存放在內(nèi)存中。

相關(guān)文章

  • SQLite教程(十):內(nèi)存數(shù)據(jù)庫和臨時(shí)數(shù)據(jù)庫

    SQLite教程(十):內(nèi)存數(shù)據(jù)庫和臨時(shí)數(shù)據(jù)庫

    這篇文章主要介紹了SQLite教程(十):內(nèi)存數(shù)據(jù)庫和臨時(shí)數(shù)據(jù)庫,本文講解了它們的創(chuàng)建方法和相關(guān)知識(shí),需要的朋友可以參考下
    2015-05-05
  • SQLite教程(四):內(nèi)置函數(shù)

    SQLite教程(四):內(nèi)置函數(shù)

    這篇文章主要介紹了SQLite教程(四):內(nèi)置函數(shù),本文講解了聚合函數(shù)、核心函數(shù)、日期和時(shí)間函數(shù)、,需要的朋友可以參考下
    2015-05-05
  • SQLite 實(shí)現(xiàn)if not exist 類似功能的操作

    SQLite 實(shí)現(xiàn)if not exist 類似功能的操作

    這篇文章主要介紹了SQLite 實(shí)現(xiàn)if not exist 類似功能的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • 保護(hù)你的Sqlite數(shù)據(jù)庫(SQLite數(shù)據(jù)庫安全秘籍)

    保護(hù)你的Sqlite數(shù)據(jù)庫(SQLite數(shù)據(jù)庫安全秘籍)

    相信使用PHP開發(fā)的人員一定不會(huì)對(duì)SQLite感到陌生了,PHP5已經(jīng)集成了這個(gè)輕量型的數(shù)據(jù)庫。并且很多虛擬主機(jī)無論是win還是*nux都支持它。
    2011-08-08
  • CentOS下更新SQLite版本

    CentOS下更新SQLite版本

    SQLite是一個(gè)軟件庫,實(shí)現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的 SQL 數(shù)據(jù)庫引擎。這篇文章主要介紹了CentOS下更新SQLite版本,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2021-12-12
  • Win11下基于VS2022編譯SQLite3源碼的實(shí)現(xiàn)步驟

    Win11下基于VS2022編譯SQLite3源碼的實(shí)現(xiàn)步驟

    本文主要介紹了Win11下基于VS2022編譯SQLite3源碼的實(shí)現(xiàn)步驟,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • 初識(shí)SQLITE3數(shù)據(jù)庫

    初識(shí)SQLITE3數(shù)據(jù)庫

    本文主要講訴Sqlite數(shù)據(jù)庫的一些基本概念以及SQLite的優(yōu)勢(shì),需要的朋友可以參考下
    2014-08-08
  • SQLite3中的日期時(shí)間函數(shù)使用小結(jié)

    SQLite3中的日期時(shí)間函數(shù)使用小結(jié)

    這篇文章主要介紹了SQLite3中的日期時(shí)間函數(shù)使用小結(jié),同時(shí)介紹了一些SQLite數(shù)據(jù)庫的基本知識(shí),需要的朋友可以參考下
    2014-05-05
  • SQLite中重置自動(dòng)編號(hào)列的方法

    SQLite中重置自動(dòng)編號(hào)列的方法

    這篇文章主要介紹了SQLite中重置自動(dòng)編號(hào)列的方法,本文講解了3種情況和其對(duì)應(yīng)解決方法,需要的朋友可以參考下
    2015-03-03
  • 一些很有用的SQLite命令總結(jié)

    一些很有用的SQLite命令總結(jié)

    這篇文章主要介紹了一些很有用的SQLite命令總結(jié),本文總結(jié)了顯示表結(jié)構(gòu)、獲取所有表和視圖、獲取指定表的索引列表、導(dǎo)出數(shù)據(jù)庫到 SQL 文件、從 SQL 文件導(dǎo)入數(shù)據(jù)庫等一些非常有用的操作命令,需要的朋友可以參考下
    2015-07-07

最新評(píng)論