Как вставить строки в листе Excel в SQL Server 2005 или оракул - PullRequest
1 голос
/ 30 мая 2010

Как вставить строки в листе Excel в SQL Server 2005 или oracle?

Например, если у меня есть 5000 строк в таблице Excel, как я могу вставить эти строки в таблицу в любой базе данных

Ответы [ 2 ]

1 голос
/ 30 мая 2010

Я бы порекомендовал сохранить файл Excel в виде файла значений с вкладками или запятыми и импортировать в базу данных с помощью соответствующей команды. Например, MySQL использует LOAD DATA INFILE . Для MS-SQL см. на этой странице в MSDN . Я не уверен, как импортировать данные в Oracle, хотя многие поиски показывают, что это возможно. Я думаю, что экспорт в такой формат, как CSV, будет тем шагом, который вам нужен.

0 голосов
/ 30 мая 2010

А для Oracle (см. Ответы JYelton для MySQL и MS-SQL) команда будет:

sqlldr username@server/password control=loader.ctl

Файл CTL будет содержать подробную информацию о файле, который необходимо импортировать. Необходимо конвертировать файл Excel в формат CSV.

Примеры записей в контрольном файле.

load data
 infile 'c:\data\mydata.csv'
 into table emp
 fields terminated by "," optionally enclosed by '"'          
 ( empno, empname, sal, deptno )

Подробнее как ORAFAQ для загрузчика SQL . Вы также можете использовать UTL_FILE.

Или подумайте о создании внешней таблицы с файлом CSV в качестве данных и манипулировании деталями.

Пример CREATE выписка ниже:

CREATE TABLE countries_ext (
  EMP_ID        VARCHAR2(5),
  EMP_NAME      VARCHAR2(50),
  DEPT          VARCHAR2(50)
)
ORGANIZATION EXTERNAL (
  TYPE ORACLE_LOADER
  DEFAULT DIRECTORY ext_tables
  ACCESS PARAMETERS (
    RECORDS DELIMITED BY NEWLINE
    FIELDS TERMINATED BY ','
    MISSING FIELD VALUES ARE NULL
    (
      employee_id      CHAR(5),
      employee_name    CHAR(50),
      department       CHAR(50)
    )
  )
  LOCATION ('employee.txt')
)
PARALLEL 5
REJECT LIMIT UNLIMITED;

Подробности здесь: Документация Oracle для внешних таблиц .

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