
Contents of the MultiBase training course
- Databases:
— Overview.
— Types.
— Diferences.
- Relational databases: Overview.
- Fourth Generation Languages:
— May be a real language.
— Development time, maintenance and documentation.
— Structures, actions and non procedural statements.
— Embedded 3GL.
— Portability.
— Coherent relation between non procedural and procedural statements.
— Embedded SQL.
- MultiBase: Relational database with 4th generation language
and development environment:
— Environment:
- Databases maintenance.
- Applications maintenance.
- Source code generator.
- Documentation generator.
- CTSQL: Database server.
- CTL: Fourth generation language.
- Translators:
- trtrans source destination
- trform source destination
- trreport source destination
- tr4gl source destination
- trmenu source destination
- Debugger:
- ctlcomp -g source
- Linker:
- ctlink [-o link_file] module_list [-i]
- Office Automation:
- Spreadsheet: TCALC.
- Word processor: TWORD.
- Accesories: Calendar, Notebook, Calculator.
- Utilities:
- EasyReport.
- EasySQL.
- EasyOS.
CTSQL
Overview
- Introduction.
- Identifiers:
- Databases.
- Tables.
- Columns.
- Alias.
- Indexes.
- Primary keys.
- Foreign keys.
- Views.
- Synonyms.
- Data types.
- Sublanguages: DDL, DCL, DML, QL.
Data Definition Language (DDL)
- Databases: Generate and delete.
- Collating sequence.
- SYSLOG transaction files.
- Tables: Generate, management and delete.
- Assignation CTSQL attributes to columns.
- Primary keys and foreign keys: Generate and delete.
- Indexes: Generate and delete.
- Views: Generate and delete.
- Synonyms: Generate and delete.
- Exercises.
Data Control Language (DCL)
- Grant and revoke user privileges:
- Databases.
- Tables.
- Columns.
- Lock and unlock tables.
- Exercises.
Data Management Language (DML)
- Open and close databases.
- Add rows to a table.
- Delete rows from a table.
- Modify rows.
- Exercises.
Query Language (QL)
- Data selection, columns, expressions, etc.
- Tables selection.
- Use of alias (tables and columns) and synonyms.
- Outer joins.
- Optimization rows:
- Simple conditions.
- Subqueries (UNION).
- Rows group.
- Groups optimization.
- Storage of results: Temporary tables.
- Exercises.
Data Integrity Statements (Transactions)
- Introduction.
- Generate and open a transactional database (CREATE, START).
- Transactions:
- BEGIN WORK.
- COMMIT WORK.
- ROLLBACK WORK.
- Data recovery from backup (ROLLFORWARD DATABASE).
- Exercises.
CTL
Concepts
- Introduction.
- Host variables.
- CTSQL interface:
- TSQL.
- SELECT (INTO, USING).
- Data import and data export.
- Cursors.
- CTSQL dynamic statements: PREPARE, EXECUTE.
- Module without MAIN.
- Module with MAIN.
- Program (ctlink [-o program] modules [-i]).
- CTL modules structure (with and without MAIN).
CTL Objects
- VARIABLES:
- Initial value of all variables.
- Shared by different modules.
- PARAMETERS.
- ARRAYS.
- FORM: Only one Form per module.
- Automatic generation:
- Maintenance of tables without join.
- Maintenance of tables with join: head-lines.
- SCREEN section:
- Definition and function.
- Metacharacters.
- Limits.
- Use a help file as a screen.
- Exercises.
- TABLES section:
- Definition and function.
- On line maintenance.
- Types of tables to maintain.
- Exercises.
- VARIABLES section:
- Definition and function.
- Definition of columns with CTL attributes (lines).
- Vartables and displaytables.
- Pseudo variables.
- Untagged columns.
- MENU section:
- Definition and function.
- Lotus or Down menus. Options.
- Help files management.
- Exercises.
- CONTROL section:
- Definition and function.
- Non procedural statements.
- Action depending on the select operation.
- Action depending on the pressed key.
- Action depending on the initiated action.
- Exercises.
- EDITING section:
- Definition and function.
- Non procedural statements.
- Action depending on the select operation.
- Action depending on the pressed key.
- Action depending on the initiated action.
- Exercises.
- LAYOUT section:
- Definition and function.
- Appearance of the screen.
- Exercises.
- JOINS section:
- Definition and funtion.
- Head-lines join.
- Multicolumn join (composite).
- Request indexes for join.
- Exercises.
- First mode of definition:
- SCREEN (same as Form).
- VARIABLES: Variables and attributes definition.
- MENU (same as Form).
- CONTROL: Non procedural statements (same as Form without control
over DELETE).
- EDITING: Non procedural statements (same as Form).
- LAYOUT.
- Second mode of definition:
- FRAME name LIKE table.*
- MENU (see previous structure).
- CONTROL (see previous structure).
- EDITING (see previous structure).
- LAYOUT (see previous structure).
- MAIN:
- MAIN module definition.
- Function management.
- FUNCTION:
- Definition and function.
- Local variables and parameters definition.
- Values return.
- Call a function from MAIN.
- From different modules.
- Recursivity.
- Exercises.
- PULLDOWN:
- Automatic generation.
- Structure and definition: pulldown, menus.
- Exercises.
- MENU:
- Definition and function.
- Same as function in MAIN module.
- Exercises.
- CURSORS:
- Definition and function.
- Dynamic cursors.
- CONTROL section (special reports): Non procedural statements.
- Open cursors (execute).
- Reading a row.
- Dynamic read (first, last, previous).
- Sequential read from the first row to the last row.
- Close cursor.
- Exercises.
- STREAMS:
- Automatic generation of reports.
- Definition.
- Format stream.
- Open stream (options):
- INPUT (INPUT FRAME or PROMPT FOR -read).
- OUTPUT (PUT * -write)
- Close stream.
- Exercises.
- GLOBAL:
- Definition and function.
- Sections:
- CONTROL: Non procedural statements.
- OPTIONS: OPTIONS statement.
- Using in a MAIN module.
- Exercises.
- LOCAL:
- Definition and function.
- OPTIONS section: OPTIONS statement.
- Using in a MAIN module.
- Exercises.
Statements by Functional Groups
- Flow control statements.
- Input/Output and assignment statements.
- FORM and FRAME statements.
- STREAMS statements.
- CTSQL interface statements:
- CURSOR maintenance.
- Dynamic maintenance.
- Direct execution.
- Exercises.
Debugger
- How to use.
- More common statements.
- Exercises.
Miscelaneous
- Internal functions.
- Internal variables.
- Environment variables.
- Using the terminal: termcap, tactions and tmapping files.
- Using the printer: tprinter and printcap (Tword) files.
- Syntax of the MultiBase commands.
- Systmenu file.
- Collating sequence file.
Transfer of Applications
- "*DBS" maintenance: Problems:
- Assign DBA privilege to the database.
- Corruption of indexes.
- Empty space in "dat" and "idx" files.
- Make a program for database generation.
- DBSQL generation:
- Import the "database.sql" file.
- Import "*.unl" files with contents of the environment.
- Generate a database.
- Execute the "database.sql" file.
- Import the dictionary with the "*.unl" files.
How to increase the MultiBase Operativity
- Termcap: terminal specifications.
- PATH: MultiBase path in the variable.
- CTSQL: Correct optimization with indexes.
- Kernel: optimization.
- CTL: Dynamic statements (PREPARE, EXECUTE).
- Reduce the receive variables.
© 2008 TransTOOLs, Inc. All rights reserved