Zusammenfassung der Bedienung der Datenbank mit SQLite aus Processing3.
Ich verweise auf die folgenden Seiten. http://mslabo.sakura.ne.jp/WordPress/make/processing%E3%80%80%E9%80%86%E5%BC%95%E3%81%8D%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/sqlite%E3%82%92%E4%BD%BF%E3%81%86-db%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3/
Öffnen Sie zunächst Processing und speichern Sie die Datei. Dann wird ein Ordner mit Skizzen erstellt. (Speichern Sie es diesmal als DB_test_1.pde.)
Speichern Sie als Nächstes den JDBC, der für den Betrieb von SQLite aus Processing erforderlich ist, im Skizzenordner.
Es gibt verschiedene Arten von JDBC für jede SQL-Sprache, aber JDBC für SQLite kann von der folgenden Site bezogen werden. https://github.com/xerial/sqlite-jdbc
Erstellen Sie für den erhaltenen JDBC einen neuen Codeordner im Skizzenordner und speichern Sie ihn darin.
Damit sind die Vorbereitungen abgeschlossen.
Da Processing eine Java-Umgebung ist, können Java-Pakete verwendet werden. Verwenden Sie bei Verwendung von SQL aus Java das Paket java.sql.
Dieses Paket java.sql enthält Klassen, mit denen eine Verbindung zu DBMS (DataBase Management System) hergestellt / getrennt und SQL-Anweisungen gesendet werden können.
Dieses Mal verwenden wir die DriverManager-Klasse, um die Verbindung zu DBMS vorzubereiten, die Connection-Klasse, um eine Verbindung zu DBMS herzustellen, und die Statement-Klasse, um SQL-Anweisungen zu senden.
Der endgültige Code ist unten.
DB_test_1.pde
import java.sql.*; //Paketimport
Connection connection = null; //Deklarieren Sie eine Klasse für die Verbindung
void setup(){
//Geben Sie den absoluten Pfad zum Generieren der DB-Datei im Skizzenordner an. Wenn testen.Wenn db nicht vorhanden ist, testen Sie beim Ausführen der Skizze.db wird neu erstellt
String dbName = sketchPath("test.db");
// OPEN DB
try{
connection = DriverManager.getConnection("jdbc:sqlite:" + dbName);
Statement statement = connection.createStatement();
statement.setQueryTimeout(30); // set timeout to 30 sec
statement.executeUpdate("drop table if exists person");
//Senden Sie eine SQL-Anweisung, um eine neue Tabelle zu erstellen
statement.executeUpdate("create table person(id integer, name)");
//Versuchen Sie, Daten in die erstellte Tabelle einzufügen
statement.executeUpdate("insert into person values(1, 'leo')");
statement.executeUpdate("insert into person values(2, 'yui')");
//Wählen Sie den gesamten Inhalt der Tabelle aus und laden Sie ihn in die Resultset-Klasse
ResultSet rs = statement.executeQuery("select * from person");
while(rs.next()){ //Zeigen Sie die in ResultSet gelesenen Daten an
// read the result set
String format = "name: %4s, id: %4d";
println(String.format(format, rs.getString("name"), rs.getInt("id")));
//print("name: " + rs.getString("name"));
//println(", id: " + rs.getInt("id"));
}
} catch( SQLException e ){
println(e.getMessage());
} finally{
dbClose();
}
}
//Eine Funktion, die nur die Ausnahmebehandlung am Ende der Datenbank zusammenfasst
void dbClose(){
try{
if(connection != null){
connection.close();
}
} catch (SQLException e){
e.printStackTrace();
}
}
Durch Ausführen des obigen Codes wird eine neue Datei test_db erstellt und die eingefügten Daten in der Verarbeitungskonsole angezeigt.
Das Obige ist eine einfache Erklärung zur Verwendung der Datenbank.
Recommended Posts