Advertisement
Guest User

Untitled

a guest
Nov 14th, 2016
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.05 KB | None | 0 0
  1. package inf.smart.prestatement;
  2.  
  3. import java.io.IOException;
  4. import java.sql.*;
  5. import java.util.Scanner;
  6.  
  7. class SearchTest {
  8. private static final String allRecords =
  9. "SELECT Trackers.Name FROM Trackers";
  10.  
  11. private static final String withPhone =
  12. "SELECT Trackers.Name FROM Trackers, Phones " +
  13. "WHERE Trackers.Name = Phones.Name";
  14.  
  15. private static final String phoneByName =
  16. "SELECT Phone FROM Phones WHERE Name = ?";
  17.  
  18. private static final String ipWithPhone =
  19. "SELECT Trackers.Ip, Phones.Phone FROM Trackers, Phones " +
  20. "WHERE Trackers.Name = Phones.Name AND Phones.Name = ?";
  21.  
  22. private static Connection conn;
  23. private static PreparedStatement stmt;
  24. private static ResultSet resultSet;
  25. private static final String URL =
  26. "jdbc:mysql://localhost:3306/dreambase?user=avalon&password=aladin";
  27.  
  28. public static void main(String[] args) throws IOException, SQLException {
  29.  
  30. Scanner in = new Scanner(System.in);
  31.  
  32. try {
  33. conn = DriverManager.getConnection(URL);
  34.  
  35. System.out.println(" ***** All persons: ");
  36.  
  37. stmt = conn.prepareStatement(allRecords);
  38. resultSet = stmt.executeQuery();
  39. int i = 0;
  40. while (resultSet.next())
  41. System.out.println(++i + ". " + resultSet.getString(1));
  42.  
  43. System.out.println(" ***** Persons with phone number: ");
  44. stmt = conn.prepareStatement(withPhone);
  45. resultSet = stmt.executeQuery();
  46. i = 0;
  47. while (resultSet.next())
  48. System.out.println(++i + ". " + resultSet.getString(1));
  49. String name;
  50. i = 0;
  51.  
  52. while (i == 0) // не вывелась строка - значит не правильный ввод
  53. {
  54. System.out.println(" ***** Phone by name : ");
  55. name = in.nextLine().trim();
  56.  
  57. stmt = conn.prepareStatement(phoneByName);
  58. stmt.setString(1, name); // параметры - номер переменной и ее значение
  59. resultSet = stmt.executeQuery();
  60.  
  61. while (resultSet.next())
  62. System.out.println(++i + ". " + resultSet.getString(1));
  63. }
  64.  
  65. i = 0;
  66. while (i == 0) {
  67. System.out.println(" ***** IP with phone by name : ");
  68. name = in.nextLine().trim();
  69.  
  70. stmt = conn.prepareStatement(ipWithPhone);
  71. stmt.setString(1, name);
  72. resultSet = stmt.executeQuery();
  73.  
  74. while (resultSet.next())
  75. System.out.println(++i + ". " + resultSet.getString(1) +
  76. ", " + resultSet.getString(2));
  77. }
  78. } catch (SQLException e) {
  79. e.printStackTrace();
  80. } finally {
  81. try {
  82. resultSet.close();
  83. stmt.close();
  84. conn.close();
  85. } catch (SQLException e) {}
  86. }
  87. }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement