/**
  * TODO odstranit - respektive přepracovat pro import v MySQLDatabase.php
  * Funkce pro import CSV souboru
  * @param string $filename
  * @param DbConnection $dbConnection
  * @param string $table
  * @param string $encoding
  * @param string $delimiter
  * @param string $enclosure
  * @param string $escapeCharacter
  * @param string|null $nullValue=null
  * @throws ApplicationException
  */
 public function OLD_importCsvFile($filename, DbConnection $dbConnection, &$table, $encoding = 'utf-8', $delimiter = ',', $enclosure = '"', $escapeCharacter = '\\', $nullValue = "")
 {
     //připravení parametrů pro DB tabulku
     $this->changeFileEncoding($filename, $encoding);
     $csvColumns = $this->getColsInCSV($filename, $delimiter, $enclosure, $escapeCharacter);
     //otevření databáze a vytvoření DB tabulky
     $this->databasesFacade->openDatabase($dbConnection);
     if (!$this->databasesFacade->createTable($table, $csvColumns)) {
         throw new ApplicationException('Table creation failed!');
     }
     //projití CSV souboru a import dat do DB
     $colsNames = array();
     foreach ($csvColumns as $column) {
         $colsNames[] = $column->name;
     }
     $colsCount = count($colsNames);
     if (@$this->tryDirectFileImport[$dbConnection->type]) {
         #region try direct import...
         $result = $this->databasesFacade->importCsvFile($table, $colsNames, $this->getFilePath($filename), $delimiter, $enclosure, $escapeCharacter, $nullValue, 1, DatabasesFacade::FIRST_DB);
         if ($result) {
             return;
         } else {
             $this->databasesFacade->truncateTable($table);
         }
         #endregion
     }
     #region postupný import pomocí samostatných dotazů
     $csvFile = CsvImport::openCsv($this->getFilePath($filename));
     CsvImport::getRowsFromOpenedCSVFile($csvFile, 1, $delimiter, $enclosure, $escapeCharacter, $nullValue);
     //přeskakujeme první řádek
     while ($row = CsvImport::getRowsFromOpenedCSVFile($csvFile, 1, $delimiter, $enclosure, $escapeCharacter, $nullValue)) {
         if (isset($row[0])) {
             $row = $row[0];
             //chceme jen jeden řádek
         }
         $insertArr = array();
         for ($i = 0; $i < $colsCount; $i++) {
             if (isset($row[$i])) {
                 $insertArr[$colsNames[$i]] = $row[$i];
             } else {
                 $insertArr[$colsNames[$i]] = null;
             }
         }
         $this->databasesFacade->insertRow($table, $insertArr);
     }
     CsvImport::closeCsv($csvFile);
     #endregion
 }