查看完整版本: 請問一個資料庫選擇的問題
頁: [1]

bennygh 發表於 2017-6-11 05:09 PM

請問一個資料庫選擇的問題


如果希望有一個950萬筆資料的資料庫,能夠在不同的平台使用,抓下資料不用轉碼就能同時在不同的平台使用,該使用什麼資料庫才能做到?<div></div>

我愛小笨蛋 發表於 2017-6-12 03:19 AM

這個問題有點怪怪的。。。

不同平台的意思是指能安裝在不同平台?
還是再不同平台都能抓到資料
(只要你是用能操作資料庫聯線的程式語言應該不會有不能抓資料的問題)

一般來說只要你資料庫有設定好 寫入資料時資料沒有輸入錯誤
抓資料就不用轉碼 不可能存到資料庫是亂碼 出來會變成人看得懂的資料

基本上過百萬筆 用MSSQL / MYSQL / Oracle 選一個就可以了
這幾個比較常見 有問題比較容易找教學
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>

bennygh 發表於 2017-6-12 08:48 AM

我自己也有做過資料庫連線VS做過作品, 我一開始也覺得這問題怪怪的,連線哪個平台抓資料應該都沒問題才對,但是似乎是資料超過百萬千萬,資料庫就不能正常運作?如果要跨各種不同手機,平板,電腦等等不同平台,是否又會發生其他問題?

kwj 發表於 2017-6-16 10:52 AM

本帖最後由 kwj 於 2017-6-16 11:00 AM 編輯

正常來說,資料到百萬或千萬級,一般資料庫最多就是跑起來比較慢,但不會「不能正常運作」
除非這裡談的「資料庫」是「Microsoft Access」這種東西.....{:51:}
或者像是 SQLite 這種,本身目的就不是存放大量資料的輕量級資料庫,也有可能會不能正常運作。

另外一般資料庫建置好以後,不管從什麼平台連線,對資料庫根本沒有差異。

而資料轉碼的問題,這裡談的轉碼是指文字編碼嗎?是的話,這跟把資料放進資料庫時使用的編碼有關
用什麼編碼放進去,當然就要用同樣的編碼取出來,才能夠正確識別。
在一般多數狀況來說,不想轉文字編碼,就從頭到尾都用 UTF-8,大概 99% 的狀況都不會出問題。...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>

w12463 發表於 2017-10-26 06:58 PM

如果是你的問題  同一個資料庫  可以給不同的前端使用
比如同樣是SQL SERVER的某一資料庫 可以給C++的前端和.NET的前端一起使用<br><br><br><br><br><div></div>

love88131496 發表於 2018-3-4 03:36 PM

各為大大講得都正確,小弟補充:

你所謂的950萬筆資料庫,我反而關心:是高度正規化資料庫嗎?還是只不過是把資料庫當成儲存媒體而已?
如果是當儲存媒體,那,都可以.........APP對資料庫連接,不管哪種語言APP,幾乎都有driver,甚至連client都有封裝好的(對各種常用資料庫)
但如果是高度正規化的資料庫,這有差別。但差別不是”選何種資料庫”。因為你的需求看起來是:這個資料庫會被用在不同平台上運作的app,那,準備好做快取資料庫的設計吧,根據不同App採用該平台App最快的資料庫來存取,另一方面同步你的950萬筆資料中的部份資料到那個App所使用的快取資料庫。因為前面講的那些封裝好的元件,通常都會有對特定資料庫(或DRIVER)有優化,另一方面則效能很差。沒啥技巧,只能根據你自己的應用程式,自己寫程式,測試不同driver,測試不同資料庫來測。沒有人可以跟你講正確答案,因為各家資料庫的專家一定都說自己的最好。

PS:被微軟顧問、Oracle顧問拐過的經驗。甚至也使用過Informix, 旦發現搭配.net, 效能最快的都不是微軟自己講的那些元件,也不是informix原生driver............是OLEDB............<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>
頁: [1]