|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
Batman
註冊時間: 2003-11-15 文章: 348
第 1 樓
|
發表於: 星期二 二月 25, 2014 9:38 am 文章主題: 一直困擾的新增自增值欄位(主鍵值)記錄問題 |
|
|
後端資料表有一個自增值欄位,是主鍵值, 在前端下載資料, 新增一筆記錄成功後(用TableUpdate後端資料表), 由於前端資料表沒有自增值欄位內容(內容後端資料表才有), 若再進行修改或刪除, 因前端主鍵值沒記錄, 所以出現錯誤, 現作法是為了一條新增記錄, 整個表也從新下載, 感覺很沒效率, 不知有沒有方法, 祗更新前端自增值欄位, 或祗更新一條記錄至前端, 並替代舊記錄, 或各狐友可有更好方法解決???
用@@identity能取後端自增值最新編號, 但若同時更新2個表, 也有自增值欄位,編號便不一定對了.
就算取最新編號回來, 由於表還是在修改缓冲模式, 亦替換不到前端記錄 |
|
回頂端 |
|
|
ckp6250
註冊時間: 2004-07-30 文章: 1644
第 2 樓
|
發表於: 星期三 二月 26, 2014 6:15 pm 文章主題: |
|
|
為何前後端的資料欄位會不一致呢?
您是用 spt 或 remote view ? |
|
回頂端 |
|
|
Batman
註冊時間: 2003-11-15 文章: 348
第 3 樓
|
發表於: 星期三 二月 26, 2014 6:51 pm 文章主題: |
|
|
是用Spt, 前後端的資料欄位是一致, 祗是後端的主鍵值是自增值欄位, 前端新增後, 前端自增值欄位沒有後端欄位的值, 除非再取資料一次 |
|
回頂端 |
|
|
marvin
註冊時間: 2004-06-01 文章: 321
第 4 樓
|
發表於: 星期四 二月 27, 2014 2:33 am 文章主題: |
|
|
主鍵值這問題以前也討論過
結論是沒解, 只能再取一次 |
|
回頂端 |
|
|
Batman
註冊時間: 2003-11-15 文章: 348
第 5 樓
|
發表於: 星期四 二月 27, 2014 11:15 am 文章主題: |
|
|
謝謝marvin意見, 那祗好死心了 ^^ |
|
回頂端 |
|
|
ckp6250
註冊時間: 2004-07-30 文章: 1644
第 6 樓
|
發表於: 星期四 二月 27, 2014 12:03 pm 文章主題: |
|
|
既然是用 spt , 那事情也單純多了
在 insert 的同時,也回傳 @@identity
只送一次 sqlexec , 也沒多做工 |
|
回頂端 |
|
|
Batman
註冊時間: 2003-11-15 文章: 348
第 7 樓
|
發表於: 星期六 三月 01, 2014 12:07 am 文章主題: |
|
|
ckp6250兄, @@identity是傳最後的新增, 如2個表也是自增值, 亦同時更新, 網上說是不準確 |
|
回頂端 |
|
|
ckp6250
註冊時間: 2004-07-30 文章: 1644
第 8 樓
|
發表於: 星期六 三月 01, 2014 8:17 am 文章主題: |
|
|
如果,一次新增二個表,
就要抓二次@@identity ,
那萬一,一次要新增四五個表
(比如會計系統,新增一筆傳票時,可能得同時新增帳款及票據)
(又比如出貨單,新增時,除了主副檔外,可能同時新增庫存檔或發票檔)
那您的 sqlexec @@identity 要多少回呀? |
|
回頂端 |
|
|
marvin
註冊時間: 2004-06-01 文章: 321
第 9 樓
|
發表於: 星期六 三月 01, 2014 10:41 am 文章主題: |
|
|
注意 @@identity 只在 MsSql 才有
我用 Firebird 是沒有的 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|