называется CSV colum в программу Java с использованием массива - PullRequest
0 голосов
/ 27 февраля 2019

Вот код:

private static void readInput(String arr[], List<Table> tables) {
    if (arr.length < 4 || !arr[0].equalsIgnoreCase("select") || !arr[2].equalsIgnoreCase("from")
        || !String.valueOf(arr[arr.length - 1].charAt(arr[arr.length - 1].length() - 1)).equals(";")) {
      System.out.println("Output : SQL Error (Syntax Error)");
      return;
    }


    if (arr.length == 4) {
      Table table = searchTable(arr[3], tables);
      if (table == null) {
        System.out.println("Output : SQL Error (Table Not Found)");
        return;
      }

      if (arr[1].equals("*")) {
        System.out.println("Tabel \t: " + table.getName());
        System.out.print("List Kolom \t:");
        for (int i = 0; i < table.getColumns().length; i++) {
          String s = table.getColumns()[i];
          System.out.print(s);
          if (i != table.getColumns().length - 1)
            System.out.print(",");
        }
        System.out.println();
      } else {
        String selColumns[] = arr[1].split(",");
        boolean first = true;

        System.out.println("Tabel \t\t: " + table.getName());
        System.out.print("List Kolom \t: ");

        for (int i = 0; i < selColumns.length; i++) {
          for (int j = 0; j < table.getColumns().length; j++) {
            if (selColumns[i].equals(table.getColumns()[i])) {
              if (first) {
                System.out.print(selColumns[i]);
                first = false;
                break;
              } else {
                System.out.print("," + selColumns[i]);
                break;
              }
            }
          }
        }
      }

таблица:

Участник, member_id, nama, telp

Meminjam, id_buku, id_member, durasi;

Buku, id_buku, judul, genre;

Эта программа предназначена для проверки операторов SQL.Он анализирует данные из файла CSV.Проблема в том, что когда я выбираю более 2 столбцов, например, когда я выбираю id_member из member, он будет показывать имя таблицы и (атрибуты) столбцов.Однако, когда я пытаюсь показать 2 или более столбца, например, как select id_member, nama from member;Программа будет показывать только id_member вместо id_member и nama.Программа запустится только тогда, когда я выберу первый столбец только в CSV.

вот пример: пример

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...