Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-01-2009
advancexz advancexz is offline
Miembro
 
Registrado: jun 2008
Posts: 38
Poder: 0
advancexz Va por buen camino
Unhappy Crear Base de Datos con .bat

Soy yo pidiendo ayuda otra vez...

Quiero que un archivo .bat me ejecute la instruccion CREATE DATABASE basedatos, pero solo puedo llegar hasta el momento donde me conecto a MySQL, ya que dentro no puedo enviar nada con el .bat (o no se como) lo que esta despues de conectarme a MySQL no se manda hasta despues de salir de mysql


@echo off

echo Creando Base de Datos...
echo Creating Data Base...

"C:\Program Files\empresa\MySQL\MySQL Server 5.0\bin\mysql.exe" -uroot -proot

CREATE DATABASE basedatos;

echo Por favor espere...
echo Please wait...

"C:\Program Files\empresa\MySQL\MySQL Server 5.0\bin\mysql.exe" -uroot -proot empresa< "C:\Program Files\empresa\MySQL\MySQL Server 5.0\data\empresa.sql"

pause



sera posible que pueda mandarle CREATE DATABASE basedatos con un .BAT al batch de mysql?? alguna idea??
Responder Con Cita
  #2  
Antiguo 30-01-2009
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
Yo lo veo tan sencillo como añadir la linea create database empresa a tu script y accediendo inicialmente a la base de datos mysql:


"C:\Program Files\empresa\MySQL\MySQL Server 5.0\bin\mysql.exe" -uroot -proot mysql<"C:\Program Files\empresa\MySQL\MySQL Server 5.0\data\empresa.sql"
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 30-01-2009
advancexz advancexz is offline
Miembro
 
Registrado: jun 2008
Posts: 38
Poder: 0
advancexz Va por buen camino
no se como

es que es justamente lo que no puedo hacer, en el codigo que escribi, con esta linea entro a mysql:

"C:\Program Files\empresa\MySQL\MySQL Server 5.0\bin\mysql.exe" -uroot -proot

y despues le mando la instruccion para crear la base de datos

CREATE DATABASE basedatos;

pero esta ultima linea no aparece sino hasta que me salgo de mysql. Saben como mandarle comandos a mysql desde un archivo .bat??

creo que me ekivoke al decir create database basedatos y abajo poner empresa, en realidad me referia a la misma base de datos
Responder Con Cita
  #4  
Antiguo 30-01-2009
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
hmm creo que no entiendo vamos por partes:
Creas un archivo llamado script.sql con el siguiente contenido:
Código SQL [-]
Drop Database Empresa if exists;
Create Database Empresa;
use Empresa;
CREATE TABLE tablaPersona
(
codigo  char(5)
);
Fijate que puse el create database dentro del script, no dentro del archivo bat

luego dices a sql que ejecute ese script de la siguiente forma:


mysql -uroot -proot mysql < script.sql
__________________
self.free;
Responder Con Cita
  #5  
Antiguo 30-01-2009
advancexz advancexz is offline
Miembro
 
Registrado: jun 2008
Posts: 38
Poder: 0
advancexz Va por buen camino
ooorale

hice lo que me dices, de crear la base de datos en el script y no en el bat ( tienes toda la razón, porque no se me ocurrió :P), pero al ejecutar el script con esta sentencia:

mysql -proot -uroot mysql < script.sql

me manda error de sintaxis, y pues no lo quiere hacer. Cabe señalar que exactamente lo hago de la siguiente manera:

"c:\program files\empresa\sistema\MySQL\MySQL Server 5.0\bin\mysql" -proot -uroot mysql < script.sql

pongo toda la ruta, porque yo hice el instalador de mysql y todo jala bien, excepto que no me funciona el comando mysql en cmd y debo indicarle toda la ruta, pero bueno, ese no es problema, mi duda es si cuando me dijiste que indicara como base de datos a la de mysql (lo que puse en negritas) no habra algun problema... o quizas tenga que indicar algo en especial...

el codigo del script comienza asi:

DROP DATABASE EMPRESA IF EXISTS;
CREATE DATABASE EMPRESA;
USE EMPRESA;

y sea cual sea la primer linea me manda error de sintaxis en la primer linea...

gracias...
Responder Con Cita
  #6  
Antiguo 30-01-2009
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
Quizás sea por el drop database, no recuerdo, puede que me haya olvidado la sintaxis. Sin embargo es raro que cualquier linea que pongas te bota error. Intenta con un archivo más pequeño (que haga un SELECT, un USE o algo asi) y luego ve añadiendo poco a pocos tus lineas para encontrar la causa.

Lo de poner mysql era para tener la seguridad que siempre inicia con la base de datos pero creo que puedes quitar ese argumento.
__________________
self.free;
Responder Con Cita
  #7  
Antiguo 30-01-2009
advancexz advancexz is offline
Miembro
 
Registrado: jun 2008
Posts: 38
Poder: 0
advancexz Va por buen camino
Listo!

ya encontré el error, de verdad que estuvo muuuuuy raro...

me estaba marcando error de sintaxis, porque en el comienzo del script habia un caracter oculto, solo visible en ms-dos y que pude observar una vez que abri el archivo en WORD, ya que extrañamente me preguntaba en que formato queria abrirlo, y si lo hacia en UTF8 no podia ver ese caracter, asi que lo abri en modo MSDOS en el WORD y lo pude ver, el caracter oculto era este: ╗ o algo parecido, pero el caso es que estaba al principio y en notepad no podia verlo.

muchas gracias por contestar, me sacaron de un apuro...
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Crear base de datos dvlt .NET 2 04-12-2007 16:09:13
Crear base de datos xerkan Firebird e Interbase 10 04-10-2007 03:59:22
Crear base de datos y cargar datos desde delphi Albano MySQL 4 17-05-2007 20:01:18
Crear Base de Datos mateamargo SQL 5 10-03-2004 06:44:08
Crear base de datos con IBX xerkan Firebird e Interbase 6 08-03-2004 16:42:26


La franja horaria es GMT +2. Ahora son las 03:47:09.


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
Copyright 1996-2007 Club Delphi