Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Crear String con sentencia SQL

Estas en el tema de Crear String con sentencia SQL en el foro de Mysql en Foros del Web. Hola a todos, quiero crear en un string una sentencia SQL. Lo hago así: Class.forName("org.sql.Driver"); Connection con = DriverManager.getConnection( "jdbc:sql://localhost/Mi_BD", "user", "1111" ); Statement stmt ...
  #1 (permalink)  
Antiguo 21/04/2008, 03:52
 
Fecha de Ingreso: noviembre-2006
Mensajes: 199
Antigüedad: 17 años, 5 meses
Puntos: 2
Crear String con sentencia SQL

Hola a todos, quiero crear en un string una sentencia SQL.
Lo hago así:


Class.forName("org.sql.Driver");
Connection con = DriverManager.getConnection( "jdbc:sql://localhost/Mi_BD", "user", "1111" );

Statement stmt = con.createStatement();
String sql = "SELECT * FROM ESQUEMA_MUN.espacios";
ResultSet rs = stmt.executeQuery(sql);

ESQUEMA_MUN es un esquema que tengo en mi base de datos, por lo que debería ir entre comillas, pero no puedo ponerlo pues me da errores de sintaxis. ¿Cómo hago para referenciarlo?

Gracias,

Un saludo!
  #2 (permalink)  
Antiguo 21/04/2008, 05:24
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Re: Crear String con sentencia SQL

MySQl pone siempre los nombres entre acentos graves (`), no entre apóstrofes (') o comillas ("), pero eso no quiere decir que no interprete los nombres de las tablas o las bases de datos si los pones sin nada, mientras existan.
El string tal y como lo has puesto debería funcionar sin más.
De todos modos, ,si quieres incorporar las comillas, lo que tienes que hacer es simplemente encadenar "SELECT " FROM " + (caracter de comilla) + "ESQUEMA_MUN" + (caracter de comilla) + "." + (caracter de comilla) + "espacios" + (caracter de comilla) . y colocarlo dentro de una variable. En este caso (caracter de comilla) está representando la función (que desconozco) de java qmue te devuelva el caracter (").
Al menos así debo hacer en VB.Net, donde el caracter se genera con la clase y método: ControlCharacter.Quote.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:28.