Commit graph

82 commits

Author SHA1 Message Date
gambas
71288ea628 Fix some space typos. 2020-01-24 08:33:05 +01:00
gambas
53b0a9419e Remove a debugging message.
[GB.DB.SQLITE3]
* BUG: Remove a debugging message.
2019-09-09 13:22:06 +02:00
gambas
c0a3767002 Take newlines, tabs, and backticks into account when analyzing a table schema.
[GB.DB.SQLITE3]
* BUG: Take newlines, tabs, and backticks into account when analyzing a table schema.
2019-09-09 04:37:56 +02:00
gambas
234c2c690a [GB.DB]
* NEW: Add a driver API that handles debugging messages.
* NEW: Print the current date/time before any debugging message.

[GB.DB.MYSQL]
* NEW: Use the new driver API to print debugging messages.

[GB.DB.ODBC]
* NEW: Use the new driver API to print debugging messages.

[GB.DB.POSTGRESQL]
* NEW: Use the new driver API to print debugging messages.

[GB.DB.SQLITE2]
* NEW: Use the new driver API to print debugging messages.

[GB.DB.SQLITE3]
* NEW: Use the new driver API to print debugging messages.
2019-08-30 09:09:16 +02:00
gambas
c1bc03ccfa Multiple statements in the same query does not leak memory anymore.
[GB.DB.SQLITE3]
* BUG: Multiple statements in the same query does not leak memory anymore. In that case, the result of the last statement is returned.
2019-05-14 01:25:51 +02:00
gambas
4a033f5f06 Deleting a database should not crash anymore.
[GB.DB.SQLITE3]
* BUG: Deleting a database should not crash anymore.
2018-12-02 22:14:54 +01:00
gambas
3bd3cc2cf5 Deleting a database now also deletes the possible associated sqlite temporary files that may be present.
[GB.DB.SQLITE3]
* BUG: Deleting a database now also deletes the possible associated sqlite temporary files that may be present.
2018-11-14 23:47:40 +01:00
gambas
62bc061dc3 Integer computed fields are always 64 bits.
[GB.DB.SQLITE3]
* BUG: Computed fields are always 64 bits.
2018-03-30 16:57:00 +02:00
gambas
e07ac2e4f2 Connection.LastInsertId is a new property that returns the value of the serial field used in the last inserted row.
[GB.DB]
* NEW: Connection.LastInsertId is a new property that returns the value of the serial field used in the last inserted row. It is supported on MySQL, PostgreSQL and SQLite3 only.
* BUG: Connection.Handle is correctly declared now.

[GB.DB.MYSQL]
* NEW: Support for Connection.LastInsertId.

[GB.DB.ODBC]
* NEW: Raise an error if Connection.LastInsertId is used.

[GB.DB.POSTGRESQL]
* NEW: Support for Connection.LastInsertId.

[GB.DB.SQLITE2]
* NEW: Raise an error if Connection.LastInsertId is used.

[GB.DB.SQLITE3]
* NEW: Support for Connection.LastInsertId.
2018-03-20 16:05:33 +01:00
gambas
09a0573e61 Replace my old sourceforge mail address by the new one.
[CONFIGURATION]
Replace my old sourceforge mail address by the new one.
2018-02-12 02:53:46 +01:00
gambas
fcfb9ebccd Correctly detect the datatype of query columns that are expressions.
[GB.DB.SQLITE3]
* BUG: Correctly detect the datatype of query columns that are expressions.
2017-09-13 17:21:44 +02:00
Benoît Minisini
b225eba20f [CONFIGURATION]
* NEW: Update copyright year in all source files.


git-svn-id: svn://localhost/gambas/trunk@8056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-01-13 03:29:42 +00:00
Benoît Minisini
8d40c7b1e9 [GB.DB.SQLITE2]
* BUG: SQL strings including backslash characters are now correctly quoted.

[GB.DB.SQLITE3]
* BUG: SQL strings including backslash characters are now correctly quoted.


git-svn-id: svn://localhost/gambas/trunk@8006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-12-05 22:44:51 +00:00
Benoît Minisini
b9b46f3873 [CONFIGURATION]
* NEW: Add "-march=native" to the compilation flags. Maybe it could speed up then interpretrer a bit?

