Commit Graph

4274 Commits

Author SHA1 Message Date
Ansgar Becker
92a460030d Show thousand separator in data grids. Fixes issue #3324. 2013-08-31 05:07:20 +00:00
Ansgar Becker
25c71448b2 Introduce TMainForm.FGridCopying flag, and use that to temporarily disable integer to datetime conversion in AnyGridGetText(). Fixes issue #3322. 2013-08-29 04:54:47 +00:00
Ansgar Becker
0759ea2f8c Code cosmetic for getting server version:
* Remove properties ServerVersionInt and ServerVersionStr from TDBConnection
* Instead, move private GetServerVersionInt() and GetServerVersionStr() to public scope, named like the previously used properties now
* Remove overridden methods in descendants of TDBConnection, do it with a version conditional in the upper class
* Finally, remove ConvertServerVersion() and merge code into ServerVersionStr()
* We have 7 declarations and 3 implementations less than before
2013-08-28 04:41:58 +00:00
Ansgar Becker
fddad4669f TOP(x) clause for UPDATES + DELETES introduced in MSSQL 2005. Do not use that on older servers. See http://www.heidisql.com/forum.php?t=13289 2013-08-28 03:52:34 +00:00
Ansgar Becker
110d9c585c Fix reading chunks from SQL file with a multiplier of the encoding's maximum character length. Broken in r4470. 2013-08-27 05:10:34 +00:00
Ansgar Becker
1347a3a368 Fix usage of wrong TDBObject caused by using wrong offset from TDBObjectList. 2013-08-24 18:11:43 +00:00
Ansgar Becker
5e83eaab1b * Move code from FillPopupQueryLoad into automatically triggered FillPopupQuery.OnPopup event.
* Make getting system imagelist and imageindex shared code in Helpers.GetSystemImageList and Helpers.GetSystemImageIndex
* Remove call to TranslateComponent, accidentally committed in r4490
* Draw system icons with transparency
2013-08-24 05:28:39 +00:00
Ansgar Becker
90c708fc74 Fix crash caused by freeing main image list, see previous commit. Fixes issue #3316. 2013-08-22 15:55:53 +00:00
Ansgar Becker
b7a1daa88a Display system known icons in recent SQL files list. 2013-08-22 05:17:30 +00:00
Ansgar Becker
c7373e92db Don't know when exactly but in some cases VirtualTree.FocusedColumn seems to have the InvalidColumn (-2) index. Do not pass such negative indexes to a TStringList in TDBQuery.ColAttributes. See http://www.heidisql.com/forum.php?t=13245 2013-08-22 04:34:30 +00:00
Ansgar Becker
e8adf2095f Turn column selection form into a tool window, so I can apply a size-grip at the lower right edge of the form. Remember form dimensions. Fixes issue #3299. 2013-08-21 05:01:28 +00:00
Ansgar Becker
3d2f56fe1a Add CHECK option "FOR UPGRADE" to maintenance dialog. Fixes issue #3279. 2013-08-21 04:22:20 +00:00
Ansgar Becker
44cf6618aa * Remove "Run file" dialog, and use a standard Windows IProgressDialog instead when executing a SQL file. Learned from http://users.skynet.be/oleole/ProgressDialog.htm
* Enhance error handling when "Stop on errors" is activated, by showing an error summary at the end of script execution.
2013-08-21 04:14:37 +00:00
Ansgar Becker
a4b6855420 Fix regex in TDBConnection.ParseViewStructure which matches on IS.COLUMNS.COLUMN_TYPE but just finds empty matches, because all expression groups are optionally. Also, ZEROFILL attribute for numeric columns never gets detected. Fixes issue #3311. 2013-08-17 05:25:51 +00:00
Ansgar Becker
721df2da37 Make regex in ParseViewStructure even more loose, this time due to dots in the view's name. See http://www.heidisql.com/forum.php?t=13191 2013-08-16 04:37:00 +00:00
Ansgar Becker
5520e84fc2 Issue #3304: Escape column names for PHP 2013-08-07 04:39:42 +00:00
Ansgar Becker
4628fac73d Fetch column names from IS.COLUMNS only, without joining IS.VIEWS from which we anyway don't read something. Fixes issue #3305. 2013-08-06 18:15:58 +00:00
Ansgar Becker
34fa56ab51 Escape exported PHP strings using some extra logic, instead of using incompatible TDBConnection.EscapeString. Fixes issue #3304. 2013-08-06 03:58:56 +00:00
Ansgar Becker
58b2a66800 Get column names from VIEW per IS.COLUMNS, not per SHOW COLUMNS, to support MSSQL here. Fixes empty grid results for MSSQL VIEWs. See comment #46 of issue #3212. 2013-08-05 04:15:01 +00:00
Ansgar Becker
572d336d8b Translate new menu item "Generate SELECT", missing in r4477. 2013-08-03 05:25:09 +00:00
Ansgar Becker
d00adaf484 Add "Generate SELECT..." menu item to query helpers context menu. See http://www.heidisql.com/forum.php?t=13108 2013-08-01 13:04:06 +00:00
Ansgar Becker
d0afa94cfb Move file related actions to "File" menu, as suggested here: http://www.heidisql.com/forum.php?t=13097 2013-08-01 04:20:56 +00:00
Ansgar Becker
7b50c2b68b Handle ERegistryException's in TMainForm.FinishedQueryExecution by writing them to the SQL log. These seem to happen sporadically in a broken registry, or due to going from a query thread to the main thread again. Guess there is no real fix to that issue. See http://www.heidisql.com/forum.php?t=13088 2013-07-30 16:23:59 +00:00
Ansgar Becker
7de712b741 Fix unused FCSVNull value in efExcel grid export. 2013-07-30 05:30:23 +00:00
Ansgar Becker
8d191ef773 Provide edit box for custom NULL value, in grid export dialog. See http://www.heidisql.com/forum.php?t=13075 2013-07-30 05:21:36 +00:00
Ansgar Becker
de2cb3bcea Increase size of chunk to read from SQL dump from 5M to 20M, so we catch at least the file problems mentioned on http://www.heidisql.com/forum.php?t=13044 . 2013-07-28 05:45:02 +00:00
Ansgar Becker
c47796e4e1 Process messages in loop of query batch on run sql file dialog. Helps making this dialog responsive. 2013-07-28 05:15:08 +00:00
Ansgar Becker
70e79f51dc * Ensure ReadTextfileChunk reads a multiplier of the encoding's maximum byte count per char. See http://www.heidisql.com/forum.php?t=13044
* Log error message when TEncoding.Convert returns an empty TByte array.
* Documentation
2013-07-27 08:06:40 +00:00
Ansgar Becker
62927723d5 Turn unhandled exception in case of SQL errors into a popup dialog when running SQL files. See http://www.heidisql.com/forum.php?t=13044 2013-07-27 05:30:58 +00:00
Ansgar Becker
e81ded8238 editDatabaseTableFilter.OnChange is triggered in DBtree.AfterPaint, which is implicitly called a million times, when mouse hovers over the tree.
* Move that call from DBtree.AfterPaint to RefreshTree, and call it only when it required. Removes a big bunch of useless magic code execution.
* This way, I can wrap the code in editDatabaseTableFilter.OnChange in a BeginUpdate/EndUpdate block to postpone painting while looping over the nodes.
* Set focus to dbtree in FormShow, to prevent editDatabaseFilter from catching it
* Fixes issue #3293
2013-07-25 04:45:07 +00:00
Ansgar Becker
e509ea5437 Include application name in login prompt. Fixes issue #3180. 2013-07-25 03:59:42 +00:00
Ansgar Becker
5b3c8b92c7 Include schema name in ALTER TABLE query on table editor. 2013-07-24 04:18:49 +00:00
Ansgar Becker
ccc6e0b26a Use table name from helper TDBObject in TDBQuery.PrepareEditing, as TMySQLQuery.TableName does not return the VIEW's name when the VIEW contains aggregated columns. Fixes issue #3284. 2013-07-22 04:36:17 +00:00
Ansgar Becker
51c27f7a27 * Silence various compiler warnings about non initialized variables.
* Globally turn off platform warnings
2013-07-16 04:45:28 +00:00
Ansgar Becker
77df51ae5f Avoid using Format() on event body, as this causes AVs when it contains some % sign. See http://www.heidisql.com/forum.php?t=13010 2013-07-16 04:16:29 +00:00
Ansgar Becker
3007a5e860 Send column default value through UnescapeString and then to EscapeString, and let UnescapeString remove double backslashes. Fixes issue #3283. 2013-07-15 05:00:07 +00:00
Ansgar Becker
595bebb0e1 Use the right binary instead of decimal prefixes for bytes: KiB, MiB etc. And introduce unit for 2^60 bytes: Exbibyte. See http://de.wikipedia.org/wiki/Byte . 2013-07-15 03:49:49 +00:00
Ansgar Becker
344acd8d20 Limit test query to return one single row, not all rows. Fixes issue #3271. 2013-07-08 16:24:40 +00:00
Ansgar Becker
199228f5eb Issue #3240: Set focus on first "Options" tab by default. 2013-07-07 13:09:36 +00:00
Ansgar Becker
9a7a66d13c Add page control to trigger editor, and show CREATE code of triggers in separate tab. Fixes issue #3240. 2013-07-07 06:35:30 +00:00
Ansgar Becker
2d27ac46f7 Make charset query compatible to MSSQL 2000. Fixes issue #3269. 2013-07-07 05:51:49 +00:00
Ansgar Becker
5837689c71 No need to adjust vertical position of OK button on sorting popup. See http://www.heidisql.com/forum.php?t=12980 2013-07-07 04:27:11 +00:00
Ansgar Becker
483a94fb72 Adjust control dimensions in login form, so translations fit. See http://www.heidisql.com/forum.php?t=12979 2013-07-06 04:10:55 +00:00
Ansgar Becker
f4a82f4ec0 Use TDBQuery.DBObject.Database in TDBQuery.DatabaseName(), so for VIEWs we do not get the db from the table which is selected. Fixes issue #3266. 2013-07-05 04:37:06 +00:00
Ansgar Becker
05a48a3cb3 Issue #3212: Fall back to db..table if schema is unknown or server has no schema support. 2013-07-01 16:41:56 +00:00
Ansgar Becker
1660104d4d Support length of "max" in data types. Used in MSSQL. 2013-07-01 04:23:06 +00:00
Ansgar Becker
ca655582bd Issue #3212: Introduce TDBQuery.DBObject, to which we assign the selected object when getting the result for the data grid. Use that DBObject in TDBQuery.QuotedDbAndTableName and TDBQuery.PrepareEditing, where we need to know the schema of the object. 2013-06-30 14:10:51 +00:00
Ansgar Becker
63bd7947a5 Consider schema name when focusing tree node in TMainForm.SetActiveDBObject > TMainForm.FindDBObjectNode > TDBObject.IsSameAs 2013-06-30 14:05:33 +00:00
Ansgar Becker
4909931f83 Issue #3212: TDBQuery.SaveModifications makes use of TDBQuery.QuotedDbAndTableName, not TDBConnection.QuotedDbAndTableName. Make first one internally call the second one, so both do the same thing. 2013-06-29 04:28:37 +00:00
Ansgar Becker
c3d0932196 Do not always display NULL in a MSSQL grid field when value was edited. 2013-06-29 04:22:05 +00:00