您的位置:首页 > 数据库

如何从SAP中连接其他数据库

2008-10-22 09:54 751 查看
1. 工作环境需求
A. The operating system user <sid>adm must be able to log on to the secondary database.
B. The R/3 table DBCON must be maintained.
C. The correct database library 'dboraslib.<ext>' must exist in the kernel directory.
Connect to
SQL Server database Prerequisite: At least one Windows application
server must be available on the R/3 system and the DBSL dynamic library
(DLL) dbmssslib.dll must be installed on this server. This dll can be
downloaded from the SAP Service Marketplace.
dbmssslib.dll

2. 配置连接信息
配置TCODE: dbco
任何配置信息都存储在DBCON表中.
配置示例:
A. 访问MSSQL的配置示例(参见SAP Notes 178949)
CON_NAME: <my_conn_name>
DBMS: MSS
USER_NAME: <db_user>
PASSWORD: <password>
CON_ENV: MSSQL_SERVER=<server_name> MSSQL_DBNAME=<db_name>
db_user could be sapr3 for
example if the server is running R/3. The password field may be
blocked from view by asterisks in sm30. USER_NAME can be left blank in
order to use integrated security (4.6d kernel and later). In that case
make sure that the OS User running R/3 has the required privilege on
the remote server. A dummy password must be entered in sm30, it will
not be used when the user name is blank.

Specifying the server name

The server name is simply the name of the SQL Server or
named instance i.e. the hostname (for a default instance), or
<host>/<instname>
Starting with release 6.40 however
there are some special considerations that should be taken into
account. When running with kernel release 6.40 or later, the R/3
system will prepend a protocol specifier to the server name. Example:
1. For a server running on the same server:
np:<servername>
2. For a remote server:
tcp:<servername>
This forces the connection to be made with a named pipes and tcp/ip protocols respectively.
When
specifying the server name you can override this by setting your own
protocol (tcp: or np:), or you can make R/3 avoid setting any prefix by
using simply :<servername> - a colon in front of the server name.

B. 访问ORACLE的配置示例()
Connection name logical name of the connection
DBMS ORA
User name Oracle users
DB password password for the above-mentioned Oracle user
Conn.info TNS alias
Permanent Usually should not be set for a secondary connection.

3. 程序中如何使用
例程一
report zdbcon .
data: dbn(128).
EXEC SQL.
CONNECT TO 'DAN1'
ENDEXEC.
EXEC SQL.
SET CONNECTION 'DAN1'
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
write: / 'current database name', dbn.
DAN1在DBCON表中配置
CON NAME DAN1
DBMS MSS
USER NAME iis_log
PASSWORD CON ENV
MSSQL_SERVER=tcp:###.###.###.### MSSQL_DBNAME=iislog

例程二
Here is an example for how to connect to another server with CON_NAME=BSK. The example assumes BSK is running R/3:

EXEC SQL.
CONNECT TO 'BSK'
ENDEXEC.
EXEC SQL.
SET CONNECTION 'BSK'
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
WRITE: / 'current database name', DBN.
EXEC SQL.
SET CONNECTION DEFAULT
ENDEXEC.
EXEC SQL.
SELECT db_name() INTO :DBN FROM SVERS
ENDEXEC.
WRITE: / 'current database name', DBN.

notes: https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=178949&nlang=EN&smpsrv=https%3a%2f%2fwebsmp103%2esap-ag%2ede

本文来自http://blog.csdn.net/CompassButton/archive/2006/08/30/1144319.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: