# mysql jdbc batch files ausführen.



## mlange8801 (5. Nov 2006)

Hallo,

ich würde gerne phpmyadmin exporte von Datenbanken einfach als Datei einlesen und ausführen lassen.
Bsp:
	
	
	
	





```
-- phpMyAdmin SQL Dump
-- version 2.6.2-Debian-3sarge1
-- [url]http://www.phpmyadmin.net[/url]
-- 

-- --------------------------------------------------------

-- 
-- Tabellenstruktur für Tabelle `data_newsletter_channels`
-- 

CREATE TABLE IF NOT EXISTS `data_newsletter_channels` (
  `id` int(11) NOT NULL auto_increment,
  `modified` timestamp NOT NULL,
  `channelname` varchar(255) NOT NULL default '',
  `comment` text,
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=17 ;

-- 
-- Daten für Tabelle `data_newsletter_channels`
-- 

INSERT INTO `data_newsletter_channels` VALUES (16, '2006-10-29 13:04:52', 'Test Newsletter', '');
```
wenn ich das einlese und mit stmt.executeUpdate(sql)
ausführe gibt es eine sql exception.
Weiß jemand wie man das hinbekommt, ohne den dump zu ändern?
Danke 
mark


----------



## SlaterB (5. Nov 2006)

kann man überhaupt mit JDBC Tabellen erstellen? 
klappt das in einer einzelnen Anfrage bei dir?

spontan denke ich, dass mit JDBC auf jeden Fall solch größere Dateien nicht zu machen sind,
was möglich ist siehst du hier
http://www.galileocomputing.de/open...sel20_010.htm#Rxx747java20010040008371F02310A

das bedeutet, dass du deine Datei einwenig aufspalten musst, vielleicht nur ganz rudimentär:
Leerzeilen und Zeilen beginnend mit '--' gleich mal löschen, sicher ist sicher,
und dann nimmst du ein Semikolon als letztes Zeichen einer Zeile als Signal zur Trennung zweier Kommandos


----------



## bronks (5. Nov 2006)

Das funktioniert, aber ein bissl anders. Ich habe es schon mal getestet. Leider kann ich den Code dazu nicht mehr finden. Dafür weiß ich, daß die Vorlage dazu vor ca. 1,5 Jahren hier gepostet wurde.

Auf jeden Fall funktioniert das so:
1. Du machst einen Upload Deiner DDL auf den Server
2. und führst auf die DB einen "Insert into from file" aus.


----------



## mlange8801 (5. Nov 2006)

Hi,

vielen Dank für die Info, dass mit der Datei auf dem Server ist in meinem Fall leider nicht möglich.
Ich werde die ddl dann doch wohl parsen und in einzelne Statements zerlegen - anscheinend machen schon mehrere statements Probleme.

cu mark


----------

