Как выполнить несколько операторов «Create Table ...» в базе данных ACCESS - PullRequest
0 голосов
/ 08 августа 2011

У меня 480 операторов «Создать таблицу» для вставки в пустую базу данных доступа. Я обнаружил, что доступ не имеет опции многократного выполнения запроса ...

У меня есть все запросы на создание таблицы в текстовом файле

Пожалуйста, помогите мне, как этого достичь.

Я использую MS Access 2007. БД доступа находится в локальном жестком диске

Спасибо Рамм

1 Ответ

0 голосов
/ 08 августа 2011

Я сделал этот пример Java.Это сработало .. Пожалуйста, дайте мне знать, если какой-либо простой процесс для этого.

import java.io.*;
import java.util.*;
import java.text.*;
import java.sql.*;
import org.apache.poi.ss.usermodel.*;


public class DirReader_fat {

public static void main(String[] args) {

  String inputFilePath = "D:\\Sample.xlsx";
  String strInputQuery = "";

  try{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        String filename = "d:\\Empty_1.mdb";

        String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";
        database+= filename.trim() + ";DriverID=22;READONLY=true}"; // add on to the end 

        // now we can get the connection from the DriverManager
        Connection con = DriverManager.getConnection( database ,"",""); 

        // try and create a java.sql.Statement so we can run queries
        Statement s = con.createStatement();

        InputStream inputStream = new FileInputStream(new File(inputFilePath));
        Workbook wb = WorkbookFactory.create(inputStream);
        Sheet sheet = wb.getSheet("Sheet1");
        for (Row row : sheet) {

            strInputQuery = row.getCell(0).toString();
            s.execute(strInputQuery);
        }

  }catch (Exception e) {
        e.printStackTrace();
    }
 }

 }

Спасибо Ramm

...