av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

SQLite教程(五):數(shù)據(jù)庫和事務(wù)

瀏覽:261日期:2023-04-05 14:56:01

一、Attach數(shù)據(jù)庫:

     ATTACH DATABASE語句添加另外一個(gè)數(shù)據(jù)庫文件到當(dāng)前的連接中,如果文件名為":memory:",我們可以將其視為內(nèi)存數(shù)據(jù)庫,內(nèi)存數(shù)據(jù)庫無法持久化到磁盤文件上。如果操作Attached數(shù)據(jù)庫中的表,則需要在表名前加數(shù)據(jù)庫名,如dbname.table_name。最后需要說明的是,如果一個(gè)事務(wù)包含多個(gè)Attached數(shù)據(jù)庫操作,那么該事務(wù)仍然是原子的。見如下示例:
  復(fù)制代碼 代碼如下:
    sqlite> CREATE TABLE testtable (first_col integer);
    sqlite> INSERT INTO testtable VALUES(1);
    sqlite> .backup "D:/mydb.db"   --將當(dāng)前連接中的主數(shù)據(jù)庫備份到指定文件。
    sqlite> .exit
    --重新登錄sqlite命令行工具:
    sqlite> CREATE TABLE testtable (first_col integer);
    sqlite> INSERT INTO testtable VALUES(2);
    sqlite> INSERT INTO testtable VALUES(1);
    sqlite> ATTACH DATABASE "D:/mydb.db" AS mydb;   
    sqlite> .header on            --查詢結(jié)果將字段名作為標(biāo)題輸出。
    sqlite> .mode column        --將每列都分開顯示。
    sqlite> SELECT t1.first_col FROM testtable t1, mydb.testtable t2 WHERE t.first_col = t2.first_col;
    first_col
    ----------
    1   

二、Detach數(shù)據(jù)庫:
    
    卸載將當(dāng)前連接中的指定數(shù)據(jù)庫,注意main和temp數(shù)據(jù)庫無法被卸載。見如下示例:
 復(fù)制代碼 代碼如下:
    --該示例承載上面示例的結(jié)果,即mydb數(shù)據(jù)庫已經(jīng)被Attach到當(dāng)前的連接中。
    sqlite> DETACH DATABASE mydb;
    sqlite> SELECT t1.first_col FROM testtable t1, mydb.testtable t2 WHERE t.first_col = t2.first_col;
    Error: no such table: mydb.testtable
   
三、事務(wù):

    在SQLite中,如果沒有為當(dāng)前的SQL命令(SELECT除外)顯示的指定事務(wù),那么SQLite會(huì)自動(dòng)為該操作添加一個(gè)隱式的事務(wù),以保證該操作的原子性和一致性。當(dāng)然,SQLite也支持顯示的事務(wù),其語法與大多數(shù)關(guān)系型數(shù)據(jù)庫相比基本相同。見如下示例:
 復(fù)制代碼 代碼如下:
    sqlite> BEGIN TRANSACTION;
    sqlite> INSERT INTO testtable VALUES(1);
    sqlite> INSERT INTO testtable VALUES(2);
    sqlite> COMMIT TRANSACTION;      --顯示事務(wù)被提交,數(shù)據(jù)表中的數(shù)據(jù)也發(fā)生了變化。
    sqlite> SELECT COUNT(*) FROM testtable;
    COUNT(*)
    ----------
    2
    sqlite> BEGIN TRANSACTION;
    sqlite> INSERT INTO testtable VALUES(1);
    sqlite> ROLLBACK TRANSACTION;  --顯示事務(wù)被回滾,數(shù)據(jù)表中的數(shù)據(jù)沒有發(fā)生變化。
    sqlite> SELECT COUNT(*) FROM testtable;
    COUNT(*)
    ----------
    2

標(biāo)簽: SQLite
相關(guān)文章:
主站蜘蛛池模板: a黄毛片| 国产成人免费视频 | 亚洲欧美在线观看 | 国产在线观看一区二区 | 日韩一区精品 | 亚洲精品视频一区二区三区 | 国产在线拍偷自揄拍视频 | 久久一区二区三区四区 | 五月天激情综合网 | 91精品国产综合久久久久久 | 狠狠干2020 | 天天色综网 | 色综合一区二区 | 特黄av| 成人免费淫片aa视频免费 | 欧美精品第一区 | 欧美精品在线一区二区三区 | 免费一区在线观看 | 中国美女一级黄色片 | 青青草网 | 成人欧美 | 成人在线不卡 | 波波电影院一区二区三区 | 久久精品日产第一区二区三区 | 亚洲一区二区三区在线视频 | 国产欧美精品一区二区 | 免费高潮视频95在线观看网站 | 久久国内精品 | 亚洲美女一区 | 欧美jizzhd精品欧美巨大免费 | 国内精品视频在线 | 99这里只有精品视频 | 成人性视频免费网站 | 日韩在线| 中文亚洲字幕 | 久久香蕉精品视频 | 亚洲在线免费 | 欧洲尺码日本国产精品 | 黄色片av | 久久免费精彩视频 | 999www视频免费观看 |