none
無法開啟資料表 RRS feed

  • 問題

  •  

    請問各位:

           我有一個資料表,約有十幾萬筆的資料,我去開啟資料表時,他只跑了三分之二的資料出來,

           然後便出現錯誤訊息".Net Sqlclient Data Provider 鎖定要求的逾時期間己過"請問有可能

           是lock嗎?我有試著重開機,重開機之後問題可以解決,但一段時間後,便又會出現同樣的問題

           ?如果是lock我該如何解決呢?

                                                              謝謝各位

    2007年8月6日 上午 04:48

解答

  • 在預設狀態下,以你所描述的方式開啟資料表時,SQL Server 2005 會使用「保留鎖定」將鎖定保留,直至交易完成為止,而不會在所需資料表、資料列或資料頁已不再需要時,立即釋放鎖定。為了確認是否因為「保留鎖定」設定而發生此問題,你可以嘗試修改設定值:

    1. 開啟「SQL Server Management Studio」
    2. 按下「Tools」功能表,選擇「Options」指令
    3. 依序展開左邊窗格裡的「Query Execution」、「SQL Server」、「Advanced Page」
    4. 將右側窗格中的「SET LOCK TIMEOUT 」設定成 0,以便當發生鎖定時,就立即傳回訊息

    經過上述的調整之後,再開啟資料表查詢一次,看看問題是否依然會發生
    2007年8月7日 上午 04:08
    版主

所有回覆

  • 可否提供其他資訊,例如:使用何種方式來開啟資料表、資料表是否有建立索引、所使用的 SQL Server 版本、作業系統版本...

    建議您先去翻一下本論壇的公告:〔公告〕TechNet 技術論壇板規 v1.0
    2007年8月6日 上午 09:18
    版主
  • 不好意思,我的OS是 WIN2003R2 ENT X64 ,SQL的版本為SQL SERVER 2005 SP2 X64,資料表並沒有建立索引,開啟資料表的方式為,直接在資料表上按右鍵選開啟資料表,然後資料表的資料只能跑到3分之2的資料,後面的資料就出不來了,然後出現錯誤訊息,重開機可以解決此問題

    2007年8月7日 上午 01:15
  • 在預設狀態下,以你所描述的方式開啟資料表時,SQL Server 2005 會使用「保留鎖定」將鎖定保留,直至交易完成為止,而不會在所需資料表、資料列或資料頁已不再需要時,立即釋放鎖定。為了確認是否因為「保留鎖定」設定而發生此問題,你可以嘗試修改設定值:

    1. 開啟「SQL Server Management Studio」
    2. 按下「Tools」功能表,選擇「Options」指令
    3. 依序展開左邊窗格裡的「Query Execution」、「SQL Server」、「Advanced Page」
    4. 將右側窗格中的「SET LOCK TIMEOUT 」設定成 0,以便當發生鎖定時,就立即傳回訊息

    經過上述的調整之後,再開啟資料表查詢一次,看看問題是否依然會發生
    2007年8月7日 上午 04:08
    版主