· 9 years ago · Nov 14, 2016, 07:40 PM
1import java.io.*;
2import java.nio.*;
3import java.util.*;
4import java.sql.*;
5public class Menju3 {
6 private static String wybor;
7 private static Scanner odczyt;
8 private Statement stat;
9 private Connection lacze;
10 private ResultSet wynik;
11 public static final String DRIVER = "org.sqlite.JDBC";
12 public static final String DB_URL = "jdbc:sqlite:biblioteka.db";
13
14 void sterownik(){
15 try{
16 Class.forName(DRIVER);
17 } catch (ClassNotFoundException e) {
18 System.err.println("Brak sterownika JDBC");
19 e.printStackTrace();
20 }
21
22 try {
23 lacze = DriverManager.getConnection(DB_URL);
24 stat = lacze.createStatement();
25 } catch (SQLException e) {
26 System.err.println("Problem z otwarciem połączenia");
27 e.printStackTrace();
28 }
29 }
30 public void usun(){
31 try {
32 stat.execute("DROP TABLE IF EXISTS postac");
33 } catch (SQLException e) {
34 System.err.println("Tabela nie istnieje");
35 e.printStackTrace();
36 }
37 }
38 public void insert(String id, String imie, String nazwisko, String data_ur, String data_ur2, String pozycja, String klub) {
39 try {
40 PreparedStatement prpStat = lacze.prepareStatement("INSERT INTO postac VALUES ("+id+",'"+imie+"','"+nazwisko+"','"+data_ur+"',"+data_ur2+",'"+pozycja+"','"+klub+"');");
41 prpStat.setString(1, id);
42 prpStat.setString(2, imie);
43 prpStat.setString(3, nazwisko);
44 prpStat.setString(4, data_ur);
45 prpStat.setString(5, data_ur2);
46 prpStat.setString(6, pozycja);
47 prpStat.setString(7, klub);
48 prpStat.execute();
49 } catch (SQLException e) {
50 System.err.println("Blad przy wprowadzaniu danych");
51 e.printStackTrace();
52 }
53 }
54 public void create(){
55 try{
56 stat.execute("CREATE TABLE IF NOT EXISTS postac(id INTEGER PRIMARY KEY, imie VARCHAR(20), nazwisko VARCHAR(30), data_ur DATE, data_ur2 DATE, pozycja VARCHAR(50), klub VARCHAR(25), loanclub VARCHAR(25))");
57 }
58 catch(SQLException e){
59 System.err.println("Błąd przy tworzeniu tabeli");
60 e.printStackTrace();
61 }
62 }
63 public void wczyt() {
64 sterownik();
65 String csvFile = "baza1.csv";
66 String line = "";
67 usun();
68 create();
69
70 try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
71
72 while ((line = br.readLine()) != null) {
73 // use comma as separator
74 String[] Menju3 = line.split(",",-1);
75 System.out.println(Menju3[0] + " " + Menju3[1] + " " + Menju3[2] + " " + Menju3[3] + " " + Menju3[4] + " " + Menju3[5] + " " + Menju3[6]);
76 insert(Menju3[0],Menju3[1],Menju3[2],Menju3[3],Menju3[4],Menju3[5],Menju3[6]);
77 }
78
79 } catch (IOException e) {
80 e.printStackTrace();
81 }
82 }
83 public void ide(){
84 odczyt = new Scanner(System.in);
85 System.out.print("Wprowadz id osoby: ");
86 try {
87 int id = odczyt.nextInt();
88 wynik = stat.executeQuery("SELECT id FROM postac WHERE id = "+id+" LIMIT 1");
89 }
90 }
91 public void old(){
92
93 }
94 public void popular(){
95
96 }
97 public void lech(){
98
99 }
100 public void legia(){
101
102 }
103 public void wisla(){
104
105 }
106 public void staff(){
107
108 odczyt = new Scanner(System.in);
109 System.out.println("*Wciśnij zapytany przycisk oraz zaakceptuj poprzez enter*");
110 System.out.println("Aby... ");
111 System.out.println("...wczytać staff Lecha [1]");
112 System.out.println("...wczytać staff Legii [2]");
113 System.out.println("...wczytać staff Wisły [3]");
114 wybor = odczyt.nextLine();
115 switch (wybor){
116 case "1":
117 lech();
118 break;
119 case "2":
120 legia();
121 break;
122 case "3":
123 wisla();
124 break;
125 }
126}
127 public static void main(String[] args){
128 Menju3 baza = new Menju3();
129 try{
130 Class.forName("org.sqlite.JDBC");
131 }catch(ClassNotFoundException e){
132 System.err.println("Brak sterownika JDBC");
133 e.printStackTrace();
134 }
135 do{
136 odczyt = new Scanner(System.in);
137 System.out.println("*Witaj w bazie*");
138 System.out.println("*Wciśnij zapytany przycisk oraz zaakceptuj poprzez enter*");
139 System.out.println("Aby... ");
140 System.out.println("...wczytać dane z pliku do bazy [1]");
141 System.out.println("...wyszukać id dowolnej postaci [2]");
142 System.out.println("...znaleść najbardziej popularne nazwisko [3]");
143 System.out.println("...znaleść najstarsze postaci [4]");
144 System.out.println("...wypisać cały staff danego klubu [5]");
145 System.out.println("...usunąć bazę [6]");
146 System.out.println("...zakończyć prace programu [7]");
147 wybor = odczyt.nextLine();
148 switch (wybor){
149 case "1":
150 baza.wczyt();
151 break;
152 case "2":
153 baza.ide();
154 break;
155 case "3":
156 baza.popular();
157 break;
158 case "4":
159 baza.old();
160 break;
161 case "5":
162 baza.staff();
163 break;
164 case "6":
165 baza.usun();
166 break;
167 case "7":
168 System.out.println("Koniec działania programu.");
169 break;
170 default:
171 System.out.println("Nie prawidłowa liczba.");
172 }}while(!wybor.equals("7"));
173}
174}