Dbm (discuter | contributions) m |
Dbm (discuter | contributions) m (→SQLfast) |
||
Ligne 74 : | Ligne 74 : | ||
**Many chapters of the tutorial are already available, but in a draft version only. They are continuously updated, so that it is recommended to check them regularly to get their last versions. | **Many chapters of the tutorial are already available, but in a draft version only. They are continuously updated, so that it is recommended to check them regularly to get their last versions. | ||
− | |||
− | :*SQLfast Tutorial - <b>1. Introduction</b>, draft version, October 8, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto01-Introduction.pdf [full text]] | + | :*SQLfast Tutorial - <b>1st pages</b> and <b>Table of contents</b>, draft version, 2014. obsolete, to be rewritten [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto00-1st-pages.pdf [full text]] |
+ | |||
+ | |||
+ | <center>'''Part I - INTRODUCTION TO DATABASE PROGRAMMING THROUGH SQLfast'''</center> | ||
+ | |||
+ | ====Part I - INTRODUCTION TO DATABASE PROGRAMMING THROUGH SQLfast'''==== | ||
+ | |||
+ | :*SQLfast Tutorial - <b>1. Introduction</b>, draft version, October 8, 2014. rewriting in progress [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto01-Introduction.pdf [full text]] | ||
::''Chapter contents'': Description of SQLfast. How to start. Example database. | ::''Chapter contents'': Description of SQLfast. How to start. Example database. | ||
Ligne 82 : | Ligne 88 : | ||
::''Chapter contents'': First scripts. Opening a database. The <tt>select</tt> query. Using variables. Asking the user to enter data. Interactive scripts. | ::''Chapter contents'': First scripts. Opening a database. The <tt>select</tt> query. Using variables. Asking the user to enter data. Interactive scripts. | ||
::''Statements and functions'': <tt>openDB</tt>, <tt>closeDB</tt>, <tt>select</tt>, <tt>set</tt>, <tt>write</tt>, <tt>ask</tt>. | ::''Statements and functions'': <tt>openDB</tt>, <tt>closeDB</tt>, <tt>select</tt>, <tt>set</tt>, <tt>write</tt>, <tt>ask</tt>. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>3. Getting started with SQL</b>, writing in progress. | ||
:*SQLfast Tutorial - <b>4. Creating a database</b>, draft version, June 2, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto04-Creating-DB.pdf [full text]] | :*SQLfast Tutorial - <b>4. Creating a database</b>, draft version, June 2, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto04-Creating-DB.pdf [full text]] | ||
Ligne 138 : | Ligne 146 : | ||
::''Chapter contents'': XML output format. HTML output format. Tuple output format. RTF output format. SQL output format. LateX output format. JSON output format. | ::''Chapter contents'': XML output format. HTML output format. Tuple output format. RTF output format. SQL output format. LateX output format. JSON output format. | ||
− | :*SQLfast Tutorial - <b>18. Importing data (CVS)</b>, draft version, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto18-Importing-data-(CSV).pdf [full text]] | + | :*SQLfast Tutorial - <b>18. Importing data (CVS)</b>, draft version, February 13, 2014. rewriting in progress. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto18-Importing-data-(CSV).pdf [full text]] |
− | :*SQLfast Tutorial - <b>19. Importing data (DBF)</b>, draft version, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto19-Importing-data-(DBF).pdf [full text]] | + | :*SQLfast Tutorial - <b>19. Importing data (DBF)</b>, draft version, February 13, 2014. rewriting in progress. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto19-Importing-data-(DBF).pdf [full text]] |
− | :*SQLfast Tutorial - <b>20. Importing data (MS Access)</b> | + | :*SQLfast Tutorial - <b>20. Importing data (MS Access)</b>, February 13, 2014. writing in progress. |
− | :*SQLfast Tutorial - <b>22. Extending SQLfast</b>, draft version, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto22-Extending-SQLfast.pdf [full text]] | + | :*SQLfast Tutorial - <b>22. Extending SQLfast</b>, draft version, February 13, 2014. rewriting in progress. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto22-Extending-SQLfast.pdf [full text]] |
::''Chapter contents'': How to extend the functionalities of SQLfast. Service scripts. External applications. Function libraries. The LStr library. The LFile library. The LGeo library. External programs. Extending the SQLfast language. The SQLfast compiler-loader. Adding user-defined functions. | ::''Chapter contents'': How to extend the functionalities of SQLfast. Service scripts. External applications. Function libraries. The LStr library. The LFile library. The LGeo library. External programs. Extending the SQLfast language. The SQLfast compiler-loader. Adding user-defined functions. | ||
::''Statements and functions'': <tt>execSQL</tt>, <tt>execApp</tt>, <tt>function</tt>, <tt>execProg</tt>. | ::''Statements and functions'': <tt>execSQL</tt>, <tt>execApp</tt>, <tt>function</tt>, <tt>execProg</tt>. | ||
− | :*SQLfast Tutorial - <b>23. Active databases</b>, | + | :*SQLfast Tutorial - <b>23. Active databases</b>, writing in progress. [full text] |
::''Chapter contents'': What is an active database? Introducing dynamic behaviour in the database. The SQL primitives: check, SQL procedures and triggers. Data integrity control. Data update propagation. Redundancy management. A real size application. | ::''Chapter contents'': What is an active database? Introducing dynamic behaviour in the database. The SQL primitives: check, SQL procedures and triggers. Data integrity control. Data update propagation. Redundancy management. A real size application. | ||
::''Statements and functions'': <tt>check predicate</tt>, <tt>trigger</tt>, <tt>recursive trigger</tt>. | ::''Statements and functions'': <tt>check predicate</tt>, <tt>trigger</tt>, <tt>recursive trigger</tt>. | ||
Ligne 160 : | Ligne 168 : | ||
::''Statements and functions'': <tt>dictionary</tt>, <tt>createDictionary</tt>, <tt>deleteDictionary</tt>, <tt>SQL group_concat()</tt>. | ::''Statements and functions'': <tt>dictionary</tt>, <tt>createDictionary</tt>, <tt>deleteDictionary</tt>, <tt>SQL group_concat()</tt>. | ||
− | :*SQLfast Tutorial - <b>26. Metadata - Inception</b>, | + | :*SQLfast Tutorial - <b>26. Metadata - Inception</b>, writing in progress. |
::''Chapter contents'': Exploring an unknown database. Dictionary-driven dialogues. Dictionary-driven data modification. | ::''Chapter contents'': Exploring an unknown database. Dictionary-driven dialogues. Dictionary-driven data modification. | ||
::''Statements and functions'': <tt>askInsert</tt>, <tt>askUpdate</tt>. | ::''Statements and functions'': <tt>askInsert</tt>, <tt>askUpdate</tt>. | ||
− | :*SQLfast Tutorial - <b>28. SQLdraw</b>, | + | :*SQLfast Tutorial - <b>28. SQLdraw</b>, writing in progress. |
::''Chapter contents'': What is SQLdraw? The SQLdraw concepts and language. The SQLdraw editor. The SQLdraw viewer. | ::''Chapter contents'': What is SQLdraw? The SQLdraw concepts and language. The SQLdraw editor. The SQLdraw viewer. | ||
− | ::''Statements and functions'': <tt>showDrawing | + | ::''Statements and functions'': <tt>showDrawing</tt>. |
− | :*SQLfast Tutorial - <b>29. Aid to SQLfast development</b>, | + | :*SQLfast Tutorial - <b>29. Aid to SQLfast development</b>, writing in progress. |
+ | |||
+ | |||
+ | <center>'''Part II - PROBLEM SOLVING WITH DATABASES'''</center> | ||
:*SQLfast Tutorial - <font color="blue"><b>31. From data bulk loading to database book writing</b>, draft version, '''<i>January 10, 2016.</i></font>[http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto31-Topo-sort.pdf [full text]] | :*SQLfast Tutorial - <font color="blue"><b>31. From data bulk loading to database book writing</b>, draft version, '''<i>January 10, 2016.</i></font>[http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto31-Topo-sort.pdf [full text]] | ||
Ligne 180 : | Ligne 191 : | ||
::''Statements and functions'': <tt>askCombo</tt>. | ::''Statements and functions'': <tt>askCombo</tt>. | ||
− | :*SQLfast Tutorial - <b>34. Geographic information systems</b>, | + | :*SQLfast Tutorial - <b>34. Geographic information systems</b>, writing in progress. |
:*SQLfast Tutorial - <b>35. Kings of France - Part 1</b>, draft version, October 1, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto35-Kings-of-France.pdf [full text]] | :*SQLfast Tutorial - <b>35. Kings of France - Part 1</b>, draft version, October 1, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-Tuto35-Kings-of-France.pdf [full text]] | ||
Ligne 189 : | Ligne 200 : | ||
::''Statements and functions'': <tt>SQL with</tt>, <tt>SQLdraw</tt>. | ::''Statements and functions'': <tt>SQL with</tt>, <tt>SQLdraw</tt>. | ||
− | :*SQLfast Tutorial - <b>37. Text processing</b>, | + | :*SQLfast Tutorial - <b>37. Text processing</b>, writing in progress |
− | :*SQLfast Tutorial - <b>38. Temporal databases</b>, | + | :*SQLfast Tutorial - <b>38. Temporal databases</b>, writing in progress. |
::''Chapter contents'': Temporal data. Transaction ''vs'' valid times. Historical data representation. Management of historical data. Querying historical data. Temporal join. Declarative temporal projection. Efficient temporal projection. Temporal grouping. | ::''Chapter contents'': Temporal data. Transaction ''vs'' valid times. Historical data representation. Management of historical data. Querying historical data. Temporal join. Declarative temporal projection. Efficient temporal projection. Temporal grouping. | ||
::''Statements and functions'': <tt>trigger</tt>. | ::''Statements and functions'': <tt>trigger</tt>. | ||
Ligne 208 : | Ligne 219 : | ||
::''Chapter contents'': Principles of SQL code injection. Metadata stealing. System intrusion. Unsecure GUI. Unsecure SQL statement processing. SQL injection countermeasures. | ::''Chapter contents'': Principles of SQL code injection. Metadata stealing. System intrusion. Unsecure GUI. Unsecure SQL statement processing. SQL injection countermeasures. | ||
− | :*SQLfast Tutorial - <b>43. Bill of material</b>, | + | :*SQLfast Tutorial - <b>43. Bill of material</b>, rewriting in progress. |
::''Chapter contents'': The BOM management system. Representing a BOM. Acyclic graph processing. Recursive queries. Computing the part list of a part. Computing the closure of a BOM. Computing the cost of a part. Updating a BOM. | ::''Chapter contents'': The BOM management system. Representing a BOM. Acyclic graph processing. Recursive queries. Computing the part list of a part. Computing the closure of a BOM. Computing the cost of a part. Updating a BOM. | ||
::''Statements and functions'': <tt>SQL with</tt>, <tt>create trigger</tt>. | ::''Statements and functions'': <tt>SQL with</tt>, <tt>create trigger</tt>. | ||
Ligne 216 : | Ligne 227 : | ||
::''Statements and functions'': <tt>SQL with</tt>, <tt>askCombo</tt>. | ::''Statements and functions'': <tt>SQL with</tt>, <tt>askCombo</tt>. | ||
− | :*SQLfast Tutorial - <b>45. Managing a small library</b>, | + | :*SQLfast Tutorial - <b>45. Managing a small library</b>, writing in progress. |
::''Chapter contents'': Interactive application. Task analysis. Application architecture. Data management functions. File management functions. Data integrity. Graphical user interface. | ::''Chapter contents'': Interactive application. Task analysis. Application architecture. Data management functions. File management functions. Data integrity. Graphical user interface. | ||
Ligne 223 : | Ligne 234 : | ||
::''Statements and functions'': <tt>random()</tt>, <tt>cross join</tt>, <tt>fastExec</tt>. | ::''Statements and functions'': <tt>random()</tt>, <tt>cross join</tt>, <tt>fastExec</tt>. | ||
− | :*SQLfast Tutorial - <b>47. Database Performance</b>, | + | :*SQLfast Tutorial - <b>47. Database Performance</b>, writing in progress. |
::''Chapter contents'': Database performance tuning. Index types. The roles of cache memories. Performance evaluation pitfalls. Optimizing select queries. Optimizing data modification queries. Optimizing group by and order by queries. | ::''Chapter contents'': Database performance tuning. Index types. The roles of cache memories. Performance evaluation pitfalls. Optimizing select queries. Optimizing data modification queries. Optimizing group by and order by queries. | ||
::''Statements and functions'': <tt>create index</tt>. | ::''Statements and functions'': <tt>create index</tt>. | ||
− | :*SQLfast Tutorial - <b>48. Directory management</b>, | + | :*SQLfast Tutorial - <b>48. Directory management</b>, writing in progress. |
::''Chapter contents'': File and directory management. File and directory hierarchy representation. Tree processing. Recursive queries. Hierarchy evolution. Hierarchy comparison. Searching for file clones. | ::''Chapter contents'': File and directory management. File and directory hierarchy representation. Tree processing. Recursive queries. Hierarchy evolution. Hierarchy comparison. Searching for file clones. | ||
::''Statements and functions'': <tt>selectDirectory</tt>, <tt>dirFileNamesAll</tt>, <tt>LFile:splitRealPath</tt>, <tt>SQL with</tt>. | ::''Statements and functions'': <tt>selectDirectory</tt>, <tt>dirFileNamesAll</tt>, <tt>LFile:splitRealPath</tt>, <tt>SQL with</tt>. | ||
− | :*SQLfast Tutorial - <font color="blue"><b>Appendix 1. A basket of examples</b>, draft version, April 18, 2016. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-TutoA1-Basket-of-examples.pdf [full text]]</font> | + | :*SQLfast Tutorial - <b>49. Directory management</b>, writing in progress. |
+ | |||
+ | :*SQLfast Tutorial - <b>50. Lies, damned lies, and statistics</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>51. <i>title pending</i> (Formal Concept Analysis)</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>52. Business process modeling - Building a workflow engine</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>53. Database prototyping</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>54. Data cleaning</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <b>55. Database reverse engineering</b>, writing in progress. | ||
+ | |||
+ | :*SQLfast Tutorial - <font color="blue"><b>Appendix 1. A basket of examples</b>, draft version, writing in progress. April 18, 2016. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-TutoA1-Basket-of-examples.pdf [full text]]</font> | ||
::''Chapter contents'': Comparing the contents of two tables. Displaying the contents of two tables in a single table. Dumping a database in XML format. Data-driven multiple aggregations. Data mining. Paged reading of data. Managing a file of parameters. Image selection tool. Simulating arrays in SQLfast. Smart writing of data table. Checking functional dependencies in a table. Managing a photo album. A picture viewer. Collecting web statistics. Computing missing data in incomplete statistical series. The Travelling Salesman problem. ''and more ...'' | ::''Chapter contents'': Comparing the contents of two tables. Displaying the contents of two tables in a single table. Dumping a database in XML format. Data-driven multiple aggregations. Data mining. Paged reading of data. Managing a file of parameters. Image selection tool. Simulating arrays in SQLfast. Smart writing of data table. Checking functional dependencies in a table. Managing a photo album. A picture viewer. Collecting web statistics. Computing missing data in incomplete statistical series. The Travelling Salesman problem. ''and more ...'' | ||
Ligne 242 : | Ligne 267 : | ||
:*SQLfast Tutorial - <b>Appendix 8. SQLite transactions</b>, draft version, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-TutoA8-SQLite-Transactions.pdf [full text]] | :*SQLfast Tutorial - <b>Appendix 8. SQLite transactions</b>, draft version, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-TutoA8-SQLite-Transactions.pdf [full text]] | ||
− | :*SQLfast Tutorial - <b>Appendix 9. SQLfast internals</b>, | + | :*SQLfast Tutorial - <b>Appendix 9. SQLfast internals</b>, obsolete, February 13, 2014. [http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/SQLfast/SQLfast-TutoA9-SQLfast-implementation.pdf [full text]] |
===DB-MAIN=== | ===DB-MAIN=== |
<Retour à la page d'accueil / Back>
Sommaire |