Aplicacion Cliente-Servidor + BD. [tema cerrado]

Iniciado por moskita789, 7 Abril 2013, 04:34 AM

0 Miembros y 1 Visitante están viendo este tema.

moskita789

Si correcto..
Hagamos de cuenta que tengo una base de datos con solamente una tabla y quiero consultarla desde otra pc que se encuentra en la misma red.
Segun tengo entendido deberia:
Instalar Windows server en una maquina e montar sqlserver en ella.
y en otra maquina desde visual basic conectarme a esta.?
Necesito socket para eso? que necesito?

xustyx

Cita de: moskita789 en  7 Abril 2013, 09:12 AM
Si correcto..
Hagamos de cuenta que tengo una base de datos con solamente una tabla y quiero consultarla desde otra pc que se encuentra en la misma red.
Segun tengo entendido deberia:
Instalar Windows server en una maquina e montar sqlserver en ella.
y en otra maquina desde visual basic conectarme a esta.?
Necesito socket para eso? que necesito?

¿Necesitas obligatoriamente crear tu ese programa cliente?

Bueno mi consejo es que en una maquina instales un servidor de oracle, y en la otra un cliente y desde el cliente te conectes usando la consola al servidor.

Si necesitas desarrollar el cliente tu con VB necesitaras usar la libreria de oracle y comerte un poco el tarro para crear la conexion y luego las peticiones.

moskita789

Gracias, pero te me estas llendo de tema con todo respecto. Resulta interesante lo que decis pero es un trabajo para la universidad de una aplicacion cliente-servidor en visual basic.
Es decir que mi idea viene en instalar sqlserver en una maquina y crear un base de datos de algun negocio con control de stock y desde otra maquina crear una aplicacion que realize consultas y esa base de dato que esta creada en la maquina que contiene el sqlserver. Me explico?

xustyx

Cita de: moskita789 en  7 Abril 2013, 09:19 AM
Gracias, pero te me estas llendo de tema con todo respecto. Resulta interesante lo que decis pero es un trabajo para la universidad de una aplicacion cliente-servidor en visual basic.
Es decir que mi idea viene en instalar sqlserver en una maquina y crear un base de datos de algun negocio con control de stock y desde otra maquina crear una aplicacion que realize consultas y esa base de dato que esta creada en la maquina que contiene el sqlserver. Me explico?

Pues a currar!!!

Asi que tienes que programar tu el cliente y hacer peticiones a una base de datos sqlserver :)

Mirate la libreria que utiliza sqlserver para VB y ya tendras tu respuesta :D

Yo es que toco mas C# y oracle pero es lo mismo. Basicamente creas un servidor Oracle con un listener y luego usando la libreria haces la peticion usando el User/pass ip/port y la select :) debe ser facil.

moskita789

Alguien que pueda orientarme un poco mas sobre que herramientas utilizar para hacer una aplicacion cliente en servidor de este tipo? siempre recordar que el servidor debe contar con una Base de datos.

Barugasu

¿Quieres orientación o quieres que te digan todo lo que tienes que hacer paso por paso?

Por que si lo que quieres es orientación, xustyx ya te dió demasiada y creo que lo dijo todo bastante claro. Ahora, si lo quieres todo paso por paso, entonces dime, ¿a qué fuiste a la universidad?

No está de más agradecer a xustyx por su ayuda antes de tirarlo a loco y pedir más opiniones.

Saludos. Barugasu.

moskita789

Bueno que hermosa manera de contestar!
Agradecido obviamente que le estoy y el no creo que este ofendido por mi respuesta.
Si pregunto algo puntual es porque no lo se, no estoy pidiendo que me hagan el trabajo, no pedi codigo fuente, ni tampoco un ejemplo. Simplemente pedi que me explique de que se trata en concreto la aplicación cliente servidor.
Pero Gracias, no volvere a consultar mas sobre el tema.

Un consejo si no te interesa contestar de buena manera no lo hagas porque te doy un ejemplo en este foro no vuelvo a ingresar.

Barugasu

Gracias, qué bueno que te haya gustado.

Yo no sé si el está ofendido o no, símplemente dije que a mis ojos no se veía nada agradable tu comportamiento.

