Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DB3_SOLID
- ----------------------------------
- MAIN.java
- ---------------------------------------
- package loco;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import solid.jdbc.SolidDriver;
- /**
- *
- * @author polsl
- */
- public class Loco {
- /**
- * @param args the command line arguments
- */
- private static Connection con = null;
- private static String randomString() {
- return Long.toHexString(Double.doubleToLongBits(Math.random()));
- }
- private static int randomInt() {
- return (int)(Math.random() * 10000);
- }
- private static void runQuery(String query) {
- try {
- System.out.println("Wykonuje: " + query);
- Statement sel = con.createStatement();
- long time = System.currentTimeMillis();
- sel.execute(query);
- time = System.currentTimeMillis() - time;
- System.out.println("Czas wykonania: " + time);
- System.out.println();
- sel.close();
- } catch(SQLException ex) {
- System.out.println("Blad. " + ex.getMessage());
- }
- }
- public static void main(String[] args) {
- try {
- SolidDriver drive = (SolidDriver)Class.forName("solid.jdbc.SolidDriver").newInstance();
- con = DriverManager.getConnection("jdbc:solid://localhost:2315/dba/dba", "java", "java");
- } catch (Exception ex) {
- System.out.println("Blad polaczenia z baza.");
- ex.printStackTrace();
- }
- /*
- runQuery("CREATE TABLE Persons ( PersonID int, LastName varchar(255), FirstName varchar(255), City varchar(255) )");
- for(int i = 0; i < 200000; ++i) {
- runQuery(String.format("INSERT INTO Persons VALUES ( %d, '%s', '%s', '%s')", randomInt(), randomString(), randomString(), randomString()));
- }
- *//*
- runQuery("CREATE TABLE Pets ( PetID int, Name varchar(255), Species varchar(255))");
- for(int i = 0; i < 200000; ++i) {
- runQuery(String.format("INSERT INTO Pets VALUES ( %d, '%s', '%s')", randomInt(), randomString(), randomString()));
- }*/
- runQuery("SELECT * FROM persons"); // ~10ms
- runQuery("SELECT SUM(personid) FROM persons"); // ~80ms
- runQuery("SELECT AVG(personid * personid) AS personId FROM persons GROUP BY city HAVING SUM(personId)> 8000"); // ~700ms
- runQuery("SELECT * FROM persons"); // ~10ms
- runQuery("SELECT * FROM persons, pets"); // ~10ms
- runQuery("SELECT * FROM persons LEFT JOIN pets ON persons.personid = pets.petid"); // ~7300ms
- runQuery("SELECT * FROM persons WHERE personid NOT IN (1111, 2222, 3333, 4444, 5555, 6666, 7777, 8888, 9999)");// ~10ms
- runQuery("SELECT * FROM persons WHERE NOT EXISTS (SELECT personid where personid = 9999)");// ~10ms
- try {
- int rows = 0; //200000;
- for(int i = 0; i < rows; ++i) {
- Statement stmt = con.createStatement();
- stmt.executeUpdate(String.format("INSERT INTO Persons VALUES ( %d, '%s', '%s', '%s')", randomInt(), randomString(), randomString(), randomString()));
- stmt.close();
- }
- } catch(SQLException ex){
- System.out.println("Blad wstawiania wierszy.");
- System.out.println(ex.getMessage());
- }
- try {
- con.close();
- } catch (SQLException ex) {
- System.out.println("Blad zwalniania zasobow.");
- System.out.println(ex.getMessage());
- }
- }
- }
- ------------------------------------------
- WYNIKI.txt
- ---------------------------------------
- run:
- Wykonuje: SELECT * FROM persons
- Czas wykonania: 10
- Wykonuje: SELECT SUM(personid) FROM persons
- Czas wykonania: 80
- Wykonuje: SELECT AVG(personid * personid) AS personId FROM persons GROUP BY city HAVING SUM(personId)> 8000
- Czas wykonania: 621
- Wykonuje: SELECT * FROM persons
- Czas wykonania: 10
- Wykonuje: SELECT * FROM persons, pets
- Czas wykonania: 0
- Wykonuje: SELECT * FROM persons LEFT JOIN pets ON persons.personid = pets.petid
- Czas wykonania: 7391
- Wykonuje: SELECT * FROM persons WHERE personid NOT IN (1111, 2222, 3333, 4444, 5555, 6666, 7777, 8888, 9999)
- Czas wykonania: 10
- Wykonuje: SELECT * FROM persons WHERE NOT EXISTS (SELECT personid where personid = 9999)
- Czas wykonania: 10
- BUILD SUCCESSFUL (total time: 8 seconds)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement