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

您的位置:首頁技術文章
文章詳情頁

Android中能不能判斷一個數據庫是create來的,還是open來的?

瀏覽:174日期:2024-09-08 16:40:40

問題描述

先簡單說一下我想實現的功能,就是創建數據庫的時候,同時也會創建一個表,然后就往表里插入數據;之后,就是打開數據庫,然后對表的數據進行更新。所以我想知道這個數據庫是創建來的,還是打開來的,好讓我執行不同的操作。而我創建數據庫的方法是繼承SQLiteOpenHelper類和實現getWritableDatabase方法。具體如下圖:Android中能不能判斷一個數據庫是create來的,還是open來的?Android中能不能判斷一個數據庫是create來的,還是open來的?

這樣的話,我就打算判斷這個mSqLiteDatabase(這是SQLiteDatabase的一個實例對象,截圖沒放出來)是創建來的,還是打開來的。因為我看文檔里說,上圖的方法是:存在該數據庫就打開,不存在就創建。而getWritableDatabase方法是返回一個數據庫的對象。所以我就這樣瞎想,不知道可不可以判斷。如果不行的話,有沒有其它可替代的方法。

問題解答

回答1:

按你的需求來說,其實不用管它是新建的還是打開的吧,打開后查詢下有沒數據,有就更新,沒有就新建。

回答2:

只要在DatabaseHelper的onCreate(SQLiteDatabase)方法里創建表就好了呀。數據庫在第一次創建的時候就會調用這個方法的。之后你就只要插入數據就行了

回答3:

我一直用xutils操作數據庫,這個對數據庫封裝的很好,也很簡單。里面有個db.openorupdate方法,會自動對比數據,確定打開或更新。

如果用android原生的方法,也沒必要判斷,你只需要確認是否有新數據,有的話就插入就好了

回答4:

只有在第一次打開數據庫的時候才會調用onCreate,這時候你創建表就行了,下一次打開的話不會再調用onCreate了。

回答5:

首先非常感謝各位的解答,根據xiluoduyu的回答,的確能夠實現我想要的功能,換一下思路想,的確可以。但我在提這個問題的過程中發現,標題中所描述的問題其實也是我想知道,想弄明白的。可能這個問題比較奇葩,甚至是沒有答案的,所以先作個記錄,以后再回來瞧瞧。感謝各位!

主站蜘蛛池模板: 不卡一二区| 免费欧美 | www.激情.com| 国产亚洲精品美女久久久久久久久久 | 日本福利视频 | 国产一区二区电影 | 久久久欧洲 | 亚洲国产精品视频一区 | 一区二区av在线 | 免费一区二区三区 | 欧美精品一区在线 | 欧洲成人免费视频 | 黄视频免费观看 | 亚洲有码转帖 | 亚洲国产二区 | 黄色片av | 成人在线免费视频观看 | 日日夜夜精品视频 | 欧美一级片 | 久久综合激情 | 午夜看电影在线观看 | 男女网站在线观看 | 欧美性网 | 四虎永久在线精品免费一区二 | 久久国产美女视频 | 操人网站 | 麻豆精品国产免费 | 精品视频一区二区三区在线观看 | 日韩久久成人 | 99久久久久久99国产精品免 | 999免费视频 | 亚洲成色777777在线观看影院 | 一级a性色生活片久久毛片 一级特黄a大片 | 国产美女黄色 | 日韩精品视频一区二区三区 | 在线日韩| 午夜小电影| 最新一级毛片 | 国产精品国产三级国产aⅴ中文 | 久久久久国产精品一区 | 欧美999|