Re: [閒聊] Eclipse與SQLite的關係之疑問

看板AndroidDev作者 (〆)時間14年前 (2011/12/22 19:26), 編輯推噓0(0012)
留言12則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《sweet00914 (別理我)》之銘言: : 請問各位大大 : 當在開發一個應用程式(需存取資料庫)時,且若已經存在一資料庫(*.txt,*.xls..等) : 請問我是否應該使用SQLite DataBase Browser(或其他工具SQLiteStudio), : 先將*.txt或*.xls轉換成SQLite的格式呢? : 還是使用模擬器命命列sqlite3的工具去create a new database呢? : ps:前提-已存在的資料庫(*.txt)的資料是固定的,只用來讀取而已。 : 謝謝大家~0.0 剛研究了一下 需要的工具 phpmyadmin 如果沒有的人 就去這邊下載 http://www.phpmyadmin.net/home_page/downloads.php 安裝完成以後 就打開瀏覽器 在網址列上面打上localhost 就會進入phpmyadmin 然後輸入你的帳號密碼(安裝過程會叫你設定) 你就會看很友善的資料庫處理圖形介面 這時候你只需要選擇一個資料 沒有的話建立一個 建立好了 就點進你剛建好資料庫裡面 然後右邊會有一個"載入" 點它 這邊我很好奇哪一個資料庫叫做txt(這個該不會是.sql)或者xls(這應該是excel吧?) 可能我看太少>"< 沒看過這種類型的資料庫 然後選擇你要載入的資料庫檔案 以及格式 然後你就會看到你剛剛建立的資料庫已經載入你剛剛匯入的資料庫了 這時候! 你就選擇任何一個資料表格 選擇輸出 然後你就會看到它要你選擇是輸出什麼格式? 這時候你就選SQL, 然後SQL選項就將 "新增 AUTO_INCREMENT數值" 拿掉 下面有一個下載儲存不要打勾 按下"執行" 你就看到他會列出一排SQL指令 接著 你把CREATE TABLE ... 這一大串 複製貼上到記事本 然後下面還有一大串的 INSERT ... 一起貼過去 利用記事本的取代功能 將 "`" 改成 "'" 接著 打開cmd 鍵入 adb shell (這邊你必須到放android sdk的目錄之下有一個tool-platform) 下面有一個adb.exe 或者你設定環境變數也可以 然後輸入 cd /data/data/xxx.xxx.xxx/ xxx.xxx.xxx是你的package name 下ls 你可能就會看到 databases lib shared_prefs 這三個資料夾 databases如果你之前已經有建立資料庫了 就會看到這個資料庫存在 shared_prefs如果你之前有用sharedPreference的話就會看到這個 然後進入databases裡面 打ls 如果有看到資料庫xxx 就表示你之前已經建立好資料庫xxx 如果沒有看到沒關係 一樣直接下 等下你建立表格的時候 這個資料庫 就會自動建立了 下 sqlite3 xxx 就會看到這一長串的資訊 SQLite version 3.6.22 Enter ".help" for instructions Enter SQL statements terminated with a ";" 然後就可以開始下指令了 把剛剛的記事本打開 複製CREATE TABLE這一段 然後直接貼上 然後下 .table 你就會看到 表格已經被建立了 接下來一口氣把那一堆INSERT .... 一次複製貼上 用力的按下enter 你就會發現 一個表格成功的複製到android底下了 同理 將其他的表格一個一個 加進去 我這個算是笨做法 可是我不知道還有沒有其他方便的工具 可以提供一鍵就import進去 我有看到.import的指令 但是我試著幾次都不成功 可能我哪個步驟有錯誤吧! 以上就是我的解法 希望有強者能夠提供更簡單的做法 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.221.115.4

12/22 20:37, , 1F
好像phpmyadmin只是用來幫你寫SQL XDD 主要是insert很多
12/22 20:37, 1F

12/22 20:40, , 2F
在App裡比較常看到用ContentProvider.. 主要還是看你方便
12/22 20:40, 2F

12/22 22:00, , 3F
請問樓上的大大 可是示範用ContentProvider解這題嗎
12/22 22:00, 3F

12/22 22:37, , 4F
原PO水球問過我 說筆數超過65536...
12/22 22:37, 4F

12/22 22:38, , 5F
但沒說是第一次還是每一次筆數都這麼多
12/22 22:38, 5F

12/22 22:41, , 6F
我想第一次可以用SQLiteDatabase跟File去做 一定很久
12/22 22:41, 6F

12/22 22:42, , 7F
但應該是只有第一次需要這麼多筆 之後只要部份更新
12/22 22:42, 7F

12/22 22:45, , 8F
如果不嫌麻煩 也可以考慮 http://ppt.cc/l,Qp (沒有細看
12/22 22:45, 8F

12/22 22:56, , 9F
你從phpmyadmin拿到的SQL應也可用http://ppt.cc/0~fu
12/22 22:56, 9F
這邊我要給你一個讚 的確 這個方法我倒是沒想過 而且比在Console上操作容易多了 這樣一來下面的步驟 我也知道怎麼做了 感謝指導:)

12/22 22:57, , 10F
要參考ContentProvider可以看這個http://ppt.cc/lW,O
12/22 22:57, 10F

12/22 23:02, , 11F
sqlite要.import應該是csv檔案 見http://ppt.cc/nkOg
12/22 23:02, 11F

12/22 23:03, , 12F
原po說已存在的txt應該是csv 看是不是逗號或其他符號分隔
12/22 23:03, 12F
※ 編輯: givemepass 來自: 61.64.170.139 (12/22 23:45)
文章代碼(AID): #1EynFAJX (AndroidDev)
文章代碼(AID): #1EynFAJX (AndroidDev)