[DEVELOPMENT ENVIRONMENT]
* NEW: Connection editor: Update layout.
* NEW: Form editor: Clicking on the master selection selects the parent control.

[WEB SITE MAKER]
* NEW: Update for 3.8.4 version.

[GB.DB]
* BUG: Default values are now correctly taken into account by database templates.

[GB.DB.SQLITE3]
* BUG: Fix a possible uninitialized allocation of columns names.

[GB.UTIL]
* NEW: Class.Stat() class name argument now allows "../" in the name to search for classes in parent components.

[GB.WEB]
* NEW: Request.Language returns the main language requested by the HTTP client. This value can be directly assigned to System.Language.
* NEW: Session.Size returns the size of the session file in bytes.

[GB.WEB.FORM]
* NEW: Automatic management of favicon. The application favicon must be a file named "favicon.png" in the ".public" directory.
* NEW: The Align class for alignment constants.
* NEW: WebControl: Any control can raise a Message event now.
* NEW: The Message boxes now raise the "Message" event of the WebControl that opened the message box. If the event is not handled, then the event is raised by the WebForm of the control.
* NEW: The Select class for selection mode constants.
* BUG: WebComboBox: Define the default event.
* NEW: WebContainer: Indent is a new property that allows to add a left padding to the container.
* NEW: WebContainer: Extra children (those created after initialization) are now recreated with their event observer and event name, provided that the event observer is another WebControl.
* NEW: WebContainer: DeleteChildren() is a new method that deletes all container children.
* NEW: WebExpander: New container that implements an expander.
* NEW: WebForm: Teh application language now automatically switches to the language requested by the HTTP client.
* BUG: WebForm: Show() and ShowModal() method now raise the Open event.
* NEW: WebLabel: Add the Border property to the property list.
* NEW: WebLabel: Newlines in label text are automatically replaced by "<br>".
* NEW: WebTable: New control that implements an HTML table with automatic scrollbars. It gets its data through a Data event, and only displays the first hundred elements by default. A button allows to increase the number of displayed elements.
  The 'Mode' property allows to define the selection mode. When rows are selectable, an extra columns is added, with radion buttons on single selection mode, and checkboxes on multiple selection mode. The indexes of selected rows is returned by
  the 'Selection' property.
* BUG: Many fixes in the default stylesheet.


git-svn-id: svn://localhost/gambas/trunk@7536 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-12-27 18:16:32 +00:00
Benoît Minisini
bf3b070c70 [GB.DB.SQLITE3]
* BUG: Handle double quotes in table schemas, when detecting auto-increment
  fields.


git-svn-id: svn://localhost/gambas/trunk@7534 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-12-22 00:39:47 +00:00
Benoît Minisini
c60a05fc9c [GB.DB.SQLITE2]
* BUG: Listing databases without specifying the host does not crash 
  anymore.
  
[GB.DB.SQLITE3]
* BUG: Listing databases without specifying the host does not crash 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@7412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-16 11:52:39 +00:00
Benoît Minisini
03fd5166f1 [GB.DB.ODBC]
* NEW: Support for "forward only" query result.


git-svn-id: svn://localhost/gambas/trunk@7316 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-16 19:50:55 +00:00
Benoît Minisini
e1a17dfa09 [GB.DB.SQLITE3]
* BUG: Fix debug message printed when DB.Debug is set.


git-svn-id: svn://localhost/gambas/trunk@7292 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-08 13:40:19 +00:00
Benoît Minisini
a9e1b8eb48 [GB.DB.SQLITE3]
* BUG: Interpret unknown SQL datatypes as "String" instead of using 
  garbage.


git-svn-id: svn://localhost/gambas/trunk@7230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-20 13:36:17 +00:00
Benoît Minisini
2f3bccafe2 [GB.DB.SQLITE3]
* BUG: Forgot to add two files.


git-svn-id: svn://localhost/gambas/trunk@7017 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-30 00:06:57 +00:00
Benoît Minisini
5b5bb093e7 [GB.DB.SQLITE3]
* NEW: Rewrite the SQLite 3 driver. Get rid of all that brain-fucking C++ 
  code. Things should consume less memory, and may be a little bit faster.


