日前將一張資料表中一個資料型態為varchar改為nvarchar時發生了錯誤,發生錯誤之原因是因為該欄位有Default的Constraint相依導致。本LAB來簡單模擬此一問題。
使用DROP_EXISTING參數重建叢集索引以降低交易紀錄
MSDN官網在Create Index中對DROP_EXISTING功能的解說如下。
無窮迴圈的Cursor
- 3234
- 0
- [SQL]TSQL語法技巧
- 2017-05-17
日前一位同仁來告知我說他寫了一支預存程序,但一執行卻跑很久也不會停止,因此請我幫忙看一下該預存程序。
長度可變資料欄位(varchar 或 nvarchar)導致資料表破碎嚴重
日前支援開發一個跟卡證相關系統,系統目前上線運作快一年。日前檢視一下該系統相關資料表是否有索引破碎問題需要重建。其中發現一張資料表是用來存放卡號等相關資料,其破碎率高達99% ( Clustered Index ) 。我檢視該資料表叢集索引是採流水碼編號排序,理論上應該不至於破碎如此嚴重啊 !
需針對外鍵 Foreign Key建立索引嗎?
建立外鍵Foreign Key可以確保關聯式資料表的資料的完整性,避免掉孤兒資料的產生。
MS SQL CDC(Change Data Capture)功能初體驗之有雷勿踩
前情提要MS SQL CDC(Change Data Capture)功能初體驗 ,這一篇是要介紹一個CDC須注意的問題, 讓我稍微模擬一下並分享給大家。
MS SQL CDC(Change Data Capture)功能初體驗
日前同仁想利用MS SQL中CDC(Chang Data Capture)功能來針對增刪修資料做紀錄及同步作業,之前我有稍微玩過,但許久沒有碰。因此趁機複習一下並了解一下CDC有甚麼使用上需注意的事項。
SQL2016新函數String_Split
- 5453
- 0
- [SQL]TSQL語法技巧
SQL2016以前常會有一個需求就是將一個字串用分隔符號拆解後轉成Table來運用,而這個需求在SQL2016中內建了
利用SSMS的匯入和匯出精靈來做資料傳輸,你坐的是直航機還是有轉機呢?
日前PASS好友說到一個特殊情況,他們工程師用SSMS的匯出匯入精靈到資料時,網路傳輸只衝到20MB左右。同樣的作業改用SSIS來跑,網路傳輸可以衝到80MB。
大資料量匯入資料庫注意步驟
之前有寫過一篇如何在大量Insert資料的交易中降低交易紀錄的成長呢? 其中有提到幾種降低交易紀錄量的寫入模式..
沒必要的話就別DBCC SHRINKFILE或DBCC SHRINKDATABASE了吧
近來很忙,因此有點荒廢了BLOG。前幾天剛好有朋友問了一個關於SHRINKDATABASE的問題,讓我興起了LAB的興趣。
您知道執行sp_configure並reconfigure後有可能會清空記憶題中所有執行計畫嗎?
老實說我並不知道,直到今天看到一本SQL管理書籍中寫到,才知道sp_configure居然有這樣的可怕因子
利用BCP取出存入varbinary(max)欄位的檔案或文件
- 558
- 0
- [SQL]TSQL語法技巧
我們常常會把文件或圖檔轉成二進位後放到SQL資料庫中,但如果要取出該檔案往往需要撰寫程式來將檔案取出,日前楊志強老師分享利用BCP方式也可以簡單做到,筆記一下
將Database相容性層級調升後造成datetime欄位比對錯誤造成異常(二)
這一篇比較詳細比對ODBC及OLE DB建立Linked Servers對於資料欄位變動的差異
將Database相容性層級由90調升後造成DateTime欄位比對異常
- 370
- 0
- [SQL]TroubleShooting
- 2016-11-03
之前有過將SQL2000直升SQL2014的經驗後,因此對於SQL2008R2中部分相容性層級為90的資料庫也起了調升的意念。
Except只會回傳經過distinct的資料列
- 359
- 0
- [SQL]TSQL語法技巧
常常用Except來比對資料差異性,但一直不知道Except有個雷。那就是會distinct回傳的資料列,日前看見楊志強老師分享文才知道,汗顏......
請停用資料庫的guest使用者
昨天在Tech Summit 2016聽百敬老師一場Session中提到每一個DB中guest帳號的安全性問題。以前從沒在注意guest這一個預設User,今天上網查了一下資料才發現原來得好好留意啊
STOPATMARK 及 STOPBEFOREMARK還原資料庫到指定交易點
上個月參加SQL PASS的九月份聚會,講師許致學老師分享了很多種備份還原的Solution。其中一種還原方式是可以指定資料庫還原到特定交易時間,很是有趣。筆記一下
建立合適的索引,來降低Select Top Order By帶來的效能問題
Order By向來是為人垢弊的效能殺手,可是有時又不得排序,也許可以透過建立索引來降低效能的影響。
利用資料表值參數(Table Valued)及預存程序來提升批次更新資料的速度
- 1694
- 0
- [SQL]TSQL語法技巧
日前有一個系統功能是要大量更新資料表的資料,我詢問一下PG預計如何撰寫該功能。PG回覆我說就是用迴圈更新前端餵近來的資料,我聽到當下覺得這樣的做法效能不僅差,且會對SQL造成一定程度的效能影響。