import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
import java.sql.ResultSet ;
import java.sql.SQLException ;
public class Main {
public static void main
( String [ ] args
) {
String URL = "jdbc:h2:mem:testdb" ; // Temporary in-memory DB
String createTableSQL
= "CREATE TABLE products2025 (" + "id INT AUTO_INCREMENT PRIMARY KEY, " +
"name VARCHAR(50))" ;
String insertSQL1
= "INSERT INTO products2025(name) VALUES('Product1')" ; String insertSQL2
= "INSERT INTO products2025(name) VALUES('Product2')" ; String selectSQL
= "SELECT * FROM products2025" ;
try (
Statement stmt
= connection.
createStatement ( ) ) {
// Create table
stmt.execute ( createTableSQL) ;
// Insert data
stmt.execute ( insertSQL1) ;
stmt.execute ( insertSQL2) ;
// Fetch data
System .
out .
println ( "ID | Name" ) ; while ( rs.next ( ) ) {
System .
out .
println ( rs.
getInt ( "id" ) + " | " + rs.
getString ( "name" ) ) ; }
e.printStackTrace ( ) ;
}
}
}
aW1wb3J0IGphdmEuc3FsLkNvbm5lY3Rpb247CmltcG9ydCBqYXZhLnNxbC5Ecml2ZXJNYW5hZ2VyOwppbXBvcnQgamF2YS5zcWwuU3RhdGVtZW50OwppbXBvcnQgamF2YS5zcWwuUmVzdWx0U2V0OwppbXBvcnQgamF2YS5zcWwuU1FMRXhjZXB0aW9uOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewoKICAgICAgICBTdHJpbmcgVVJMID0gImpkYmM6aDI6bWVtOnRlc3RkYiI7IC8vIFRlbXBvcmFyeSBpbi1tZW1vcnkgREIKICAgICAgICBTdHJpbmcgVVNFUiA9ICJzYSI7CiAgICAgICAgU3RyaW5nIFBBU1NXT1JEID0gIiI7CgogICAgICAgIFN0cmluZyBjcmVhdGVUYWJsZVNRTCA9ICJDUkVBVEUgVEFCTEUgcHJvZHVjdHMyMDI1ICgiICsKICAgICAgICAgICAgICAgICJpZCBJTlQgQVVUT19JTkNSRU1FTlQgUFJJTUFSWSBLRVksICIgKwogICAgICAgICAgICAgICAgIm5hbWUgVkFSQ0hBUig1MCkpIjsKCiAgICAgICAgU3RyaW5nIGluc2VydFNRTDEgPSAiSU5TRVJUIElOVE8gcHJvZHVjdHMyMDI1KG5hbWUpIFZBTFVFUygnUHJvZHVjdDEnKSI7CiAgICAgICAgU3RyaW5nIGluc2VydFNRTDIgPSAiSU5TRVJUIElOVE8gcHJvZHVjdHMyMDI1KG5hbWUpIFZBTFVFUygnUHJvZHVjdDInKSI7CiAgICAgICAgU3RyaW5nIHNlbGVjdFNRTCA9ICJTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzMjAyNSI7CgogICAgICAgIHRyeSAoCiAgICAgICAgICAgIENvbm5lY3Rpb24gY29ubmVjdGlvbiA9IERyaXZlck1hbmFnZXIuZ2V0Q29ubmVjdGlvbihVUkwsIFVTRVIsIFBBU1NXT1JEKTsKICAgICAgICAgICAgU3RhdGVtZW50IHN0bXQgPSBjb25uZWN0aW9uLmNyZWF0ZVN0YXRlbWVudCgpCiAgICAgICAgKSB7CgogICAgICAgICAgICAvLyBDcmVhdGUgdGFibGUKICAgICAgICAgICAgc3RtdC5leGVjdXRlKGNyZWF0ZVRhYmxlU1FMKTsKCiAgICAgICAgICAgIC8vIEluc2VydCBkYXRhCiAgICAgICAgICAgIHN0bXQuZXhlY3V0ZShpbnNlcnRTUUwxKTsKICAgICAgICAgICAgc3RtdC5leGVjdXRlKGluc2VydFNRTDIpOwoKICAgICAgICAgICAgLy8gRmV0Y2ggZGF0YQogICAgICAgICAgICBSZXN1bHRTZXQgcnMgPSBzdG10LmV4ZWN1dGVRdWVyeShzZWxlY3RTUUwpOwoKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJJRCB8IE5hbWUiKTsKICAgICAgICAgICAgd2hpbGUgKHJzLm5leHQoKSkgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHJzLmdldEludCgiaWQiKSArICIgfCAiICsgcnMuZ2V0U3RyaW5nKCJuYW1lIikpOwogICAgICAgICAgICB9CgogICAgICAgIH0gY2F0Y2ggKFNRTEV4Y2VwdGlvbiBlKSB7CiAgICAgICAgICAgIGUucHJpbnRTdGFja1RyYWNlKCk7CiAgICAgICAgfQogICAgfQp9