fbpx

Foros

consultas SQL a ser...
 
Avisos
Vaciar todo

consultas SQL a servidor MySQL

Página 1 / 2

lacabra25
Respuestas: 84
Registrado
Topic starter
(@lacabra25)
Ardero verdadero
Registrado: hace 16 años

Hola, estoy intentando manejar una base de datos MySQL (y si puedo, cualquiera que use SQL) desde un programa en C que estoy escribiendo, he estado buscando información y he visto que la consulta en las bases de datos relacionales que usan el lenguaje SQL para las consultas ante una consulta usando SQL envian los datos correspondientes ejecutando las acciones que fuese necesario, el primer problema que encuentro es que no consigo por ningun lado un manual de SQL completo ni se donde esta la referencia del mismo traducida al castellano (se que forma parte de los estandars ISO, pero no se donde obtenerlo) y el segundo problema que he encontrado es que hasta el momento, por lo que he estado viendo, con SQL puedo hacer una consulta a una base de datos que soporte SQL pero hyMySQL por ejemplo tiene posibilidad de identificarse como diferentes usuarios y tener varias bases de datos diferentes y no se como conectarme al servidor de MySQL con un usuario y contraseña determinados, seleccionar una base de datos y empezar a usar SQL para manejar la base de datos. En resumen, intento conectar desde un programa en C con una base de datos de MySQL (y si pudiese con cualquier base de datos SQL, mejor) y no encuentro manuales de SQL en español ni manuales del protocolo que usa MySQL para comunicarse.

Solo necesitaria saber que datos enviar y que datos enviaria el servidor para poder acceder a la base de datos, la conexion a traves de internet desde el programa en C ya la tengo resuelta usando SNL y el programa se puede conectar usando TCP sin problemas, ahora solo tengo que saber como comunicarme con el servidor.

Gracias de antemano.

Responder
7 respuestas
juanjo
Respuestas: 451
Socio
(@juanjo)
Ardero reputado
Registrado: hace 15 años

Has consultado esta página.

http://www.mysql-hispano.org/

Según lo que cuentas esto te puede venir muy bien:
---------------------------
Programación de aplicaciones MySQL con C
En este documento se da una introducción al uso del API C que proporciona MySQL para el desarrollo de aplicaciones.
Autor: Jorge Jesús Churruca
Fecha publicación: 22 Junio del 2004
Enviado por: eduardo
Lecturas: 241397
Última actualización: 21 Junio del 2004
--------------------------------------------------------
http://www.mysql-hispano.org/page.php?id=30&pag=1

Responder
fj_sanchez
Respuestas: 1083
Socio
(@fj_sanchez)
Ardero noble
Registrado: hace 16 años

Concretamente en este enlace (de la página que ya te han dicho http://www.mysql-hispano.org/page.php?id=30 " onclick="window.open(this.href);return false; ).

Un par de apuntes, eso de que SQL es estándar... pues si, pero no todos lo implementan igual. Es como CSS o HTML, es un estándar, pero cada uno lo implementa como le da la gana. Lo de usuarios y bases de datos, tendrás que tener un usuario y una contraseña y dependiendo de los privilegios de este, podrás crear tantas cosas como quieras. En C existe una estructura llamada st_mysql que tiene unos campos char *host,*user,*passwd,*db que es donde especifícas la dirección, el usuario, la contraseña y la base de datos a la que conectar.

No es difícil, aunque si no tienes ni idea de SQL igual primero deberías practicar con algo más fácil como PHP por ejemplo.

Un saludo.

Responder
lacabra25
Respuestas: 84
Registrado
Topic starter
(@lacabra25)
Ardero verdadero
Registrado: hace 16 años

Voy a echarle un vistazo a la pagina de mysql hispano, habia estado mirando en la pagina de mysql (la oficial), wikipedia, en una de SQL pero no conocia esa.
Respecto a lo de la API en C, por lo que tengo entendido la API se encarga no solo del protocolo, la comunicacion, con el servidor de la base de datos sino que tambien se encarga de la conexion (TCP, IP, ...) pero yo ya tengo programadas las funciones para la conexion tanto usando TCP como UDP y solo necesito saber el protocolo con el que comunicarme con el servidor, saber que enviarle y de que forma me respondera el servidor con los datos.
En PHP ya he conectado con bases de datos MySQL, la cuestion es que PHP usa funciones para la conexion, se abstrae más de lo que yo quiero, ya que busco el mayor control posible tanto en la consulta como en la velocidad de ejecucion del programa en cada consulta (de ahi que quiera conectarme usando las funciones que ya tengo programadas, con las que puedo limitar el tiempo de espera a la respuesta del servidor cuando compruebo el socket con precision de microsegundos), creo que seguramente no fui demasiado claro cuando hice la pregunta sobre este tema pero de forma resumida lo que necesito es saber el protocolo con el que se comunica MySQL (y si además sabeis el de otras como oracle u otra pues tambien estaria bien), disculpar si se me olvido mencionar lo de protocolo cuando formule la pregunta.
Respecto a lo de que SQL lo implemente cada cual como le de la gana, me lo imaginaba aunque no lo sabia seguro, pero sabiendo lo que tienen en comun las principales implementaciones (como MySQL, oracle y otras) y en que se diferencian se podria utilizar todo el codigo que tuviesen en común para ambas implementaciones diferentes.
Como ya he comentado, echare un vistazo en la web de MySQL hispano y ya os contare de los resultados; gracias a ambos por la respuesta.

Responder
juanjo
Respuestas: 451
Socio
(@juanjo)
Ardero reputado
Registrado: hace 15 años

Buenas,

Te refieres a las sentecias SQL. Por ejemplo SHOW TABLES; DESC; SELECT * FROM nombre_tabla; INSERT ..; CREATE ...; etc.

Esto lo puedes encontrar en el manual de usuario o de administración de MySQL, no se en que capítulo está pero toda esta información la tienes clara y abundante en los manuales.

Responder
Página 1 / 2
Compartir: