Question

Comment créer un pool de connexions de base de données dans PowerBuilder (v9 +) avec ...

  • ... ODBC?
  • ... SQL Server?
  • ... Oracle?
Était-ce utile?

La solution

Malheureusement, du moins avec la PB 9, vous ne pouvez pas en mode natif . PB a toujours été un outil de développement à deux niveaux. Toutefois, si vous utilisez le support WebServices démarré dans PB 9, vous pouvez contourner cette limitation en appelant WebServices sur un appServer mis en pool de connexions. Je n'ai pas encore joué avec PB 11.5 BTW. Pourrait être différent là-bas.

Jason

Autres conseils

À ce risque de promotion personnelle, ceux-ci peuvent vous aider à démarrer pour Oracle:

    Il est en train de se rendre / a>
  • .5 / Oracle 11g

Si vous utilisez Manuels Sybase (intuitif, hein?), accédez au manuel Connexion à votre base de données. pour la version que vous recherchez, recherchez "pool". peut être productif. En regardant ma copie locale pour 11.5, je peux voir des références à SNC (MS) et ODBC.

Jusqu'à "non-natif" Je suppose que Jason aurait peut-être fait référence au regroupement de connexions avec un serveur d’applications, puis à la récupération de vos données.

Bonne chance.

Avec PowerBuilder version 9 et ultérieure utilisant le pilote natif Oracle et se connectant aux bases de données Oracle 9i et supérieures, vous pouvez indiquer à Oracle de maintenir les connexions dans un pool à l'aide du paramètre de base de données CnnPool = 'Yes' :

Informations complémentaires sur la documentation de la PB 11.1: http: // infocenter .sybase.com / help / index.jsp? topic = / com.sybase.dc33820_1110 / html / dbparm / BJEBJADI.htm

Je ne crois pas que

  

CnnPool = 'Oui'

a été pris en charge officiellement dans le PB 9.

Je ne suis pas sûr que la plupart des développeurs de PB connaissent très bien la gestion des pools.

L’approche d’ASP.Net est simple et directe, du moins par rapport à mon expérience avec certains serveurs d’applications Java. (S'il vous plaît ne commencez pas une guerre de flammes sur cette dernière phrase, j'ai dit mon expérience).

J'ai écrit un "serveur". application qui a reçu des banques de données PB exécutées pour ds.retrieve () et ds.update () et a renvoyé les données à l’application client PB. C'était un moyen de piscine. L'application serveur ouvrirait plusieurs connexions ... Je l'ai fait dans la PB 8 (un livre existe quelque part). Je ne recommanderais pas cette approche ... beaucoup de code.

Dans PB 11.x, vous devez envisager de nouvelles approches intéressantes.

@Jason Vogel ...

Vous avez dit que je ne pouvais pas faire de manière native ... il existe donc un autre moyen de le faire?

/ * Déclarer en tant que variable d'instance * /

n_to_server i_to_server // Objet de transaction autre que SQLCA, i_to_server est un nom personnalisé, de même que n_to_server

/ * Instancier l'objet de connexion * /

i_to_server = transaction CREATE // A été déclaré dans les variables d'instance de n_to_server

i_to_server.DBMS = "ODBC"

i_to_server.AutoCommit = TRUE

i_to_server.DBParm = "ConnectString = 'DSN = SourceServer; UID = nom d'utilisateur; PWD = mot de passe" "

CONNEXION EN UTILISANT i_to_server;

SELECT @@ trancount INTO: li_TranCount

FROM sysobjects

WHERE name = 'sysobjects'

USING i_to_server; // Doit avoir USING dans les transactions qui n'utilisent pas SQLCA (la transaction native)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top