This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
oaenv:overview [2009/12/01 14:55] tdo |
— (current) | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | {{page>:top_add&nofooter&noeditbtn}} | ||
| - | <html><div align="center"><span style="color:red">DRAFT</span></div></html> | ||
| - | ====== OMNIDEX Environment Catalog Syntax ====== | ||
| - | ===== ENVIRONMENT ===== | ||
| - | ENVIRONMENT < environment_name > | ||
| - | ===== DATABASE ===== | ||
| - | DATABASE < database_name > | ||
| - | TYPE < flatfile | | ||
| - | ===== TABLE ===== | ||
| - | TABLE < tablename | "tablename" > | ||
| - | [ TYPE < ROLLUP | > ] | ||
| - | [ PHYSICAL "filespec" ] | ||
| - | [ AS "select_statment" ] | ||
| - | [ PRIMARY KEY “col1”,”col2” ] | ||
| - | [ FOREIGN KEY “col1”,”col2” REFERENCES “table1”(“col1”,”col2”) ] | ||
| - | < COLUMN column_spec [ COLUMN column_spec ... > ] | ||
| - | |||
| - | ===== Column Specification ===== | ||
| - | COLUMN column-name DATATYPE datatype-spec | ||
| - | [PROXIMITY “options”] | ||
| - | [SYNONYMS 'options'] | ||
| - | [SPELLCHECK 'options'] | ||
| - | [MISSPELLINGS 'options'] | ||
| - | [FORMS 'options'] | ||
| - | [STOPWORDS 'options'] | ||
| - | [PHONETIC 'options'] | ||
| - | [INCLUDED_TAGS 'options'] | ||
| - | [EXCLUDED_TAGS 'options'] | ||
| - | {AS < columnspec | "$retrieve_file(FILENAME)" > ] | ||
| - | |||
| - | ===== INDEX ===== | ||
| - | |||
| - | ===== NODE ===== | ||
| - | NODE nodename | ||
| - | DATABASE dbname FILEDSN "dsn" | ||
| - | [ LOCAL ] | ||
| - | [ CACHE ] | ||
| - | CLUSTER table | ||
| - | [PARTITION BY criteria_expression | ||
| - | |||
| - | ===== Examples ===== | ||
| - | ==== Step 1 - Creating the Omnidex Environment Source ==== | ||
| - | |||
| - | The following sample Environment Catalog Source is the minimum set of statements that will compile into an Omnidex Compiled Environment. | ||
| - | |||
| - | <code> | ||
| - | ENVIRONMENT tinyenv | ||
| - | DATABASE tinydb | ||
| - | TYPE flatfile | ||
| - | TABLE table1 | ||
| - | COLUMN myseq DATATYPE INTEGER | ||
| - | COLUMN mytext DATATYPE CHAR(60) | ||
| - | </code> | ||
| - | |||
| - | This creates an Omnidex Environment named "tinyenv" with a single Database named "tinydb" with one table named "table1". Because the DATABASE TYPE is "flatfile", the name of the underlying operating system file for this table is "table1". Typically a filespec location would be used. Copy and save this environment as "tiny.src". | ||
| - | |||
| - | ==== Step 2 - Compiling the Omnidex Environment ==== | ||
| - | |||
| - | os> oacomp tiny.src tiny.env | ||
| - | ==== Step 3 - Use OdxSQL to test, verify and manipulate the Environment ==== | ||
| - | |||
| - | os> odxsql tiny.env | ||
| - | |||
| - | or | ||
| - | |||
| - | os> odxsql | ||
| - | > connect tiny.env | ||
| - | |||
| - | > create file table1 | ||
| - | |||
| - | > insert into table1 values (1) | ||
| - | |||
| - | > select * from table1 | ||
| - | |||
| - | <code> | ||
| - | |||
| - | C:\dev\odx\tiny>more tiny.src | ||
| - | ENVIRONMENT tinyenv | ||
| - | DATABASE tinydb | ||
| - | TYPE flatfile | ||
| - | TABLE table1 | ||
| - | COLUMN mysq DATATYPE INTEGER | ||
| - | COLUMN mytext DATATYPE CHAR(60) | ||
| - | |||
| - | C:\dev\odx\tiny>oacomp tiny.src tiny.env | ||
| - | OACOMP - Omnidex Environment Compiler Mon Nov 30 21:41:50 2009 | ||
| - | (c) Dynamic Information Systems Corp. 1981-2009 5.0 Build 1H | ||
| - | Microsoft Windows XP Professional SP 3 (2600) TDO830/TDO | ||
| - | ** Trial Copy ** | ||
| - | |||
| - | Parsed; Validated; Compiled; Done | ||
| - | ** Environment Compiled Successfully! ** | ||
| - | |||
| - | |||
| - | C:\dev\odx\tiny>odxsql tiny.env | ||
| - | ODXSQL - Omnidex SQL Mon Nov 30 21:41:59 2009 | ||
| - | (c) Dynamic Information Systems Corp. 1981-2009 5.0 Build 1H | ||
| - | Microsoft Windows XP Professional SP 3 (2600) TDO830/TDO | ||
| - | ** Trial Copy ** | ||
| - | |||
| - | |||
| - | Connected to C:\dev\odx\tiny\tiny.env | ||
| - | > create file table1 | ||
| - | File table1 created | ||
| - | |||
| - | > insert into values (1, 'lions, tigers, and bears') | ||
| - | 1 row inserted into TABLE1 | ||
| - | > insert into values (2, 'lions, tigers, kittys, cougars') | ||
| - | 1 row inserted into TABLE1 | ||
| - | > insert into valu (3, 'The teddy bears are having a picnic') | ||
| - | 1 row inserted into TABLE1 | ||
| - | |||
| - | > select * from table1 | ||
| - | |||
| - | MYSEQ MYTEXT | ||
| - | ----------- ------------------------------------------------------------ | ||
| - | 1 lions, tigers, and bears | ||
| - | 2 lions, tigers, kittys, cougars | ||
| - | 3 The teddy bears are having a picnic | ||
| - | |||
| - | |||
| - | 1 row returned | ||
| - | > | ||
| - | </code> | ||
| - | ==== Step 4 - Install and Build Indexes with DBINSTAL ==== | ||
| - | |||
| - | <code> | ||
| - | C:\dev\odx\tiny>dbinstal | ||
| - | DBINSTAL - Omnidex Database Indexing Utility Tue Dec 01 07:30:37 2009 | ||
| - | (c) Dynamic Information Systems Corp. 1981-2009 5.0 Build 1H | ||
| - | Microsoft Windows XP Professional SP 3 (2600) TDO830/TDO | ||
| - | ** Trial Copy ** | ||
| - | |||
| - | Database or Environment: tiny.env | ||
| - | |||
| - | Cmd: install | ||
| - | |||
| - | ** OMNIDEX MultiDimensional/Keyword (MDK) Index Installation ** | ||
| - | |||
| - | Enter Tables and Columns to be indexed | ||
| - | |||
| - | To create an index comprised of all or parts of one or more columns, | ||
| - | enter an Index Name followed by '!' at the Column prompt | ||
| - | |||
| - | Enter '?' for a list of Tables or Columns, '/' to exit the current prompt | ||
| - | |||
| - | Table name? table1 | ||
| - | |||
| - | To index this table in any parent domains, enter the | ||
| - | column linking it to its parent or 'P=' followed by the parent name | ||
| - | |||
| - | Link column 1: / | ||
| - | Table will be indexed in its own domain | ||
| - | Column name: mytext;kw | ||
| - | Column name: / | ||
| - | Table name? / | ||
| - | |||
| - | Specification of MDK indexes is complete | ||
| - | |||
| - | ** OMNIDEX Aggregation/Sorted_Key (ASK) Index Installation ** | ||
| - | |||
| - | Table name? / | ||
| - | |||
| - | Proceed with installation? [Y] | ||
| - | |||
| - | Use the Build command to load the following indexes: | ||
| - | |||
| - | TABLE1 (Omnidex MDK) | ||
| - | |||
| - | Cmd: build | ||
| - | Table [;key] table1 | ||
| - | Unloading keywords | ||
| - | TABLE1: 3 records (15 keywords) processed | ||
| - | 15 keywords unloaded | ||
| - | 0 (0MB), 1 (1MB), 0 (0MB) | ||
| - | Loading keywords | ||
| - | |||
| - | 15 keywords loaded | ||
| - | 2 blocks used, 2 levels | ||
| - | Indexing complete. CPU time: 0:00:00 Elapsed: 0:00:00 | ||
| - | |||
| - | Cmd: quit | ||
| - | |||
| - | C:\dev\odx\tiny> | ||
| - | </code> | ||
| - | ==== Step 5 - Develop an Application with ODBC, JDBC or Stored Procedures ==== | ||
| - | |||
| - | After creating an Omnidex Environment and adding Omnidex indexes via DBINSTAL, applications can be developed using the DISC provided ODBC and JDBC drivers. | ||
| - | |||
| - | Create an ODBC or JDBC datasource using the Windows Client DataSource Editor (DSEDIT). | ||
| - | |||
| - | Name the file as "tiny.dsn". | ||
| - | |||
| - | Or modify the following text file and save as tiny.dsn. | ||
| - | Change the following lines to the correct path and filenames. | ||
| - | |||
| - | Change these three lines with: | ||
| - | * Host= Change this value to the name of computer being used for this test. | ||
| - | * ODBCDSNFILE= Change this value to the path and file name of the dsn file. | ||
| - | * FileSpec= Change this value to the path and filename of the Omnidex Environment file. | ||
| - | |||
| - | Cut and paste this text as "tiny.dsn" with the modifications and save in the same directory as the "tiny.env" Omnidex Environment file. | ||
| - | |||
| - | <code> | ||
| - | Host=tdo830 | ||
| - | ODBCDSNFILE=C:\dev\odx\tiny\tiny.dsn | ||
| - | FileSpec=c:\dev\odx\tiny\tiny.env | ||
| - | </code> | ||
| - | |||
| - | <code> | ||
| - | ODBC] | ||
| - | DRIVER=DISC OMNIDEX OdxNet Driver | ||
| - | ODBCDSNFILE=C:\dev\odx\tiny\tiny.dsn | ||
| - | ODBCDSNNAME=tinydsn | ||
| - | [DataSources] | ||
| - | tinydsn=DataSource Edit Wizard Generated | ||
| - | [DataSource tinydsn] | ||
| - | Dictionary=tinydsn | ||
| - | DisplayWindow=NONE | ||
| - | [Dictionaries] | ||
| - | tinydsn=DataSource Edit Wizard Generated | ||
| - | [Dictionary tinydsn] | ||
| - | Server=Server1 | ||
| - | NetworkServices=OdxNet | ||
| - | Type=OmniAccess | ||
| - | FileSpec=c:\dev\odx\tiny\tiny.env | ||
| - | HostOAConnectOptions= | ||
| - | Password=!~ | ||
| - | AccessOptions=Write | ||
| - | [Servers] | ||
| - | Server1=DataSource Edit Wizard Generated | ||
| - | [Server Server1] | ||
| - | Host=tdo830 | ||
| - | Port=7555 | ||
| - | </code> | ||
| - | ==== Step 6 - Simulate a client server environment using OdxNet with ODBC or JDBC ==== | ||
| - | |||
| - | Start a new command window as odxnet will run and await connections in the new command window. | ||
| - | |||
| - | os> odxnet | ||
| - | |||
| - | Go back to the original command window and do the following: | ||
| - | |||
| - | os> odxsql tiny.dsn -odbc | ||
| - | |||
| - | or run an ODXNET listener from within OdexSQL using the -odxnet command line option. | ||
| - | |||
| - | os> odxsql -odxnet | ||
| - | > connect tiny.dsn using odbc | ||
| - | | ||
| - | <code> | ||
| - | > select * from table1 where mytext = 'bears' | ||
| - | |||
| - | MYSEQ MYTEXT | ||
| - | ----------- ------------------------------------------------------------ | ||
| - | 1 lions, tigers, and bears | ||
| - | 3 The teddy bears are having a picnic | ||
| - | </code> | ||
| - | |||
| - | ==== Step 7 - Insert a new row to see that it is indexed ==== | ||
| - | |||
| - | > insert into table1 values (4, 'Da Bears') | ||
| - | 1 row inserted into TABLE1 | ||
| - | |||
| - | <code> | ||
| - | > select * from table1 where mytext = 'bears' | ||
| - | |||
| - | MYSEQ MYTEXT | ||
| - | ----------- ------------------------------------------------------------ | ||
| - | 1 lions, tigers, and bears | ||
| - | 3 The teddy bears are having a picnic | ||
| - | 4 Da Bears | ||
| - | </code> | ||
| - | {{page>:bottom_add&nofooter&noeditbtn}} | ||