De qué se trata en concreto una aplicación cliente-servidor? Los foros sirven para preguntar sobre cosas que no se encuentran fácil por internet o bien, para compartir algo nuevo, y temas como el cual tú buscas, hay miles en Google.

Si no me interesara contestar "de buena manera", como tú le dices, nisiquiera me tomaría la molestia de comentarte; Ni que tú me fueras a ayudar en algo.

No vuelves a ingresar? Oh, es una pena; Bueno, los usuarios van y vienen.

Barugasu.

BlackZeroX

#18
Para realizar eso y no implementar otros componentes en tu aplicación debes usar ODBC... Crea tu aplicación normalmente, como si la BDD estuviese en la misma maquina que la aplicación que desarrollas, después lo único que debes hacer es que tanto el cliente y el servidor NO se comuniquen directamente al menos que necesites instrucciones ajenas a SQL o referentes a la BDD, si que las dos aplicaciones que estas desarrollando se conecten a la BDD, ahora bien si lo que necesitas es una App SEGURA donde el servidor solo tendrá acceso una sola persona puedes mandar texto por Sockets en formato CVS (http://es.wikipedia.org/wiki/CVS) o el que gustes pero diseñando un protocolo pero nunca SQL ni cifrado ni comprimido y dejar la carga de la conexión a el servidor.

Si optas por ODBC requieres el Conector ODBC esto es valido para aplicaciones de red como locales:

Conector ODBC para MySQL: http://dev.mysql.com/downloads/connector/odbc/5.1.html

Al conectar por ADO solo agregas esta string connection (OJO debes crear la ODBC)
Código (vb) [Seleccionar]

CON.Open “DRIVER={MySQL ODBC 3.51 Driver};DATABASE=ALGUNABASEDEDATOS;SERVER=infragelux.sytes.net;UID=BlackZeroX;password=1234;PORT=3306;”


*** Otras String Connection:  http://www.connectionstrings.com/

Debes cambiar los parámetros DATABASE, SERVER, UID, password y PORT según sea el caso... OJO si la BDD es local pones Localhost o 127.0.0.1 o la ip o dns respectiva en casos ajenos.

Para crear la ODBC puedes seguir estos pasos: http://msdn.microsoft.com/es-mx/library/cc879308(v=sql.105).aspx
OJO solo que al momento de seleccionar SQL Native... Seleccionas el Driver Conector ODBC a la BDD que requieras... en este caso seria el de MySQL...

Dulces Lunas
The Dark Shadow is my passion.

BlackZeroX

#19
Cita de: Barugasu en  7 Abril 2013, 08:49 AM
Tienes qué analizar primero las 2 computadoras.

¿Ambas tienen instalado y registrado corréctamente el componente MSWINSCK.ocx?

Si es así, entonces programar la aplicación en VB no debe ser problema.

Ahora, ¿qué pasa si las computadoras no cuentan con el MSWINSCK.ocx?

No importa, el CSocketMaster es un buen sustituto del Winsock y no tienes que tenerlo registrado en las computadoras, basta con añadirlos al proyecto de la aplicación.

Una vez que analizaste la situación de ambas computadoras.. ¡NO! Todavía no vamos a programar nada. Es más importante que instales todo lo que vas a necesitar, y con esto me refiero a instalar el servidor, el MySQL y demás.

Aquí hay unos 4 pasos que el autor te recomienda seguir, ya para "dejar lista" la parte técnica y luego ponernos a programar.

http://www.vertutoriales.com/index.php/conectar-visual-basic-6-vb6-con-mysql-pasos-previos-de-configuracion-para-eludir-problemas-o-errores/

Cuando termines esos pasos, regresa y avanzamos más en el tema.

Saludos. Barugasu.

PD: Por cierto, en el paso número 1, donde dice que configures tu base de datos para que se pueda acceder "desde el exterior" y no desde el localhost, se refiere a que lo configures todo en base a tu IP pública.

En una aplicación que interactua con la BDD (ya sea local o en red) no es necesario  MSWINSCK.ocx ni mucho menos
CSocketMaster.cls...

Solo se requiere el Motor de la BDD y el Conector ODBC... y sin mencionar saber ADO para poderlo implementar por lo tanto TCP/IP no es necesario... el conector se encargaría de la capa de transmisión sin que nos enrollemos con dicha capa...

Dulces Lunas!¡.
The Dark Shadow is my passion.