git-svn-id: svn://localhost/gambas/trunk@7016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-29 23:22:11 +00:00
Benoît Minisini
cc36567d59 [GB.DB.SQLITE3]
* BUG: Detect primary key only with 'table_info' pragma. Consequently, 
  fields declared as "INTEGER" will not be incorreclty taken as a default 
  primary key anymore.


git-svn-id: svn://localhost/gambas/trunk@7003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-28 11:37:10 +00:00
Benoît Minisini
50fba09151 [CONFIGURATION]
* NEW: Compile and install gb.report2 component.

[DEVELOPMENT ENVIRONMENT]
* NEW: Add support for gb.report2 and gb.scanner.
* BUG: Correctly reset Application.Busy when opening a connection fails.
* BUG: Project property dialog: Fix management of required components.
* NEW: Project property dialog: Add management of excluded components.

[GB.DB]
* NEW: More detailed error message for SQLite connections.

[GB.DB.SQLITE3]
* NEW: More detailed error message for SQLite connections.


git-svn-id: svn://localhost/gambas/trunk@6892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-05 20:34:44 +00:00
Benoît Minisini
ccc9af006a [DEVELOPMENT ENVIRONMENT]
* NEW: Files including a '\r' character are not considered as binary files 
  anymore.

[GB.FORM]
* BUG: ColorPalette: Default background is now transparent.

[GB.DB.SQLITE3]
* BUG: Use the official standard quoting character.


git-svn-id: svn://localhost/gambas/trunk@6881 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-03 19:56:46 +00:00
Benoît Minisini
6b10bb831d [DEVELOPMENT ENVIRONMENT]
* NEW: Component/Library dependencies now are chosen from a new component 
  selection dialog.
* BUG: Database editor: Support for requests beginning with "WITH" or 
  "PRAGMA".

[WIKI CGI SCRIPT]
* NEW: New login panel.
* BUG: Fix creatable class detection.

[GB.FORM]
* BUG: IconPanel: The mouse wheel cannot select hidden tabs anymore.
* BUG: Wizard: Remove default padding for wizards having a border.

[GB.GUI.BASE]
* BUG: Border: Rewrite the painting routine. Simplify the clipping to help
  workaround Qt4 bugs.

[GB.DB.SQLITE]
* NEW: Mark the component as deprecated.

[GB.DB.SQLITE3]
* BUG: Support for PRAGMA requests. Start cleaning up the horrible C++ 
  classes.

[GB.QT4]
* BUG: Simplify the clipping management, because the old one was based on 
  the QPainterPath::intersected() Qt method that is buggy. Clipping mixed 
  with world transform matrix has still to be checked.


git-svn-id: svn://localhost/gambas/trunk@6815 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-06 22:44:35 +00:00
Benoît Minisini
97dea91d63 [GB.DB.SQLITE3]
* BUG: Remove an unused function.


git-svn-id: svn://localhost/gambas/trunk@6738 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-14 12:54:15 +00:00
Benoît Minisini
dbea7fb532 [GB.DB.SQLITE3]
* BUG: Support for common table expressions ("WITH ... SELECT ..." SQL 
  expressions) that appeared in 3.8.3 version.


git-svn-id: svn://localhost/gambas/trunk@6737 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-14 12:52:23 +00:00
Benoît Minisini
7fa6cd0569 [DEVELOPMENT ENVIRONMENT]
* NEW: Database editor: Support for the new Collation field property.

[EXAMPLES]
* BUG: PdfViewer: Some little fixes.

[GB.DB]
* NEW: Table.Fields.Add() method takes a new optional argument to define
  the field collation.
* NEW: Connection.Collations is a new property that returns the list of
  available collations as a String array.
* NEW: Field.Collation is a new property that returns the collation of a
  specific table field.

[GB.DB.MYSQL]
* NEW: Support for field collations.

[GB.DB.ODBC]
* NEW: Raise an error when trying to use collations. It is not supported.

[GB.DB.POSTGRESQL]
* NEW: Support for field collations.

[GB.DB.SQLITE2]
* NEW: Raise an error when trying to use collations. It is not supported.

[GB.DB.SQLITE3]
* NEW: Support for field collations.

