T之家 1 月 7 日消息,雖然“星期二補丁”更新旨在為 Windows 提供安全補丁,但它們也經常會導致重大問題。Windows 11 和 Windows 10 以及 Windows Server 的 11 月“星期二補丁”由于 ODBC SQL Server 驅動程序錯誤 Bug 導致應用程序出現問題。
微軟表示,受影響的用戶會收到應用程序錯誤或來自 SQL Server 的錯誤,例如“EMS 系統遇到問題”和“消息:[Microsoft][ODBC SQL Server Driver] TDS Stream 中的協議錯誤”或“消息: [Microsoft][ODBC SQL Server 驅動程序] 從 SQL Server 收到的未知令牌”。
現在,微軟在假期結束后,終于發布了該問題的解決方法。
IT之家了解到,要緩解此問題,你可以執行以下操作之一:
如果你的應用已經在使用或能夠使用數據源名稱 (DSN) 來選擇 ODBC 連接,請安裝 Microsoft ODBC Driver 17 for SQL Server 并選擇它以與使用 DSN 的應用一起使用。注意:建議使用最新版本的 Microsoft ODBC Driver 17 for SQL Server,因為它比 Microsoft ODBC Driver 18 for SQL Server 更兼容當前使用舊版 Microsoft ODBC SQL Server 驅動程序 (sqlsrv32.dll) 的應用程序。
如果你的應用無法使用 DSN,則需要修改應用以允許 DSN 或使用比 Microsoft ODBC SQL Server 驅動程序 (sqlsrv32.dll) 更新的 ODBC 驅動程序。
微軟表示,正在努力解決掉該問題。
每日干貨好文分享丨請點擊+關注
歡迎關注天善智能微信公眾號,我們是專注于商業智能BI,大數據,數據分析領域的垂直社區。
對商業智能BI、大數據分析挖掘、機器學習,python,R等數據領域感興趣的同學加微信:tstoutiao,邀請你進入頭條數據愛好者交流群,數據愛好者們都在這兒。
問題說明
今天測試odbc源和ado.net源連接SqlServer抽取數據性能時,發現ssis2012 odbc了一個問題。我是Win10 64位系統,潛意識配置odbc源是64位。配置完發現報錯了。
odbc的配置與oledb,ado.net配置有點不一樣,先上圖簡單說下odbc的配置。
odbc配置步驟
控制面板——>管理工具
出如下界面,發現沒,odbc源又32位和64位的。以為自己本機是64位,就確定的選了64位的配置。ssis2012的odbc只能配32位的,下面再說原因。
這里先選64位來說明問題。出現如圖界面:
用戶DSN:只對當前用戶可見,且只能用于當前機器上。
系統DSN:系統數據源對當前機器上的所有用戶可見.
文件DSN:可以由安裝了相同驅動程序的用戶共享.
說白了就是權限不同,這里選擇系統DSN來說明問題。點擊添加。
選擇SQLServer ,填寫名稱,數據庫服務器,
默認下一步再下一步,選擇連接的數據庫。一直下一步完成即可。
出現了剛剛設置的數據源“粽子job”
回到SSIS數據流配置odbc連接管理器。如圖操作
在系統數據源找不到剛剛配置的 "粽子job"。
總結:原因雖然你安裝的是64位的2012ssdt,但是2012里面還是用的2010的32位的shell命令。運行ssdt時可以發現。
但是有一個問題很奇怪,選擇用戶DSN32位和64位odbc源都可以都出來(本地測試過了)。
總的來說:ssis2012 odbc配置選擇用戶DSN32或64,系統32DSN ODBC源都可以讀出來。
對商業智能BI、大數據分析挖掘、機器學習,python,R感興趣同學加微信:tstoutiao,邀請您加入頭條數據愛好者交流群,數據愛好者們都在這兒。
轉載請保留以下內容:
本文來源自天善社區粽子job的博客。
原文鏈接:https://ask.hellobi.com/blog/zzjob/6680。