ASNA DataGate® 17.0 for SQL Server |
DataGate® for SQL Server Help
This document contains information and advice on using DataGate® for SQL Server. The terms DataGate® for SQL Server and DSS are used interchangably thoughout this guide.
What's New in 17.0?
DataGate® 17.0 for SQL Server includes built-in Secure Socket Layer (SSL) protection, a new layer of defense between your data and hostile internet prescences. For details on how DataGate® handles SSL, see the SSL for DataGate® Guide and the SSL Deployment Guide.
What is DSS?
DataGate® for SQL Server (DSS) is a client/server database middleware that connects Windows clients with MS SQL Server. The concepts surfaced by the DSS API are based on the IBM i database (DB2/400): ISAM style record level access. The client is built as a .NET assembly. The client and the server communicate via TCP/IP using its own protocol.
The DataGate server implementation for MS SQL Server runs as a multi-threaded Windows system service (dgServer.exe);
this service executes on the same machine where the SQL Server instance is running. dgServer.exe is an unmanaged
C++ program that uses SqlOleDB
to access SQL Server data and schema.
Each DataGate® Client connection results in two OLEDB session connections from the DataGate® Server to SQL Server. These connections can stay open throughout the day doing select, update, delete and insert operations. The OLEDB connections close when the application closes the DataGate® connection.
In order to satisfy the ISAM style requests, DSS makes heavy use of Scrollable Server Cursors. DSS associates a server cursor with each open file; it typically requests a single row at a time from the rowsets used in conjunction with the server cursor. Each application can maintain a large set of active server cursors. Record locks are maintained via row locks on the server cursor.
The mapping of OS/400 construct to SQL Server is as follows:
OS/400 construct | SQL Server artifacts |
---|---|
Physical File | Table with an index. The Index is named as the Table name. |
Logical File – Simple | View plus an index on the Table. The Index is named as the View name. |
Logical File – Join | View (outer or inner join) plus an index on the first Table. The Index is named as the View name |
Logical File - Multiformat | Not supported |
Member | If a physical of simple logical file allows for multiple members, in addition to the file's table (or view), each member also uses a table (or view) |
Print file | Table with a single row containing the print file description |
Data Area | Table with a single row |
Library | Database |
Library List | Collection of database names |
QTEMP | Temporary tables and view created on a designated database and associated with each OLEDB session |
Record Lock | Server Cursor Lock |
Object Lock | SQL Server 'application lock' |
DSS 'decorates' the Tables and Views with the following custom properties
Property | Object | Value Usage |
---|---|---|
Access Path | File's table or view | Key description: Key fields, direction and uniqueness |
Text | File or member's table or view | Uses provided descriptions |
FileOrMember | File's table or view | *BOTH: Single Member File *FILE: Multimember File |
Member's table or view | Member's parent file name | |
Wait for Record | File's table or view | Seconds to wait for a record if it is locked by some other application |