[GB.QT4]
* BUG: ComboBox.Border property can be set even if it is in read-only mode.


git-svn-id: svn://localhost/gambas/trunk@6494 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-22 02:52:05 +00:00
Benoît Minisini
c8101e9c9d [GB.DB.SQLITE3]
* BUG: Fix crash due to last commit.


git-svn-id: svn://localhost/gambas/trunk@5977 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-03 14:36:19 +00:00
Benoît Minisini
0fd0ff44fe [GB.DB.SQLITE3]
* BUG: Correctly handle requests returning only one table name inside field 
  names.


git-svn-id: svn://localhost/gambas/trunk@5976 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-03 01:01:14 +00:00
Benoît Minisini
770042a260 [GB.SB.SQLITE3]
* BUG: Fix specific implementation of sqlite3_exec. Prevent some crashes 
  and make database creation work again (among other things).

[GB.WEB]
* BUG: CGI.Error() now correctly sends an UTF-8 HTML page.
* NEW: Response.EndOfLine is now taken into account if the response is 
  buffered.
* BUG: Buffered responses now use "Window" end-of-line by default instead 
  of "Unix" end-of-line, like unbuffered responses. *WARNING!* This bug fix 
  is not backward-compatible!


git-svn-id: svn://localhost/gambas/trunk@5975 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-26 16:00:23 +00:00
Benoît Minisini
7f40f6e756 [GB.DB.SQLITE3]
* BUG: Fix a crash introduced by the previous commit.


git-svn-id: svn://localhost/gambas/trunk@5969 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-23 02:07:43 +00:00
Benoît Minisini
12da187306 [GB.DB.SQLITE3]
* BUG: Use the sqlite3_column_decltype() API to get the real datatype 
  declaration of result fields, so that aliasing field does not change its
  resulting datatype.


git-svn-id: svn://localhost/gambas/trunk@5968 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-23 01:47:44 +00:00
Benoît Minisini
4f566fa199 [DEVELOPMENT ENVIRONMENT]
* BUG: Forgot the description of gb.opengl.sge.

[INTERPRETER]
* BUG: Propagate the GB_DATE_SERIAL structure changes to all components.


git-svn-id: svn://localhost/gambas/trunk@5879 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-13 12:39:56 +00:00
Tobias Boege
1952bfd047 [GB.DB.SQLITE3]
* BUG: VARYING CHARACTER() is taken as a text type now, not a boolean.



git-svn-id: svn://localhost/gambas/trunk@5813 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-28 12:16:39 +00:00
Benoît Minisini
c9ca5ab982 [CONFIGURATION]
* NEW: Update copyright year to 2013.

[GB.FORM]
* NEW: ImageView is a new control that allows to view an image inside a 
  scrolled view, at different zoom levels.
* BUG: FileProperties now works correctly if 'gb.desktop' is not used.
* NEW: The FileProperties preview tab now uses an ImageView control and has
  a toolbar to zoom the preview.
* BUG: Add the 'linux' and 'gnu' icon in the stock icon list.


git-svn-id: svn://localhost/gambas/trunk@5770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-03 15:38:01 +00:00
Benoît Minisini
b814f368c5 [GB.DB.FORM]
* NEW: DataControl can handle blob fields now.
* NEW: Highlight the byte under the mouse in blob editor.

[GB.FORM]
* NEW: ButtonBox.Pos is a new property that returns the cursor position of 
  its inner TextBox.


git-svn-id: svn://localhost/gambas/trunk@5741 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 18:16:55 +00:00
Benoît Minisini
793156546b [GB.DB.SQLITE3]
* BUG: Oops. Compiles again.


git-svn-id: svn://localhost/gambas/trunk@5548 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-12 11:30:37 +00:00
Benoît Minisini
0e3b2868e9 [GB.DB.SQLITE3]
* NEW: Connection.Timeout is now the maximum duration of request retries
  when the database is busy. By default, this is 120 seconds.


git-svn-id: svn://localhost/gambas/trunk@5547 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-12 11:29:54 +00:00
Benoît Minisini
0e2a43921f [GB.DB.SQLITE3]
* NEW: Retry busy request during 2 minutes max. instead of 30 seconds.


