Dbm (discuter | contributions) |
Dbm (discuter | contributions) |
||
Ligne 10 : | Ligne 10 : | ||
*'''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", the goal 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: | *'''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", the goal 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 of any kind 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, pause) |
:*reading/writing on external files | :*reading/writing on external files | ||
:*large object management (text, video, sound, BLOB, geographic objects, charts, drawings) | :*large object management (text, video, sound, BLOB, geographic objects, charts, drawings) | ||
Ligne 21 : | Ligne 21 : | ||
::*extensible through Python external libraries | ::*extensible through Python external libraries | ||
:*extensibility mechanisms: | :*extensibility mechanisms: | ||
− | ::*technical | + | ::*technical subscripts (e.g., parameters setting), |
− | ::*Python external | + | ::*functional subscripts (e.g., data loading, data checking, report generation), |
− | ::*external programs (web browsers, image processors, media processors, Office suite | + | ::*Python external libraries (e.g., string manipulation, file management, geometric algorithms), |
+ | ::*Python external applications (e.g., data import, interactive data conversion, complex dialogues), | ||
+ | ::*external programs (web browsers, image processors, media processors, Office suite, etc.) | ||
:*a builtin schema database (data dictionary) | :*a builtin schema database (data dictionary) | ||
:*reflexivity: an SQLfast script can generate, examine and execute SQLfast scripts, including itself. | :*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, 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. | + | *'''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, automated SQL trainer, etc. |
− | *'''Requirements''': Python ( | + | *'''Requirements''': Python 2.7 (first version developed for Windows platforms) |
*'''Date''': 2013- | *'''Date''': 2013- | ||
*'''Status''': ongoing | *'''Status''': ongoing |
<Retour à la page d'accueil / Back>
Sommaire |