OVH Cloud OVH Cloud

Connexion AS400 en procédure stockée

7 réponses
Avatar
Damien
Bonjour,

Est il possible de se connecter à une base AS400 dans une procédure stockée?

Si oui, comment procéder?

Merci d'avance

Damien

7 réponses

Avatar
Michel PRIORI
Voir dans la doc
openrowset
openquery
et "serveurs liés"

"Damien" wrote:

Bonjour,

Est il possible de se connecter à une base AS400 dans une procédure stockée?

Si oui, comment procéder?

Merci d'avance

Damien


Avatar
Damien
Je n'y arrive vraiment pas.

Je ne trouve pas le driver, et je n'arrive pas à utiliser le openrowset...

J'ai besoin de trouver une solution rapidement :'(

Je dois me connecter au serveur AS400, importer des données et les traités
pour ensuite insérerle tout dans sql server...

Help

"Michel PRIORI" a écrit :

Voir dans la doc
openrowset
openquery
et "serveurs liés"

"Damien" wrote:

> Bonjour,
>
> Est il possible de se connecter à une base AS400 dans une procédure stockée?
>
> Si oui, comment procéder?
>
> Merci d'avance
>
> Damien


Avatar
Michel PRIORI
Là, ça se complique ...

N'ayant plus sous la main un AS400 je ne pourais pas trop t'aider pas à pas.

Aujourd'hui comment fais-tu pour requeter la base AS400 ?
1- Connexion ODBC
2- Connexion OLE DB
3- Connexion via une émulation de console
4- Connexion via un logiciel "passerelle"

Essaye donc de décortiquer une (ou+) solution(s) qui marche(nt) et insprire
t'en.
Une fois la config trouvée, il vaut mieux passer par des serveurs liés que
par les procédures (c'est plus facile pour la suite)


"Damien" wrote:

Je n'y arrive vraiment pas.

Je ne trouve pas le driver, et je n'arrive pas à utiliser le openrowset...

J'ai besoin de trouver une solution rapidement :'(

Je dois me connecter au serveur AS400, importer des données et les traités
pour ensuite insérerle tout dans sql server...

Help

"Michel PRIORI" a écrit :

> Voir dans la doc
> openrowset
> openquery
> et "serveurs liés"
>
> "Damien" wrote:
>
> > Bonjour,
> >
> > Est il possible de se connecter à une base AS400 dans une procédure stockée?
> >
> > Si oui, comment procéder?
> >
> > Merci d'avance
> >
> > Damien


Avatar
Damien
Bonjour,

Merci pour votre réponse.
POur le moment j'attaque la base AS400 par un script ASP et une connexion
ODBC.
J'ai essayé en vain de créer un serveur lié avec les parammètres ODBC que
j'utilise mais rien ni fait.

Je ne sais plus comment faire :(

Merci encore

Damien

"Michel PRIORI" a écrit :

Là, ça se complique ...

N'ayant plus sous la main un AS400 je ne pourais pas trop t'aider pas à pas.

Aujourd'hui comment fais-tu pour requeter la base AS400 ?
1- Connexion ODBC
2- Connexion OLE DB
3- Connexion via une émulation de console
4- Connexion via un logiciel "passerelle"

Essaye donc de décortiquer une (ou+) solution(s) qui marche(nt) et insprire
t'en.
Une fois la config trouvée, il vaut mieux passer par des serveurs liés que
par les procédures (c'est plus facile pour la suite)


"Damien" wrote:

> Je n'y arrive vraiment pas.
>
> Je ne trouve pas le driver, et je n'arrive pas à utiliser le openrowset...
>
> J'ai besoin de trouver une solution rapidement :'(
>
> Je dois me connecter au serveur AS400, importer des données et les traités
> pour ensuite insérerle tout dans sql server...
>
> Help
>
> "Michel PRIORI" a écrit :
>
> > Voir dans la doc
> > openrowset
> > openquery
> > et "serveurs liés"
> >
> > "Damien" wrote:
> >
> > > Bonjour,
> > >
> > > Est il possible de se connecter à une base AS400 dans une procédure stockée?
> > >
> > > Si oui, comment procéder?
> > >
> > > Merci d'avance
> > >
> > > Damien


Avatar
Jean-Yves
Salut Damien ,

Nous avons aussi en serveur AS400 + 1 serveur SQL 2000 .
Nous avons configuré l'AS400 en serveur lié dans SQL Server en passant par
les drivers OLEDB inclus
dans le package :
IBM iSeries Access for Windows
(Client Access Express)
(5722-XE1)
Release Level : V5R1M0
http://www-1.ibm.com/servers/eserver/iseries/access/casp.htm

Cette solution fonctionne bien : j'extrais tous les jours des
enregistrements de l'AS400 via des procédures stockées
à partir de SQL server .

Voilà à toi de jouer ...

Jean-Yves
"Damien" a écrit dans le message de
news:
Bonjour,

Est il possible de se connecter à une base AS400 dans une procédure


stockée?

Si oui, comment procéder?

Merci d'avance

Damien


Avatar
Damien
Bonjour,

Merci pour ton aide.
J'ai bien réussi à créer mon serveur lié et à listerle contenu.

Mais lorsque je créé une procédue stockée en faisant un simple 'select', il
m'affiche se message d'erreur :

---------------------------
Microsoft SQL-DMO (ODBC SQLState : 42000)
---------------------------
Erreur 7405 : Les requêtes hétérogènes requièrent les options ANSI_NULLS et
ANSI_WARNINGS pour être définies pour la connexion. Cela assure la cohérence
sémantique de la requête. Activez ces options et relancez la requête.
---------------------------
OK
---------------------------
J'ai donc fait ceci :

CREATE PROCEDURE Test
AS
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
GO
select top 100 * from RECETTE.RECETTE.CGDEST2DTA.STAHIBP000
GO

Mais rien à faire, j'ai toujours le même message. Et la requete fonctionne
très bien sous l'analyseur :'(.

Allez, un dernier coup de main :)

Merci d'avance

Damien

"Jean-Yves" a écrit :

Salut Damien ,

Nous avons aussi en serveur AS400 + 1 serveur SQL 2000 .
Nous avons configuré l'AS400 en serveur lié dans SQL Server en passant par
les drivers OLEDB inclus
dans le package :
IBM iSeries Access for Windows
(Client Access Express)
(5722-XE1)
Release Level : V5R1M0
http://www-1.ibm.com/servers/eserver/iseries/access/casp.htm

Cette solution fonctionne bien : j'extrais tous les jours des
enregistrements de l'AS400 via des procédures stockées
à partir de SQL server .

Voilà à toi de jouer ...

Jean-Yves
"Damien" a écrit dans le message de
news:
> Bonjour,
>
> Est il possible de se connecter à une base AS400 dans une procédure
stockée?
>
> Si oui, comment procéder?
>
> Merci d'avance
>
> Damien





Avatar
Damien
Re,

Je viens de trouver la solution à savoir mettre les 2 set avant le create.

Autre question, tant que j'y suis ^^ : Peux t on agir sur ce serveur lié
comme sur une base créée sous SQL Server? A savoir, le voir dans ma liste de
base de donnée et ainsi pouvoir créer, modifier ou supprimer une table par
exemple.... ?

Merci encore et désolé pour mon empressement :)

Cordialement

Damien

"Damien" a écrit :

Bonjour,

Merci pour ton aide.
J'ai bien réussi à créer mon serveur lié et à listerle contenu.

Mais lorsque je créé une procédue stockée en faisant un simple 'select', il
m'affiche se message d'erreur :

---------------------------
Microsoft SQL-DMO (ODBC SQLState : 42000)
---------------------------
Erreur 7405 : Les requêtes hétérogènes requièrent les options ANSI_NULLS et
ANSI_WARNINGS pour être définies pour la connexion. Cela assure la cohérence
sémantique de la requête. Activez ces options et relancez la requête.
---------------------------
OK
---------------------------
J'ai donc fait ceci :

CREATE PROCEDURE Test
AS
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
GO
select top 100 * from RECETTE.RECETTE.CGDEST2DTA.STAHIBP000
GO

Mais rien à faire, j'ai toujours le même message. Et la requete fonctionne
très bien sous l'analyseur :'(.

Allez, un dernier coup de main :)

Merci d'avance

Damien

"Jean-Yves" a écrit :

> Salut Damien ,
>
> Nous avons aussi en serveur AS400 + 1 serveur SQL 2000 .
> Nous avons configuré l'AS400 en serveur lié dans SQL Server en passant par
> les drivers OLEDB inclus
> dans le package :
> IBM iSeries Access for Windows
> (Client Access Express)
> (5722-XE1)
> Release Level : V5R1M0
> http://www-1.ibm.com/servers/eserver/iseries/access/casp.htm
>
> Cette solution fonctionne bien : j'extrais tous les jours des
> enregistrements de l'AS400 via des procédures stockées
> à partir de SQL server .
>
> Voilà à toi de jouer ...
>
> Jean-Yves
> "Damien" a écrit dans le message de
> news:
> > Bonjour,
> >
> > Est il possible de se connecter à une base AS400 dans une procédure
> stockée?
> >
> > Si oui, comment procéder?
> >
> > Merci d'avance
> >
> > Damien
>
>
>