日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2014-08-26 遇到的小问题

發(fā)布時(shí)間:2023/12/1 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2014-08-26 遇到的小问题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

? ?不能快速的保存bug的確是很不爽的事情 ,不僅客戶著急 領(lǐng)導(dǎo)也著急 ,自己也著急。。。。。。。。哈哈

? ?

? ?原來好好的一個(gè)平臺(tái) 簡單的一個(gè)插入記錄 突然就報(bào)錯(cuò)了

? ?錯(cuò)誤為 could not insert #9521

? ?原來項(xiàng)目是用 NHibernate 做的插入

? ?拋出的異常 真是無法定位到底是什么錯(cuò)誤啊
? ?于是想打開vs調(diào)試下遠(yuǎn)程庫?

? ?結(jié)果調(diào)試過程中 無法查詢變量的值
? ?在調(diào)試即時(shí)窗口里 ?提示 表達(dá)式計(jì)算器中發(fā)生內(nèi)部錯(cuò)誤

? ?郁悶 ?于是重啟vs

? ?又提示 源文件與模塊生成時(shí)的不同

? ?網(wǎng)上搜了下解決方案 ?修改 調(diào)試 --》 選項(xiàng) --》 常規(guī)里面 去掉 要求源文件與原始版本相匹配 ok 了

? ?調(diào)試過程中發(fā)現(xiàn)?

? ?-- 錯(cuò)誤代碼拋出的異常 為 直接的 Exception 查看了下 innerException 結(jié)果為

? ?"當(dāng) IDENTITY_INSERT 設(shè)置為 OFF 時(shí),不能向表 'OrderList' 中的標(biāo)識(shí)列插入顯式值“

? ?理論上來說 這個(gè)表的主鍵設(shè)置了 自增長,查了下 果然 服務(wù)器的表 與 測試的表 不符合 應(yīng)該是有人改了數(shù)據(jù)庫,
? ?只能是修改下 hbm.xml 文件 ok ,耗時(shí)一個(gè)半小時(shí) ,

? ?時(shí)間主要浪費(fèi)在 vs調(diào)試 這上面 ,錯(cuò)誤沒能夠明顯的拋出

? ? 調(diào)試錯(cuò)誤后 順便總結(jié)下吧

? ? innerException ?msdn的地址

? ?http://msdn.microsoft.com/zh-cn/library/system.exception.innerexception.aspx

? ? 總的來說 拋出innerException 能更快的定位到錯(cuò)誤,但并不是每個(gè)Exception 都會(huì)有 innerException

?

? ?再一個(gè) vs 的 要求源文件與原始版本匹配 ,網(wǎng)上還有一個(gè)解決辦法是 刪除bin目錄 重新生成 我沒試
? ?找了下這樣做可以的原因 應(yīng)該是 pdb文件儲(chǔ)存了項(xiàng)目的調(diào)試信息,可能與修改不符合

? ?關(guān)于 pdb 文件,還真沒仔細(xì)研究過。

? ?pdb 文件 ?http://www.wintellect.com/blogs/jrobbins/pdb-files-what-every-developer-must-know

?

? ?nhibernate 主鍵

? ?

(1) assigned
主鍵由外部程序負(fù)責(zé)生成,無需NHibernate參與。

(2) hilo
通過hi/lo 算法實(shí)現(xiàn)的主鍵生成機(jī)制,需要額外的數(shù)據(jù)庫表保存主
鍵生成 歷史狀態(tài)。

?

<!--<generator class="hilo">
<param name="table">Tbl_Basic_Identity</param>
<param name="column">ProductVerifyMessageID</param>
<param name="max_lo">0</param>
</generator>-->

?

(3) seqhilo
與hilo 類似,通過hi/lo 算法實(shí)現(xiàn)的主鍵生成機(jī)制,只是主鍵歷史
狀態(tài)保存在Sequence中,適用于支持Sequence的數(shù)據(jù)庫,如Oracle。

(4) increment
主 鍵按數(shù)值順序遞增。此方式的實(shí)現(xiàn)機(jī)制為在當(dāng)前應(yīng)用實(shí)例中維持
一個(gè)變量,以保存著當(dāng)前的最大值,之后每次需要生成主鍵的時(shí)候
將此值加1作為 主鍵。
這種方式可能產(chǎn)生的問題是:如果當(dāng)前有多個(gè)實(shí)例訪問同一個(gè)數(shù)據(jù)
庫,那么由于各個(gè)實(shí)例各自維護(hù)主鍵狀態(tài),不同實(shí)例可能生成同樣
的 主鍵,從而造成主鍵重復(fù)異常。因此,如果同一數(shù)據(jù)庫有多個(gè)實(shí)
例訪問,此方式必須避免使用。

(5) identity
采用數(shù)據(jù)庫提供的主鍵生成機(jī)制。如DB2、SQL Server、MySQL
中的主鍵 生成機(jī)制。

(6) sequence
采用數(shù)據(jù)庫提供的sequence 機(jī)制生成主鍵。如Oralce 中的
Sequence。

(7) native
由 NHibernate根據(jù)底層數(shù)據(jù)庫自行判斷采用identity、hilo、sequence
其中一種作為主鍵生成方式。) uuid.hex
由 Hibernate基于128 位唯一值產(chǎn)生算法生成16 進(jìn)制數(shù)值(編碼后
以長度32 的字符串表示)作為主鍵。

(8) foreign
使用外部表的字段作為主鍵。

轉(zhuǎn)載于:https://www.cnblogs.com/havid/p/3937292.html

總結(jié)

以上是生活随笔為你收集整理的2014-08-26 遇到的小问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。