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

error 1046 no database selected

Estas en el tema de error 1046 no database selected en el foro de Mysql en Foros del Web. les cuento que no se casi nada de bases de datos y el administrador de la red se fue de licencia y me dejoel siguiente ...
  #1 (permalink)  
Antiguo 19/01/2011, 12:36
 
Fecha de Ingreso: enero-2011
Mensajes: 1
Antigüedad: 13 años, 3 meses
Puntos: 0
Pregunta error 1046 no database selected

les cuento que no se casi nada de bases de datos y el administrador de la red se fue de licencia y me dejoel siguiente bat:

mysql -u administ -Pepin0 -h 192.168.2.14 -e "INSERT INTO gps_0111 SELECT t1.* from gps t1,logs t2 WHERE t1.log=t2.numero AND t2.fecha>=20110101 AND t2.fecha<20110201"
mysql -u administ -Pepin0 -h 192.168.2.14 -e "DELETE FROM gps WHERE log IN (SELECT numero FROM logs WHERE fecha>=20110101 AND fecha<20110201)"

Cuando corro el bat en dos me dice:

error 1046 (3D000) at line 1: No database selected

este error me lo da para las dos sentencias.

Por las dudas reinicie el servidor y me fije que en el directorio que esta el bat estubiera el mysql.exe

Espero que me puedan dar una mano desde ya gracias
  #2 (permalink)  
Antiguo 19/01/2011, 12:47
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
Respuesta: error 1046 no database selected

El problema se da porque si bien se puede enviar una sentencia DML desde linea de comandos de DOS, para que funcione, la misma debe hacerse contra una base seleccionada, o bien la sentencia debe indicar en el nombre de la base, cuál es la base donde están.

Código MySQL:
Ver original
  1. DELETE FROM nombrebase.gps WHERE log IN (SELECT numero FROM logs WHERE fecha>=20110101 AND fecha<20110201)

En tu caso sería:
Código:
mysql -uadminist -Pepin0 -h192.168.2.14 -e "INSERT INTO nombrebase.gps_0111 SELECT t1.* from gps t1,logs t2 WHERE t1.log=t2.numero AND t2.fecha>=20110101 AND t2.fecha<20110201"
mysql -uadminist -Pepin0 -h192.168.2.14 -e "DELETE FROM nombrebase.gps WHERE log IN (SELECT numero FROM logs WHERE fecha>=20110101 AND fecha<20110201)"
donde nombrebase es el nombre de la base dond se asienta la tabla.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 15:08.