[問題] DataBase 欄位有字串長度限制該怎麼解!
※ [本文轉錄自 Programming 看板 #1DlN1yaf ]
作者: QQ29 (我愛阿蓉) 站內: Programming
標題: [問題] DataBase 欄位有字串長度限制該怎麼解!
時間: Sun May 1 22:38:49 2011
不好意思想請教各位
遇到一個DataBase的設計問題 我是沒有任何database相關知識背景
survey後
我 是使用 DataContext這個Class
http://msdn.microsoft.com/zh-tw/library/system.data.linq.datacontext.aspx
我的某一個Table存的資料是
struct MyData{ string Key; string Content;}
我以為很簡單 但我發現他有一個大問題就是
我insert的字串要是超過4000 length 他就爆出
string truncation exception.........
我無法限制插入字串的長度, 那是使用者輸入的.....
而我也不曉得該怎麼辦~
我的疑惑點有兩個
1. DB為啥要有字串長度的限制@@ 是怕太長 一筆資料太大嗎??
2. 若一般人遇到我這種case要怎麼樣 處理呢?
我自己想法是.....
(1)我就多宣告幾個Content....例如
struct MyData{string Key; string Content1, Content2, Content3....}
然後要insert資料時把字串以四千 切割照順序 存到1 2 3
然後query時 在寫很無腦的 string Content = 1 + 2 + 3;
這根本就......還是有機會爆炸 但我實在想不到方法 因為他欄位無法動態增加..
(2) 我一筆資料插入 就把Content 存到 Key.txt... 然後MyData改成紀錄 檔案名稱
或是我因為用Key當檔名 就根本不用紀錄檔名了....
但缺點是 我每次query一筆資料就要 file 開關 一次 多筆就是多次
我認為這缺點很嚴重....畢竟IO很慢 且頻繁.....
我實在不知道該怎麼辦= = 主要是我對DB不熟 只是單純survey這些API
可是不應該只有我會遇到這問題~~不知道大家是如何解決的~ 請各位給點意見
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.192.70.221
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.192.70.221
※ 編輯: QQ29 來自: 123.192.70.221 (05/01 22:44)
→
05/01 23:37, , 1F
05/01 23:37, 1F
→
05/01 23:37, , 2F
05/01 23:37, 2F
推
05/01 23:45, , 3F
05/01 23:45, 3F
→
05/01 23:45, , 4F
05/01 23:45, 4F
→
05/02 00:40, , 5F
05/02 00:40, 5F
→
05/02 00:40, , 6F
05/02 00:40, 6F
→
05/02 01:00, , 7F
05/02 01:00, 7F
→
05/02 01:00, , 8F
05/02 01:00, 8F
推
05/02 12:13, , 9F
05/02 12:13, 9F
→
05/02 23:05, , 10F
05/02 23:05, 10F
→
05/02 23:06, , 11F
05/02 23:06, 11F
→
05/02 23:06, , 12F
05/02 23:06, 12F
→
05/03 10:48, , 13F
05/03 10:48, 13F
→
05/03 10:48, , 14F
05/03 10:48, 14F
→
05/03 10:48, , 15F
05/03 10:48, 15F
→
05/03 23:33, , 16F
05/03 23:33, 16F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):