Dbm (discuter | contributions) |
Dbm (discuter | contributions) |
||
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 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. The SQLfast language comprises 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"). 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, to provide a secure execution environment. |
+ | The SQLfast language comprises 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 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 | ||
− | :*generation of complex formats (csv, xml, html, rtf, LateX, JSON, Key-value, SQL, tuples, etc. These formats are defined by generic parameters. | + | :*large object management (text, video, sound, BLOB) |
+ | :*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) | ||
:*a rich extensible GUI: data entry forms, radio buttons, check buttons, messages, text, images, drawing, charts, composite dialogue boxes, etc. | :*a rich extensible GUI: data entry forms, radio buttons, check buttons, messages, text, images, drawing, charts, composite dialogue boxes, etc. | ||
− | :*extensibility mechanisms: technical and functional subscripts, Python external applications and libraries, external programs (web browsers, image processors, media processors, Office suite, etc.) | + | :*extensibility mechanisms: technical and functional subscripts, Python external applications and libraries, external programs (web browsers, image processors, media processors, Office suite, etc.) |
− | + | :*reflexivity: an SQLfast script can generate an SQLfast script, examine it and execute it. | |
+ | :The SQLfast tutorial 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, array simulation, 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- |
<Retour à la page d'accueil / Back>
Sommaire |
The SQLfast language comprises the following components: