Pregunta

Cómo hacer un grupo de conexiones de base de datos en PowerBuilder (v9+) con...

  • ...¿ODBC?
  • ...¿Servidor SQL?
  • ...¿Oráculo?
¿Fue útil?

Solución

Desafortunadamente, al menos con PB 9, no puedes nativamente.PB siempre ha sido una herramienta de desarrollo de dos niveles.Sin embargo, si está utilizando el soporte de WebServices que comenzó en PB 9, puede evitar esta limitación invocando WebServices en un servidor de aplicaciones de conexión agrupada.Por cierto, todavía no he jugado con PB 11.5.Podría ser diferente allí.

jason

Otros consejos

A riesgo de autopromoción, estos pueden ayudarle a iniciarse en Oracle:

Si vas a Manuales de Sybase (intuitivo, ¿eh?), vaya al manual Conexión a su base de datos para la versión que está viendo; una búsqueda de "grupo" puede resultar productiva.Al mirar mi copia local de 11.5, puedo ver referencias a SNC (MS) y ODBC.

En cuanto a los enfoques "no nativos", supongo que Jason podría haberse referido a la agrupación de conexiones con un servidor de aplicaciones y luego obtener sus datos a través de eso.

Buena suerte.

Con PowerBuilder versión 9 y superiores usando el controlador nativo de Oracle y conectándose a bases de datos Oracle 9i y superiores, puede decirle a Oracle que mantenga las conexiones en un grupo usando el CnnPool='Sí' parámetro de base de datos:

Información adicional de los documentos PB 11.1:http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc33820_1110/html/dbparm/BJEBJADI.htm

no creo eso

CnnPool='Sí'

fue apoyado oficialmente en PB 9.

No estoy seguro de que la mayoría de los desarrolladores de PB estén familiarizados con cómo tratar con grupos.

El enfoque de ASP.Net es simple y directo al menos en comparación con mi experiencia con algunos servidores de aplicaciones Java.(Por favor, no empieces una guerra incendiaria con esa última frase, dije mi experiencia).

Escribí una aplicación de "servidor" que recibió almacenes de datos de PB que se ejecutaron para ds.retrieve() y ds.update() y pasé los datos a la aplicación de PB del cliente.Era una forma de hacer pool.La aplicación del servidor abriría múltiples conexiones...Hice esto en PB 8 (hay un libro por ahí).No recomendaría este enfoque...mucho código.

En PB 11.x, hay algunos enfoques nuevos e interesantes que debes considerar.

@Jason Vogel...

Dijiste que no puedo hacer nativamente ... entonces, ¿existe una forma alternativa de hacerlo?

/* Declarar como variable de instancia*/

n_to_server i_to_server // Objeto de transacción alternativo a SQLCA, i_to_server es un nombre personalizado al igual que n_to_server

/* Instalar objeto de conexión*/

i_to_server = Crear transacción // se declaró en las variables de instancia de n_to_server

i_to_server.DBMS = "ODBC"

i_to_server.AutoCommit = VERDADERO

i_to_server.DBParm = "ConnectString='DSN=SourceServer;UID=nombre de usuario;PWD=contraseña'"

CONECTARSE USANDO i_to_server;

SELECCIONE @@trancount EN :li_TranCount

DE objetos del sistema

DONDE nombre = 'objetos del sistema'

USANDO i_to_server;//Debe tener USING en transacciones que no utilizan SQLCA (la transacción nativa)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top