Zum Inhalt springen

[ excel nach sql ]


Empfohlene Beiträge

Geschrieben

Hi,

das ist der Datenbankzugriff und eine Datenbankausgabe. Vielleicht bringt es dir was.

[PHP]

import java.sql.*;

import javax.swing.*;

import javax.swing.table.*;

import java.util.*;


class DBView extends JFrame {

	JTable table;

	Statement stmt;


	public DBView(String q) {

		try {

			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

			Connection c = DriverManager.getConnection("jdbc:odbc:kurs");

			stmt = c.createStatement();	

		}

		catch (Exception e) { 

			System.out.println(e); 

		}

		setSize(500,500);

		MySQLTable t = new MySQLTable(q);

		table = new JTable(t);

		getContentPane().add(table);

		setVisible(true);

	}


	class MySQLTable extends AbstractTableModel {

		Vector data = new Vector();


		public MySQLTable(String q) {

		    try {

			ResultSet rs = stmt.executeQuery(q);

			ResultSetMetaData md = rs.getMetaData();

			int cols = md.getColumnCount();

			while (rs.next()) {

				Vector u = new Vector();

				for (int i = 1; i <= cols; i++) {

					u.add(rs.getString(i));

				}

				data.add(u);

			}

		    }

		    catch (Exception e) {

			System.out.println("Fahler: " + e);

		    }

		}


		public int getColumnCount() {

			Vector v = (Vector)data.get(0);

			return v.size();

		}


		public int getRowCount() {

			return data.size();		

		}


		public Object getValueAt(int row, int column) {

			Vector v = (Vector)data.get(row);

			Object o = v.get(column);

			return o;

		}

	}


	public static void main(String[] arg) {

		new DBView(arg[0]);

	}

}


import java.sql.*;


class DB {

	static Statement stmt;


	public static void main(String[] arg) throws Exception {

		connect();

		create();

		insert();

		select();

	}


	private static void select() throws Exception {

		ResultSet rs = stmt.executeQuery("SELECT * FROM PERSONEN;");

		while (rs.next()) {

			String name = rs.getString("NAME");

			String vname = rs.getString(2);

			System.out.println("Datensatz: " + name + " " + vname);

		}


		String name = "Meier";

		String vname = "Stefan";

		String spalte = "NAME";

		String table = "PERSONEN";


		String q = "SELECT " + spalte + " FROM " + table;

		q += " WHERE NAME='" + name + "' OR VNAME='" + vname;

		q += "' ORDER BY NAME;";


		rs = stmt.executeQuery(q);

		while (rs.next()) {

			String s = rs.getString(1);

			System.out.println(s);

		}

	}


	private static void insert() throws Exception {

		String n = "Müller";

		String v = "Hubert";


		stmt.executeUpdate("INSERT INTO PERSONEN VALUES(' " + n + " ', ' " + v + " ');");


		stmt.executeUpdate("INSERT INTO PERSONEN VALUES('Wagenpfeil', 'Stefan');");

		stmt.executeUpdate("INSERT INTO PERSONEN VALUES('Huber', 'Karl');");

		stmt.executeUpdate("INSERT INTO PERSONEN VALUES('Meier', 'Resi');");

		stmt.executeUpdate("INSERT INTO PERSONEN VALUES('Hinterhofer', 'Zenzi');");

		//stmt.executeUpdate("INSERT INTO PERSONEN VALUES(' ', ' ');");

	}


	private static void create() throws Exception {

		stmt.execute("CREATE TABLE PERSONEN(NAME VARCHAR(20), VNAME VARCHAR(20));");

	}


	private static void connect() throws Exception {

		Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

		Connection c = DriverManager.getConnection("jdbc:odbc:kurs");

		stmt = c.createStatement();	

		System.out.println("...verbunden");

	}

}

[/PHP]
[/code]
Geschrieben
Original geschrieben von mamamia

hallo..

ich will ein programm schreiben was mir eine excel datei mit 3 spalten in eine sql datenbank schreibt..

oder gibt es da schon ein prog???

Ich stand vor folgender Problemstellung: Ich hatte ein super Excel-Sheet mit mehreren Blättrern, die Content enthielten, die in die datenbank mussten.

Du kannst doch mit Excel Spalten automatisch befüllen lassen. Also kannst du auch die SQL-Statements automatisch aufbauen lassen. Das sieht dann in der Formel so ähnlich aus wie

="INSERT INTO sup_oberbegriffe ( obe_sequence, obe_begriff, obe_reftableid ) VALUES ( 2, '"&A8&"', 101 );"

Du verstehst, worauf ich hinaus will? In wie fern ich dir jetzt Excel erklären soll, muss du sagen. Ich kenn deinen Stand nicht.

an Javaanfänger: Es reicht durchaus, wenn du [ PHP ] alleine und nicht [ CODE ] UND [ PHP ] nimmst. ;)

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...