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 02-07-2023
Eduard23 Eduard23 is offline
Miembro
 
Registrado: mar 2023
Posts: 32
Poder: 0
Eduard23 Va por buen camino
Crear BD MySql en Tiempo de Ejecucion

hola amigos necesito de su valiosa ayuda estoy haciendo una aplicacion con motor de base de datos mysql y necesito crear en tiempo de ejecucion una BD
desde el comando funciona perfecto pero cuando lo hago desde el codigo no,les muestro
desde el comando:
C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql.exe -uroot -p1234 < ejemplo.bat ejemplo.bat contiene Create database prueba;

desde el codigo:
comand:= 'C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe';
cmd := '"mysql.exe -uroot -p1234 < ejemplo.bat"';
ShellExecute(0,'open', Pchar(comand), Pchar(cmd), nil, SW_NORMAL );

no da error pero no crea la BD prueba
Espero por su valiosa ayuda.
Responder Con Cita
  #2  
Antiguo 02-07-2023
CrazySoft CrazySoft is offline
Miembro
 
Registrado: abr 2005
Posts: 97
Poder: 20
CrazySoft Va por buen camino
Buenas tardes, me parece que esta mal tu sintaxis porque estas llamando dos veces a mysql.exe en el comando shell


prueba creando un bat con todo lo que quiero hacer y ejecutas el shell


ejemplo.bat



@echo off
echo Creando Base de Datos...
echo Por favor espere...
"d:\MySQL57\bin\mysql.exe" -uroot -pXXXX < "e:\_scri\ejecuta.sql"





ejecuta.sql
CREATE DATABASE basedatos;
use basedatos;
CREATE TABLE prueba (
codigo VARCHAR (10),
nombre VARCHAR (200),
valor INT (11)
);




desde el código:

comand:= 'e:\_scri\prueba.bat';
ShellExecute(0,'open', Pchar(comand), nil, nil, SW_NORMAL );
Responder Con Cita
  #3  
Antiguo 03-07-2023
Eduard23 Eduard23 is offline
Miembro
 
Registrado: mar 2023
Posts: 32
Poder: 0
Eduard23 Va por buen camino
Gracias por la pronta respuesta hice lo que me indicastes cree un bat con todo a realizar
te muestro

Crea_BD.Bat --> 'C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe -uroot -p1234 < Ejemplo.Sql';
Ejemplo.Sql --> Create Database mydatabase;
Comand:='C:\Program Files\MySQL\MySQL Server 5.5\bin\Crea_BD.Bat';
ShellExecute(0,'open', Pchar(comand), nil, nil, SW_NORMAL );

Sigue igual no crea la BD
Responder Con Cita
  #4  
Antiguo 03-07-2023
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.757
Poder: 21
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
¿Has ejecutado el script directamente desde la línea de comando?
Crea un bat que contenga la línea que deseas y una pausa

Código:
Crea_BD.Bat
-----------
C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe -uroot -p1234 < Ejemplo.Sql
PAUSE
Posibles errores que podrías ver:

- No se encuentra C:\Program
Deberás poner todo entre comillas para que CMD lo entienda como una sola "palabra".
Código:
"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe" -uroot -p1234 < Ejemplo.Sql
- mysql se queje de usuario y contraseña

- mysql no esté donde indicas, sinó en otra carpeta

- Error en las sentencias utilizadas para crear la base de datos. (quizás falta un commit?)
Responder Con Cita
  #5  
Antiguo 04-07-2023
Eduard23 Eduard23 is offline
Miembro
 
Registrado: mar 2023
Posts: 32
Poder: 0
Eduard23 Va por buen camino
Buenas tardes Muchas gracias duilioisola era eso la ruta...
Hasta una Proxima vez

Saludos
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 campo en tiempo de ejecucion tarco35 Tablas planas 9 28-06-2012 12:32:35
MySQL ODBC en tiempo de ejecucion FOV2001 MySQL 2 23-02-2009 00:26:19
Crear BD mysql en tiempo de ejecucion vicvil MySQL 4 05-05-2008 23:55:11
crear TTabSheet en tiempo de ejecucion Neiro Lazarus, FreePascal, Kylix, etc. 4 07-10-2006 00:03:08
Crear un DSN en tiempo de ejecucion neyvan Conexión con bases de datos 7 21-05-2004 18:41:45


La franja horaria es GMT +2. Ahora son las 00:45:28.


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