Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Conexion a MS SQL SERVER (https://www.clubdelphi.com/foros/showthread.php?t=48539)

Diegochr 27-09-2007 16:58:19

Conexion a MS SQL SERVER
 
Hola a todos!!..
Quisiera saber cual es la mejor forma de hacer mi conexion con Delphi y Ms Sql Server..
Algun componente..
Gracias..

poliburro 27-09-2007 17:01:24

Lo mejor y no solo para Sql Server, es ADO.

En tu delphi encontrarás la paleta de componentes de esta tecnología de microsoft

juanelo 27-09-2007 17:03:15

Para mi la mejor tecnologia y sobre todo mas impulsada por borland es DBExpress.
Saludos

Diegochr 27-09-2007 17:03:18

Muchas gracias amigos..

Voy a probar..

poliburro 27-09-2007 17:06:48

Cita:

Empezado por juanelo (Mensaje 234328)
Para mi la mejor tecnologia y sobre todo mas impulsada por borland es DBExpress.
Saludos


Lamento decirte que al utilizar DbExpress con MsSql Server, perderías las ventajas que te brinda el acceso nativo de ADO,

Probablemente eso aplique con Interbase o FireBird. Pero con lo que Respecta a MsSql Server, no hay nada, absolutamente nada mejor que ADO.

Diegochr 27-09-2007 17:10:02

Otro detalle...
Usando ADO, lo hago con ODBC o que otra forma hay?

juanelo 27-09-2007 17:40:32

Cita:

Empezado por poliburro (Mensaje 234333)
Lamento decirte que al utilizar DbExpress con MsSql Server, perderías las ventajas que te brinda el acceso nativo de ADO,

Probablemente eso aplique con Interbase o FireBird. Pero con lo que Respecta a MsSql Server, no hay nada, absolutamente nada mejor que ADO.

Existe un buen dicho que reza: "cada quien habla de como le va en la feria", y por lo menos yo no he tenido NINGUN PROBLEMA en usar dbExpress con SQL server, de hecho me ha dado la ventaja de hacer cambios de ultima hora en el manejador de base de datos (por costo) y practicamente no se movio NINGUNA LINEA DE CODIGO, quiero ver como me hubiera ido con ADO!:eek:.
Y en cuanto a desempeño, siempre he pensado que a lo que juegan las empresas de sevidores de base de datos (grandes ligas!) existe poca diferencia en cuanto al desempeño entre una y otra, el principal problema viene en que nosotros los programadores comentemos SENDAS burradas que luego se las cargamos a la base de datos, es decir, si utilizas de manera eficiente tu server (un buen diseño de base de datos, triggers, store proc, etc), casi que no importa el front end que te mandes.


Saludos.

poliburro 27-09-2007 19:19:41

Cita:

Empezado por Diegochr (Mensaje 234335)
Otro detalle...
Usando ADO, lo hago con ODBC o que otra forma hay?


No es necesario, MsSql te proporciona un proveedor OleDb, cuando estes armando la cadena de conexión seleccionas Proveedor Ole MsSql server y listo.

Cita:

Empezado por juanelo
Existe un buen dicho que reza: "cada quien habla de como le va en la feria", y por lo menos yo no he tenido NINGUN PROBLEMA en usar dbExpress con SQL server, de hecho me ha dado la ventaja de hacer cambios de ultima hora en el manejador de base de datos (por costo) y practicamente no se movio NINGUNA LINEA DE CODIGO, quiero ver como me hubiera ido con ADO!:eek:.

Pues hubiese pasado exactamente lo mismo, NADA. :), al hacer modificaciones en tus procedimientos almacenados, no tendrías por que mover alguna línea de código en delphi.

Lo interesante sería es que tal está el soporte de DBExpress para el Xml de sql server y Mantener los datos de tus datasets sin necesidad de estar conectado a Sql Server.

juanelo 27-09-2007 19:36:42

Cita:

Pues hubiese pasado exactamente lo mismo, NADA. :), al hacer modificaciones en tus procedimientos almacenados, no tendrías por que mover alguna línea de código en delphi.
Ok, por supuesto que no pasa nada si tus cambios los haces en tu codigo sql (stores, trigger, etc), pero dudo mucho que toda la lógica de operaciones con tu base de datos la tengas en el server, asi que invariablemente usaras lo componentes ADO en la logica de tu app, y por consiguiente tendras codigo amarrado. Con dbExpress usas el mismo codigo de tu app en casi cualquier base de datos,.

