hallo!
leider hat meine in die datei schreib methode noch den bug dass nicht alle zeilen in die
datei geschrieben werden sondern 10mal die gleiche zeile.
wo hab ich was übersehen???
die tabelle hat 45 felder und eine unbekannte anzahl zeilen
leider hat meine in die datei schreib methode noch den bug dass nicht alle zeilen in die
datei geschrieben werden sondern 10mal die gleiche zeile.
wo hab ich was übersehen???
die tabelle hat 45 felder und eine unbekannte anzahl zeilen
Code:
package data;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.sql.RowSet;
import config.connectionDB;
public class Mitarbeiter
{
public int readAnzahl()
{
int count = 0;
String select = "select count(*) from s_mitarbeiter ";
try
{
Statement st = connectionDB.getStatement();
st.executeQuery(select);
ResultSet rs = st.getResultSet();
while (rs.next())
{
count = rs.getInt(1);
}
}
catch (Exception e)
{
System.out.println("Fehler: " + e.getMessage());
}
return count;
}
public String getData()
{
String getDataQuery = "select top 5 * from s_mitarbeiter";
String content = "";
List<String> rowList = new ArrayList<String>();
try
{
Statement sta = connectionDB.getStatement();
sta.executeQuery(getDataQuery);
// Query abschicken
ResultSet rst = sta.getResultSet();
// Wieviele Felder??
int fieldQuantity = rst.getMetaData().getColumnCount();
// System.out.println("Anzahl der Felder: " + fieldQuantity);
while (rst.next())
{
for (int i = 1; i < fieldQuantity; i++)
{
int type = rst.getMetaData().getColumnType(i);
// Typ 2 = int
if (type == 2)
{
content = rst.getString(i);
}
// Typ 12 = char
else if (type == 12)
{
content = "'" + rst.getString(i) + "'";
}
// Typ 93 = date
else if (type == 93)
{
content = "'" + rst.getString(i) + "'";
}
rowList.add(content);
}
}
writeScript(rowList);
return content;
}
catch (SQLException ex)
{
System.out.println(ex);
}
return content;
}
public void writeScript(List<String> rowList)
{
// Zeilenweise in Textdatei schreiben
File file = new File(
"C:\\Dokumente und Einstellungen\\Desktop\\tabellenExportScript.txt"); // tabellenExportScript.txt
BufferedWriter bw;
String temp = "";
try
{
bw = new BufferedWriter(new FileWriter(file));
for (int j = 0; j < rowList.size(); j = j + 45)
{
for (int i = 0; i < rowList.size(); i++)
{
if (rowList.get(i) != null)
{
if (i <= 45 && i > j)
temp = temp + rowList.get(i) + ",";
}
}
String writeContent = temp.substring(0, temp.length() - 1);
bw.write("Insert Into table s_mitarbeiter values("
+ writeContent + ")");
bw.newLine();
}
bw.flush();
bw.close();
System.out.println("Fertig");
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void readScript()
{
try
{
File file = new File(
"C:\\Dokumente und Einstellungen\\Desktop\\tabellenExportScript.txt"); // tabellenExportScript.txt
// Zeilenweise auslesen
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while ((line = br.readLine()) != null)
{
System.out.println(line);
}
br.close();
}
catch (IOException exe)
{
System.out.println(exe);
}
}
}