VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

數字的主鍵值如何作重排後再儲存?
前往頁面 1, 2  下一頁
 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
Batman



註冊時間: 2003-11-15
文章: 348


第 1 樓

發表發表於: 星期五 十一月 06, 2015 11:35 pm    文章主題: 數字的主鍵值如何作重排後再儲存? 引言回覆

如1-5主鍵的數值, 打亂後如2,1,5,3,4 再存入時會出現重覆鍵值, 應如何處理? 謝覆
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 2 樓

發表發表於: 星期六 十一月 07, 2015 9:56 am    文章主題: 引言回覆

看不懂你的問題

看來像是以亂排名中間出了差錯
其實亂數並不能真正的亂,避免產生重複的話
就將欲排亂的欗位另成立一個,以這個複製欄去排亂再排序,如此一來原㯗位就是想要的了
回頂端
檢視會員個人資料 發送私人訊息
Batman



註冊時間: 2003-11-15
文章: 348


第 3 樓

發表發表於: 星期六 十一月 07, 2015 10:28 am    文章主題: 引言回覆

如某一欄位Sortno是主鍵值, 內容是1-5順序, 打亂後假如是排序2,1,5,3,4, 儲存時,因第一個2, 在後台表已有2值, 所以儲存不了, 不知可如何解決
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 4 樓

發表發表於: 星期六 十一月 07, 2015 10:47 am    文章主題: 引言回覆

加一個打亂的欗位用來再排序
那麼原本的欄位就變成亂序了
不必存回去啊
Field1:12345
Field2依序加入亂數,ex35142
以field2 排序,field1 就換成recno(),就是答案
回頂端
檢視會員個人資料 發送私人訊息
Batman



註冊時間: 2003-11-15
文章: 348


第 5 樓

發表發表於: 星期六 十一月 07, 2015 11:41 am    文章主題: 引言回覆

因Field1是要順序顯示出來, 所以用不了你的方法
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 6 樓

發表發表於: 星期六 十一月 07, 2015 12:32 pm    文章主題: 引言回覆

概念一樣
排序後的field1不換成recno() 那麼原field1就是了
Field2 只要依序塡入任一亂數再來排序即可
回頂端
檢視會員個人資料 發送私人訊息
Batman



註冊時間: 2003-11-15
文章: 348


第 7 樓

發表發表於: 星期六 十一月 07, 2015 1:10 pm    文章主題: 引言回覆

不明, 顯示是Field1, Field2打亂後再排序,Field2是順序, 可是Field1顯示出來卻已不是順序了
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 8 樓

發表發表於: 星期六 十一月 07, 2015 3:22 pm    文章主題: 引言回覆

也可以排完序後,field2全部改為recno()
再以field1排序回來,亂數排列就在field2
回頂端
檢視會員個人資料 發送私人訊息
Batman



註冊時間: 2003-11-15
文章: 348


第 9 樓

發表發表於: 星期六 十一月 07, 2015 4:32 pm    文章主題: 引言回覆

問題不在Field2, 是在Field1, Field1是主鍵值, 又是要顯示的欄位, 怎加亂數或排序的新欄位, 最後還是要反映在Field1, 因Field1要順序顯示, 問題在一存入Field1時便會出現相同值, 便拒絕儲存.
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 10 樓

發表發表於: 星期六 十一月 07, 2015 4:44 pm    文章主題: 引言回覆

如果你的權限不能修改dbf的結構那麼我算是白講了一堆
修改你的檔案,加入一個新欄位,filed2
每個欄位加入一個亂數值
對於原資料沒有任何改變
只是用這個新加的欄位來進行排序
也可以複製檔案來玩
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 3928
來自: Taipei,Taiwan

第 11 樓

發表發表於: 星期六 十一月 07, 2015 4:55 pm    文章主題: 引言回覆

同意樓上.

排序值不會當PK 來用,
只會建一個一般INDEX作為查詢或是列印使用
因為排序值的變動時機太多變動太大.

例如,一個產品銷售查詢,
PK當然是產品,
但會建幾個一般索引,
例如數量,例如金額,例如數量排名欄位,例如金額排名欄位.
這樣重複統計時,PK不受影響,但可異動排名欄位
這應該比較通用的做法

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
Batman



註冊時間: 2003-11-15
文章: 348


第 12 樓

發表發表於: 星期六 十一月 07, 2015 5:29 pm    文章主題: 引言回覆

謝謝2位回覆, 思考一下先
回頂端
檢視會員個人資料 發送私人訊息
perry



註冊時間: 2014-07-20
文章: 199


第 13 樓

發表發表於: 星期六 十一月 07, 2015 6:10 pm    文章主題: 引言回覆

第1次先 *-1 存檔
第2次再存成正值 或 ABS(field1)
如此分2次存,不知可否?
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 3928
來自: Taipei,Taiwan

第 14 樓

發表發表於: 星期日 十一月 08, 2015 7:04 am    文章主題: 引言回覆

syntech 寫到:

例如,一個產品銷售查詢,
PK當然是產品,
但會建幾個一般索引,



還有,
不要陷入為了PK而PK的情況.
有規定任何表都要有一個PK嗎?

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
ckp6250



註冊時間: 2004-07-30
文章: 1551


第 15 樓

發表發表於: 星期日 十一月 08, 2015 10:07 am    文章主題: 引言回覆

syntech 寫到:

有規定任何表都要有一個PK嗎?


有,
要不然,通用型的資料庫管理管體如phpmyadmin或navicat
很難編輯
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
前往頁面 1, 2  下一頁
1頁(共2頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作