HeidiSQL throws an exception when trying to view a Microsoft SQL Server temporal table. (For reference, see https://learn.microsoft.com/en-us/sql/relational-databases/tables/temporal-tables?view=sql-server-ver16).
It's kind of weird, the moment you click the "Data" tab to view the table contents, it throws an EDatabaseError saying "List index out of bounds (nn)."
The problem should be easily reproducible with a docker MSSQL image from Microsoft, and a sample system-versioned (temporal) table created.
It's just maddening because HeidiSQL is so awesome, even for SQL Server, but as we migrate more and more of our tables to temporal tables, I can use it ever less. Being forced to use SSMS is like having to do numerical methods with an abacus.
HeidiSQL version 12.3.0.6589.
Stack trace:
main thread ($692c):
009e9505 heidisql.exe Data.DB DatabaseError
009ecf56 heidisql.exe Data.DB TFieldsGetFieldError
009ecfdb heidisql.exe Data.DB TFields.GetField
00c9e584 heidisql.exe dbconnection 9114 +8 TAdoDBQuery.IsNull
010c6438 heidisql.exe Main 10179 +15 TMainForm.AnyGridPaintText
009b093b heidisql.exe VirtualTrees 25195 +2 TCustomVirtualStringTree.DoPaintText
009afdea heidisql.exe VirtualTrees 24970 +5 TCustomVirtualStringTree.CalculateTextWidth
009b0438 heidisql.exe VirtualTrees 25098 +27 TCustomVirtualStringTree.DoGetNodeWidth
009a0954 heidisql.exe VirtualTrees 18753 +85 TBaseVirtualTree.GetDisplayRect
010c9059 heidisql.exe Main 10722 +28 TMainForm.AutoCalcColWidth
010aea6f heidisql.exe Main 6013 +169 TMainForm.DataGridBeforePaint
0098cf5d heidisql.exe VirtualTrees 11079 +2 TBaseVirtualTree.DoBeforePaint
009a723b heidisql.exe VirtualTrees 22071 +5 TBaseVirtualTree.PaintTree
00998107 heidisql.exe VirtualTrees 15496 +23 TBaseVirtualTree.Paint
006c4796 heidisql.exe Vcl.Controls TCustomControl.PaintWindow
006bafe3 heidisql.exe Vcl.Controls TWinControl.PaintHandler
006bbd3f heidisql.exe Vcl.Controls TWinControl.WMPaint
006c4728 heidisql.exe Vcl.Controls TCustomControl.WMPaint
00988c9d heidisql.exe VirtualTrees 9217 +8 TBaseVirtualTree.WMPaint
0040f2a2 heidisql.exe System TObject.Dispatch
006b38fd heidisql.exe Vcl.Controls TControl.WndProc
006bad6b heidisql.exe Vcl.Controls TWinControl.WndProc
0099d023 heidisql.exe VirtualTrees 17344 +32 TBaseVirtualTree.WndProc
006b9f0a heidisql.exe Vcl.Controls TWinControl.MainWndProc
005d2cb3 heidisql.exe System.Classes StdWndProc
7ff934fb ntdll.dll KiUserCallbackDispatcher
7ff933c1 USER32.dll DispatchMessageW
0084d66e heidisql.exe Vcl.Forms TApplication.ProcessMessage
0084d6e3 heidisql.exe Vcl.Forms TApplication.HandleMessage
0084db3a heidisql.exe Vcl.Forms TApplication.Run
010e8258 heidisql.exe heidisql 113 +42 initialization
7ff9336a KERNEL32.DLL BaseThreadInitThunk
7ff934f6 ntdll.dll RtlUserThreadStart