Dbm (discuter | contributions) m |
Dbm (discuter | contributions) (→SQLfast) |
||
Ligne 8 : | Ligne 8 : | ||
===SQLfast=== | ===SQLfast=== | ||
*'''Type''': High-level programming interface to relational databases | *'''Type''': High-level programming interface to relational databases | ||
− | *'''Description''': SQLfast is a scripting language based on SQL and an execution environment devoted to (1) database learning, (2) database application prototyping and (3) fast development of light database applications. SQLfast is an extension of the "SQL-Script Interpreter", thegoal of which was to fill the gap between single-query scripts and full VBA programs. An SQLfast script (or program) is not limited in size: it can include just one statement but also several millions of statements. It is developed in Python and relies on the SQLite-3 DBMS (interfaces with other DBMS are in preparation). Its main design objectives are to hide the complexity of database programming (connections, cursors, transactions, metadata management, etc.) and of graphical interactions, to provide very high level functions and to provide a secure user-friendly execution environment. The SQLfast language | + | *'''Description''': SQLfast is a scripting language based on SQL and an execution environment devoted to (1) database learning, (2) database application prototyping and (3) fast development of light database applications. SQLfast is an extension of the "SQL-Script Interpreter", thegoal of which was to fill the gap between single-query scripts and full VBA programs. An SQLfast script (or program) is not limited in size: it can include just one statement but also several millions of statements. It is developed in Python and relies on the SQLite-3 DBMS (interfaces with other DBMS are in preparation). Its main design objectives are to hide the complexity of database programming (connections, cursors, transactions, metadata management, etc.) and of graphical interactions, to provide very high level functions and to provide a secure user-friendly execution environment. The SQLfast language and environment comprise the following components: |
:*the SQL language | :*the SQL language | ||
:*variables in which data coming from a database, external files, computations ou GUI can be stored. Variables are typeless and have no size limit. A variable can contain data but also script fragments. The SQLfast ''macro generator'' can (recursively) replace variable references by their values. | :*variables in which data coming from a database, external files, computations ou GUI can be stored. Variables are typeless and have no size limit. A variable can contain data but also script fragments. The SQLfast ''macro generator'' can (recursively) replace variable references by their values. | ||
:*control structures (if-then-else, for-endfor, calling libraries, calling external applications, stop) | :*control structures (if-then-else, for-endfor, calling libraries, calling external applications, stop) | ||
:*reading/writing on external files | :*reading/writing on external files | ||
− | :*large object management (text, video, sound, BLOB) | + | :*large object management (text, video, sound, BLOB, geographic objects, charts, drawings) |
:*generation of complex formats (csv, xml, html, rtf, LateX, JSON, Key-value, SQL, tuples, etc.) These formats are defined by generic parameters. | :*generation of complex formats (csv, xml, html, rtf, LateX, JSON, Key-value, SQL, tuples, etc.) These formats are defined by generic parameters. | ||
− | :*import processors for standard formats (e.g., dbf, csv, Access) | + | :*import processors for standard formats (e.g., dbf, csv, Access, ESRI shapefiles) |
:*a rich extensible GUI: | :*a rich extensible GUI: | ||
− | ::*elementary boxes: messages, data entry forms, radio buttons, check buttons, text, images, drawing, charts, | + | ::*elementary boxes: messages, data entry forms, radio buttons, check buttons, text, images, drawing, charts, etc. |
::*composite dialogue boxes: made of an arbitrary number of elementary boxes | ::*composite dialogue boxes: made of an arbitrary number of elementary boxes | ||
::*extensible through Python external libraries | ::*extensible through Python external libraries | ||
Ligne 23 : | Ligne 23 : | ||
::*technical and functional subscripts, | ::*technical and functional subscripts, | ||
::*Python external applications and libraries, | ::*Python external applications and libraries, | ||
− | ::*external programs (web browsers, image processors, media processors, Office suite, etc.) | + | ::*external programs (web browsers, image processors, media processors, Office suite, ESRI shapefiles extractor, etc.) |
:*a builtin schema database (data dictionary) | :*a builtin schema database (data dictionary) | ||
− | :*reflexivity: an SQLfast script can generate | + | :*reflexivity: an SQLfast script can generate, examine and execute SQLfast scripts, including itself. |
− | *'''SQLfast tutorial'''. The SQLfast manual includes some representative applications: database creation and loading, database exploration, database migration, library management, interactive SQL interpreter, a photo album manager and browser, a statistics manager and visualizer, a bill of material manager, | + | *'''SQLfast tutorial'''. The SQLfast manual includes some representative applications: database creation and loading, database exploration, database migration, library management, interactive SQL interpreter, a photo album manager and browser, a statistics manager and visualizer, a bill of material manager, a GIS (based on ESRI shapefiles), text indexing and searching, analysis of an undocumented database, topological sorting of a relational schema, GALOIS lattice generation, automatic GUI generation, etc. |
*'''Requirements''': Python (portable but first version developed on Windows platforms) | *'''Requirements''': Python (portable but first version developed on Windows platforms) | ||
*'''Date''': 2013- | *'''Date''': 2013- | ||
Ligne 33 : | Ligne 33 : | ||
*'''References and resources''': | *'''References and resources''': | ||
:TBA | :TBA | ||
− | |||
===DB-MAIN=== | ===DB-MAIN=== |
<Retour à la page d'accueil / Back>
Sommaire |