git-svn-id: svn://localhost/gambas/trunk@5546 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-12 10:45:58 +00:00
Benoît Minisini
d446e2453f [GB.DB.SQLITE3]
* BUG: Fix a crash introduced by the previous fix.


git-svn-id: svn://localhost/gambas/trunk@5545 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-12 01:45:54 +00:00
Benoît Minisini
a8915f2700 [GB.DB.SQLITE3]
* BUG: Handle SQLITE_BUSY error for all requests, even SELECT queries.


git-svn-id: svn://localhost/gambas/trunk@5544 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-12 01:33:38 +00:00
Benoît Minisini
8cc0ae62b4 [GB.DB.SQLITE3]
* NEW: Requests are automatically retried during 30 seconds if the database 
  is busy.


git-svn-id: svn://localhost/gambas/trunk@5530 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-30 19:43:31 +00:00
Benoît Minisini
00c989eb44 [GB.DB.SQLITE3]
* BUG: Quote index name and primary key fields.


git-svn-id: svn://localhost/gambas/trunk@5527 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-29 22:23:49 +00:00
Benoît Minisini
9a79fbede4 [DEVELOPMENT ENVIRONMENT]
* NEW: Use a smaller font for help viewer embeeded in automatic completion
  or signature popups.
* NEW: Revamp the option dialog.
* NEW: Add an option to install the Gambas font to the user font folder
  (~/.fonts). That font is a custom version of the Terminus 6x12 bitmap 
  font, with a bold version and more unicode characters.

[GB.GUI.BASE]
* OPT: Start optimizing the TreeView.Add() method which is too slow if a 
  single item has many children.


git-svn-id: svn://localhost/gambas/trunk@5346 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-21 00:20:00 +00:00
Benoît Minisini
8b73da0e5f [DEVELOPMENT ENVIRONMENT]
* NEW: In the CSV import dialog: When the import is finished, display the
  message tab and disable the "Import" button so that you don't click on it
  again unexpectedly. The button is enabled again when clicking on the
  first tab.

[GB.GUI.BASE]
* BUG: GridView: Using selection methods now takes the "Single" selection 
  mode into account and refresh the view as expected.


git-svn-id: svn://localhost/gambas/trunk@5343 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-20 10:23:27 +00:00
Benoît Minisini
aa2de9e3a4 [GB.DB.SQLITE3]
* BUG: Remove a debugging message.


git-svn-id: svn://localhost/gambas/trunk@5342 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-20 01:55:53 +00:00
Benoît Minisini
a7c3939e3d [DEVELOPMENT ENVIRONMENT]
* BUG: Be sure that the welcome dialog filter has the focus.

[WEBSITE MAKER]
* NEW: Update for 3.3.4.

[GB.DB]
* BUG: A failing table or user add does not leak memory anymore.
* BUG: Fix the removal method of the .SubCollection virtual class.

[GB.DB.SQLITE3]
* BUG: Detect serial fields correctly now.

[GB.QT4]
* BUG: Enusre that embedded windows emit their Open event before any Move, 
  Resize events...


git-svn-id: svn://localhost/gambas/trunk@5340 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-20 01:37:26 +00:00
Benoît Minisini
0026fb1489 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for compiler warnings.
* BUG: Fix all detected warnings.

[COMPILER]
* NEW: A new compiler option '-w' to let it emit warnings.
* NEW: Emit warnings for unused variables, arguments, functions and for 
  local symbols that override global symbols. Public symbols are of course 
  not taken into account.
* NEW: If an argument is surrounded by braces, no warning will be emitted
  if the argument is not used.

[GB.EVAL]
* NEW: OPTIONAL keyword is always followed by a space now when rewriting 
  Gambas code.


git-svn-id: svn://localhost/gambas/trunk@5122 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-04 07:29:39 +00:00
Benoît Minisini
43c441d15c [GB.DB.SQLITE3]
* BUG: 'INTEGER' fields are now assumed to be serial fields only if 
  'AUTOINCREMENT' has been specified too.

[GB.QT4]
* BUG: Fix declaration of Desktop.HasSystemTray property.


git-svn-id: svn://localhost/gambas/trunk@5083 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-27 02:57:50 +00:00