Dbm (discuter | contributions) (→ENGLISH VERSION) |
Dbm (discuter | contributions) (→ENGLISH VERSION) |
||
Ligne 252 : | Ligne 252 : | ||
</td></tr></table> | </td></tr></table> | ||
− | There are two main sources of documentation describing SQLfast software and languages: | + | There are two main sources of documentation describing the SQLfast software and languages: |
− | the documents provided by the Help function of the software (Help button at the Basic Level and Help menu at the Expert Level) | + | the documents provided by the integrated '''Help''' function of the software ('''Help''' button at the '''Basic''' Level and '''Help''' menu at the '''Expert''' Level) and the '''SQLfast e-book tutorial'''. |
*'''3.1 Help button at the "Basic" Level'''. | *'''3.1 Help button at the "Basic" Level'''. | ||
− | :This button opens a short menu with three items, in addition to the Welcome screen (About SQLfast). | + | :This button opens a short menu with three items, in addition to the ''Welcome'' screen ('''About SQLfast'''). |
<!-- --> | <!-- --> | ||
:*'''Help > Getting started'''. This document describes the basic graphical environment and the main functions of SQLfast. It has also been translated into an independent pdf document (see above). | :*'''Help > Getting started'''. This document describes the basic graphical environment and the main functions of SQLfast. It has also been translated into an independent pdf document (see above). | ||
Ligne 265 : | Ligne 265 : | ||
*'''3.2 Help menu at the "Expert" Level'''. | *'''3.2 Help menu at the "Expert" Level'''. | ||
− | :This button opens a menu with four items, in addition to the Welcome screen (About SQLfast). | + | :This button opens a menu with four items, in addition to the ''Welcome'' screen ('''About SQLfast'''). |
<!-- --> | <!-- --> | ||
:*'''Help > Getting started'''. This document describes the expert graphical environment and the main functions of SQLfast. | :*'''Help > Getting started'''. This document describes the expert graphical environment and the main functions of SQLfast. | ||
<!-- --> | <!-- --> | ||
− | :*'''Help > Survival guide'''. A collection of about fifty commented SQLfast programming models, from simple data querying to code generation based on metadata. Can be used, assembled and customized to develop real | + | :*'''Help > Survival guide'''. A collection of about fifty commented SQLfast programming models, from simple data querying to code generation based on metadata. Can be used, assembled and customized to develop real applications. It has also been translated into an independent pdf document ([https://staff.info.unamur.be/dbm/Documents/Ouvrages/Dunod-2015/SQLfast/Survival_Guide.pdf '''Survival_guide_FR''']) |
<!-- --> | <!-- --> | ||
:*'''Help > SQLfast references'''. Portfolio of reference documents about the SQLfast software and languages. | :*'''Help > SQLfast references'''. Portfolio of reference documents about the SQLfast software and languages. | ||
Ligne 275 : | Ligne 275 : | ||
::*'''SQLfast environment'''. Detailed technical description of the windows of SQLfast and of their functions at the Expert Level. | ::*'''SQLfast environment'''. Detailed technical description of the windows of SQLfast and of their functions at the Expert Level. | ||
<!-- --> | <!-- --> | ||
− | ::*'''SQLfast commands'''. Dictionary of the SQLfast statements, functions and parameters. This | + | ::*'''SQLfast commands'''. Dictionary of the SQLfast statements, functions and parameters. This integrated document is a summary of ''Dictionary of SQLfast commands and parameters'' ([https://staff.info.unamur.be/dbm/Documents/Tutorials/SQLfast/SQLfast-Commands.pdf '''SQLfast commands''']) |
<!-- --> | <!-- --> | ||
::*'''SQLtuto language'''. Description of the tutorial language. This language allows users to modify and develop help documents and tutorials for the SQLfast environment. | ::*'''SQLtuto language'''. Description of the tutorial language. This language allows users to modify and develop help documents and tutorials for the SQLfast environment. | ||
<!-- --> | <!-- --> | ||
− | :*'''Help > Tutorials'''. Portfolio of tutorials about the SQLfast language. | + | :*'''Help > Tutorials'''. Portfolio of tutorials about the SQLfast language. These lessons are derived from the ''SQLfast e-book tutorial''. |
− | *'''3.3 The SQLfast tutorial'''. This independent e-book is a tutorial on the SQLfast language and on database programming. It also includes application chapters that describe complete SQLfast | + | *'''3.3 The SQLfast e-book tutorial'''. This independent e-book is a tutorial on the SQLfast language and on database programming. It also includes application chapters that describe complete SQLfast applications. It is available [[LIBD:Outils#SQLfast|'''[here]''']]. |
Most '''Help''' documents are available in ''English'' and in ''French''. The tutorial documents are distributed in directory ''Lev0_Tutorials'' for the '''Basic''' Level and in directory ''Lev1_Tutorials'' for the '''Expert''' Level. | Most '''Help''' documents are available in ''English'' and in ''French''. The tutorial documents are distributed in directory ''Lev0_Tutorials'' for the '''Basic''' Level and in directory ''Lev1_Tutorials'' for the '''Expert''' Level. |
1. Je suis pressé ! |
Téléchargements
Versions de SQLfast
2. Qu'est-ce que SQLfast ? |
Le nom SQLfast désigne, d'une part, un langage permettant de rédiger des scripts de manipulation de bases de données relationnelles, et d'autre part, un logiciel permettant à des utilisateurs tant novices qu'experts de développer, tester et exécuter des scripts SQLfast de toute nature et de complexité quelconque. Langage et logiciel SQLfast ont été conçus pour couvrir une large gamme de scénarios d'utilisation, depuis l'apprentissage (autonome ou supervisé) des bases de données et du langage SQL jusqu'au développement et à l'exploitation d'applications complexes.
Le langage SQLfast est une extension de SQL. Ses instructions comprennent, d'une part, les commandes SQL et d'autre part, des instructions d'échange de données avec l'utilisateur (boîtes de dialogue), des variables, des instructions de contrôle (if, for, while, procédures), des métadonnées ainsi que de riches bibliothèques de fonctions et d'interaction avec l'environnement. Un script peut être constitué d'une seule requête SQL mais des scripts complexes, tels que des gestionnaires de bibliothèques ou des générateurs de prototypes, peuvent comporter plusieurs milliers d'instructions.
Le langage SQLfast a été conçu dans un objectif de simplicité d'utilisation. A l'instar de son noyau, SQL, il offre une courbe d'apprentissage linéaire : un problème simple sera résolu en quelques lignes, dont la rédaction ne nécessite que quelques minutes d'apprentissage. Les arcanes des interactions avec les données (BD, fichiers, images) ainsi que ceux des dialogues avec l'utilisateur sont entièrement cachés car gérés par le moteur SQLfast. La consultation des données d'une table nécessite 1 instruction en SQLfast (select * from CLIENT) mais près de 40 instructions en Java/JDBC. De même, une boîte de saisie de données constituée de trois champs est définie en 1 instruction SQLfast et exige plus de 100 instructions Python/Tkinter. Ou encore, le téléchargement d'un fichier est obtenu par 1 instruction SQLfast mais par près de 100 instructions Python/urllib2. Un document (Code_Comparison_FR.pdf) compare le code SQLfast avec le code standard dans ces trois cas de figure.
SQLfast est un logiciel dit portable, qui ne nécessite pas d'installation à proprement parler et qui ne modifie pas les paramètres du système sur lequel il fonctionne. Il peut notamment être installé, avec une collection de bases de données et de scripts, sur une clé USB transportable d'une machine à l'autre.
Le logiciel SQLfast offre une interface graphique conviviale permettant aux utilisateurs novices d'apprendre et d'expérimenter le développement de requêtes SQL et plus généralement de scripts SQLfast. Il dispose d'une fonction d'aide programmable permettant la rédaction et l'intégration au logiciel de tutoriels personnalisés. Son interface se décline en trois variantes :
Le logiciel SQLfast est économe en ressources. Avec tous ses composants (y compris les bibliothèques graphiques, le SGBD, les fichiers d'aide, des bases de données de test, un jeu de scripts et des tutoriels), il n'occupe guère plus de 15 Mo sur disque et tourne sans accroc sur des machines de faible puissance. Il est cependant évident que l'exploitation intensive de grandes bases de données nécessitera des ressources plus importantes.
SQLfast est développé en Python 2.7, mais son utilisation ne nécessite pas la présence de l'environnement Python. Il inclut le SGBD SQLite 3 et la bibliothèque graphique standard Tkinter. La version actuellement disponible fonctionne sous MS Windows.
Des versions tournant sous OS X et Linux ont été testées avec succès mais ne sont pas diffusées pour l'instant. De même, des versions basées sur MySQL et MS Access existent mais ne sont pas encore disponibles.
3. Installation et démarrage |
Le package d'installation comprend le logiciel SQLfast, y compris sa documentation et les premiers tutoriels.
3. Documentation sur SQLfast |
Il existe deux sources principales de documentation concernant l'outil et les langages SQLfast : la documentation intégrée accessible par la fonction d'aide (Help) du logiciel et le tutoriel de SQLfast.
Les documents d'aide de SQLfast sont disponibles en français et en anglais (du moins le seront-ils lorsque leur rédaction et leur traduction seront terminées). Les documents en français sont localisés dans le répertoire SQLfast/SQLfastHelp_FR.
Les tutoriels intégrés sont localisés dans le sous-répertoire Lev0_Tutorials pour le mode Basic et Lev1_Tutorials pour le mode Expert au sein du répertoire SQLfast/SQLfastHelp_FR. Ces documents peuvent être modifiés et complétés par l'utilisateur en fonction de ses besoins.
1. Fast track |
Download
SQLfast versions
2. What is SQLfast ? |
The name SQLfast denotes, on the one hand, a programming language allowing the rapid and easy development of interactive, data-centered scripts, and, on the other hand, a graphical, user-friendly software to develop, test and run SQLfast scripts. The language and its environment have been designed to encompass a wide range of usage scenarios, from database self-study by beginners to the development and exploitation of complex database applications such as library management and prototype generation. They target both novice and professional users
The core of the SQLfast language is SQL, the universal language for database definition and manipulation. Any sequence of SQL statements is a valid SQLfast script, whatever its length. SQLfast also comprises statements that provide for graphical user interaction, text generation, file manipulation, decision, iteration, web access, metadata processing and much more.
The main design goal of the SQLfast language is simplicity. Just like its kernel, SQL, it exhibits a smooth learning curve: a simple problem can be solved by a simple script of 2-3 statements, the writing of which requires a few minutes learning. The complexity of data interaction (DB, web, files, images, etc.) and that of GUI are fully hidden from the script writer. For instance, extracting and formatting data from the database requires about 40 Java/JDBC statements but only one SQLfast statement. A 3-field data entry dialogue box is built through more than 100 Python/Tkinter statements but requires one SQLfast statement only. In the same way, downloading a file from the web needs one SQLfast statement, against more than 100 Python/urllib2 statements. This document compares the SQLfast code for these three examples with their equivalent standard code.
One of the distinctive features of SQLfast is its tutorial engine. A tutorial (or help document) is a hypertext written in the SQLtuto language (think of it as a nano-HTML). This document is active, in that, any code fragment (SQL queries, SQLfast scripts, GUI, calling a procedure) can be executed from within the tutorial in which it appears. Developing complex, illustrated and active course systems is therefore quite easy.
The SQLfast software is portable and its installation cannot be simpler: folder SQLfast extracted from the .zip or .rar archives, that contain its complete distribution, can be copied anywhere and is ready to run. In addition, SQLfast does not modify any system parameter.
To address the large range of usage it is intended for, SQLfast offers three interfaces:
The SQLfast software is both small (15 MB) and self-contained. Its standard distribution includes a graphical library, a RDBMS, a large, extendible, function library, sample databases, help files, tutorials and a large portfolio of example scripts, ranging from two statement elementary scripts to one thousand statements interactive DB interface generator.
SQLfast has been developed in Python 2.7. The current distribution includes SQLite 3 (last stable version), which offers a rich version of SQL2/SQL3 (including recursive CTE and triggers) and GUI library Tkinter. It has been compiled for MS Windows (from winXP to win10). OS X, Linux, MS Access and MySQL versions have been evaluated with success but they are not available yet.
3. Installing SQLfast and Getting started |
The distribution package comprises the SQLfast software (including tutorials and sample databases and scripts) and the installation guide.
4. SQLfast Documentation |
There are two main sources of documentation describing the SQLfast software and languages: the documents provided by the integrated Help function of the software (Help button at the Basic Level and Help menu at the Expert Level) and the SQLfast e-book tutorial.
Most Help documents are available in English and in French. The tutorial documents are distributed in directory Lev0_Tutorials for the Basic Level and in directory Lev1_Tutorials for the Expert Level.