Cita:

Lo interesante sería es que tal está el soporte de DBExpress para el Xml de sql server y Mantener los datos de tus datasets sin necesidad de estar conectado a Sql Server.
Interesante tu argumento, pero me gustaria saber que tanto soporte tiene para utilizar los servicios de replica de Oracle, o los los datos persistentes de DB2, es lo mismo, existen caracteristicas PARTICULARES de cada manejador de base de datos que muy seguramente no seran soportadas por dbExpress pero para cada una de ellas existe formas alternativas de llegar y asi dejar el "kernel" de tu app lo mas independiente de la base de datos, ahora que si tu cliente esta a morir con M$ pues ni hablar nos morimos con $QL $erver.
Saludos.
PD: Es bastante gratificante este debate. :D

poliburro 27-09-2007 20:18:11

Cita:

Empezado por juanelo (Mensaje 234417)
Con dbExpress usas el mismo codigo de tu app en casi cualquier base de datos,.

Eso no es problema para ADO, Que motor de base de datos quieres elejir?

MsSql, FireBird, Oracle, Db2, Postgress, Mysql, Informix, Dbase, Access, DataFlex?

O prefieres que sean archivos?

Excell, Csv?

No problem, ADO los soporta


Cita:

Empezado por juanelo (Mensaje 234417)
Interesante tu argumento, pero me gustaria saber que tanto soporte tiene para utilizar los servicios de replica de Oracle, o los los datos persistentes de DB2, es lo mismo, existen caracteristicas PARTICULARES de cada manejador de base de datos que muy seguramente no seran soportadas por dbExpress

Que bueno que lo mencionas, Precisamente en mi actual empleo, Usamos Tres motores de base de datos

Mysql En linux
MsSql Server En Windows
Db2 En As400

Y la capa de conexión que utilizamos, claro es ADO. Y sip, tenemos acceso a las características particulares de cada uno de estos motores. :P

Cita:

Empezado por juanelo (Mensaje 234417)
PD: Es bastante gratificante este debate. :D

Coincido contigo bro. :D. No hay nada más gratificante

waly2k1 28-09-2007 05:31:23

El mejor ADO lejos
 
Amigos ADO brinda métodos y eventos que ningun otro componente lo brinda
además como lo mencionaban anteriormente es nativo o sea que no hay que acceder a librerias externas. DBExpress parece bueno, pero éste a su vez utiliza ADO despues para conectarse a SQL Server, o sea que es una capa más.

O sea con ADO te evitas un paso(varias DLLs) y a la vez es mas rapido y sencillo el manejo.

Ah Diegochr si usas ADO, no uses despues ODBC, ya que estarás desperdiciando recursos y la potencia de ADO al pasar de ADO a RDO
que es el metodo usado en ODBC. Buscate el proveedor OleDB de SQL Server y generas la cadena de conexión.

Saludos

juanelo 28-09-2007 16:34:42

Cita:

Empezado por waly2k1 (Mensaje 234616)
Amigos ADO brinda métodos y eventos que ningun otro componente lo brinda
además como lo mencionaban anteriormente es nativo o sea que no hay que acceder a librerias externas. DBExpress parece bueno, pero éste a su vez utiliza ADO despues para conectarse a SQL Server, o sea que es una capa más.

O sea con ADO te evitas un paso(varias DLLs) y a la vez es mas rapido y sencillo el manejo.

Hola waly2k1,
Pues siento decirte que estas equivocado, dbexpress esta diseñado para que se accesen de forma nativa los drivers de los fabricantes de servidores de bases de datos (la unica capa que existe es un "driver" dbexpress para estos servidores que en verdad es muy facil de programar), y no, no usan ADO para accesar a SQL Server, por lo tanto no hay otra capa mas.
Saludos.

poliburro 03-10-2007 23:52:35

Cita:

Empezado por juanelo (Mensaje 234735)
Hola waly2k1,
Pues siento decirte que estas equivocado, dbexpress esta diseñado para que se accesen de forma nativa los drivers de los fabricantes de servidores de bases de datos (la unica capa que existe es un "driver" dbexpress para estos servidores que en verdad es muy facil de programar), y no, no usan ADO para accesar a SQL Server, por lo tanto no hay otra capa mas.
Saludos.


Pues, esa capa única existente, no es en si misma un coste adicional que le quita lo "Nativo"?. Yo piendo que dbexpress es bueno, pero no tan bueno como ADO.


La franja horaria es GMT +2. Ahora son las 07:16:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi