So to sum this all up. If I need to access Informix I could use DRDA and most likely need to change any native CHAIN/READ opcodes to embedded SQL, unless by some miracle Informix supports DDM in addition to DRDA. If I need to access MS SQL I could use Scotts jdbc service program which is a lot like switching from native opcodes to SQL. Or I could use something like the RJS product that provides an API to RPG to talk to a Windows system that uses ODBC to connect to MS SQL. With Scotts service program or the RJS product being able to connect to anything with a JDBC or ODBC driver available which Informix and MS SQL have both where not all databases support DRDA (although it would be nice if they all did).
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of CRPence
Sent: Thursday, April 30, 2009 3:35 PM
To: midrange-l@xxxxxxxxxxxx
Subject: [QUAR] Re: Running AIX in a partition
Importance: Low
DeLong, Eric wrote:
Uh, have you looked at CRTDDMF command lately? If you specify
TYPE *IP, the ports referenced for the remote database are
defaulted to *DRDA....
Seems to me that adding an entry to your RDB Directory should
let you create DDM files to Informix, though I've never tried.
If the DDM object won't work, then you could always fall back
to CONNECT TO informixServer....
<<SNIP>>
I believe too much is inferred from the label *DRDA. That value
being used to identify the port is simply indicating that the "DRDA
well-known port of 446 will be used; the port on which the iSeries
DDM TCP/IP server listens". Although DRDA is effectively built over
the existing DDM code _in i5/OS_ and thus they share lots of similar
implementation for effecting connections, they are entirely
different concepts for their /access methods/ to the data, which
would not allow one to easily mimic the other. So unless Informix
provided a specific DDM interface [i.e. a server implementing the
DDM architecture with its available access methods to the Informix
file-system\data] in addition to the DRDA server Informix provides
for its SQL access method to its files\data, there is not going to
be a DDM connection capability; i.e. the existence of DRDA does not
implicitly enable DDM.
The following area of InfoCenter with its general introduction to
DDM suggests:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/ddm/rbae5kickoff.htm
"Distributed Relational Database Architecture(tm) (DRDA(r)) also uses the
DDM architecture."
What originates the *DRDA special value is effectively just a
common /listener program/ implementing the start of communications
for both architectures; see link:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/ddp/rbal1srvlstn.htm
"DRDA and DDM listener program:
The DDM listener program runs in a batch job. There
is a one-to-many relationship between it and the
actual server jobs; there is one listener and
potentially many DDM server jobs. The server jobs
are normally prestart jobs. The listener job runs
in the QSYSWRK subsystem.
The DDM listener allows client applications
to establish TCP/IP connections with an associated
server job by handling and routing inbound
connection requests. After the client has
established communications with the server job,
there is no further association between the client
and the listener for the duration of that connection.
The DDM listener must be active in order for
DRDA(r) Application Requesters and DDM source systems
to establish connections with the DDM TCP/IP server."
The figure in the following link is a picture which shows the
sharing of duties to implement the starting of either type of
connection:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/ddp/rbal1estcom.htm
"Establishing a DRDA or DDM connection over TCP/IP:
To initiate a DDM server job that uses TCP/IP
communications support, the DRDA(r) Application
Requester or DDM source system will connect to the
well-known port number, 446 or 447. The DDM server
also listens on port 448, but only for use with
connections, which are not supported by DB2
Universal Database(tm) for iSeries(tm) application
requesters or DDM clients.
Figure 1. DRDA and DDM TCP/IP server"
More information about the ports can be found at:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/ddp/rbal1ports.htm
"The DDM or DRDA(r) TCP/IP server listens on
port 447 (the well-known DDM port) and
446 (the well-known DRDA port)
as well as 448 (the well-known SSL port).
The DB2 Universal Database(tm) for iSeries(tm)
implementation of DDM does not distinguish between
the two ports 446 and 447, however, so both
DDM and DRDA access can be done on either port.
Using the convention recommended for IPSec, the
port usage for the DDM TCP/IP server follows:
* 446 for clear text data streams
* 447 for IPSec encrypted data streams (suggested)
* 448 for SSL encrypted data streams (required)"
Although there will be references to DDM and Informix [found in a
web search, for example], I believe all references will be
determined to refer to a Data Definition Module which is *not* a
reference to the Distributed Data Management [architecture].
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/rzajt/rzajtrzajtddm.htm
Regards, Chuck
As an Amazon Associate we earn from qualifying purchases.