2016-09-05 1 views
-2

Хотите вставить некоторые данные в SQL. Я использую тег cfquery для управления SQL-запросами.Импорт CSV-файла в базу данных (sql) через BULK INSERT или LOAD DATA

Это моя первая попытка:

<body> 
    <cfquery NAME="Insert" DATASOURCE="#app.dsn#"> 
     LOAD DATA INFILE "F:\app\new.csv" 
     INTO TABLE FROM CSVIMP 
     FIELDS TERMINATED BY ',' 
     LINES TERMINATED BY '\r\n'; 
    </cfquery> 
    <output> 
     <CFQUERY NAME="Show" DATASOURCE="#app.dsn#"> 
      SELECT * FROM CSVIMP 
     </CFQUERY> 
     #Show# 
    </output> 
    </body> 

И потому, что это не работает, я даю это стрелять с BULK INSERT.
Моя вторая попытка:

<body> 
<cfquery NAME="Insert" DATASOURCE="#app.dsn#"> 
    BULK INSERT CSVIMP FROM ‘F:\app\new.csv’ 
    WITH (FIRSTROW = 2, FIELDTERMINATOR = ‘,’, ROWTERMINATOR = ‘\n’) 
</cfquery> 
<output> 
    <CFQUERY NAME="Show" DATASOURCE="#app.dsn#"> 
     SELECT * FROM CSVIMP 
    </CFQUERY> 
    #Show# 
</output> 
</body> 

Но даже это не работает. Это не дает мне никакой ошибки, просто значения из csv не вставлены в MySQL.

CSV-как это:
new.csv:

Test,Test2 
Test3,Test4 

Что я делаю неправильно?

+0

это F :, забыл изменить что – T2Admin

+0

@Drew Ошибка Выполнение запросов к базе данных. [Macromedia] [SQLServer JDBC Driver] [SQLServer] Неверный синтаксис рядом с «ЛОКАЛЬНЫМ». – T2Admin

+0

@Drew Значение по умолчанию было без LOCAL, и это не давало мне никакой ошибки. Теперь я добавил LOCAL, и это дает мне ошибку, поэтому я думаю, что это тоже не работает. Косые черты правильные. – T2Admin

ответ

-1

Мне просто нужно было поставить его в петлю.

<cfloop query="csv_query"> 
       <cfquery datasource="#app.dsn#"> 
        INSERT INTO CSVIMP (
         Test1, 
         Test2 
        ) VALUES (
         '#csv_query.column_1#', 
         '#csv_query.column_2#' 
        ) 
       </cfquery> 
     </cfloop> 
+0

-1. Это не отвечает на исходный вопрос, касающийся инструментов массовой загрузки. Плюс сам вопрос очень неясен. В тексте говорится, что в базе данных используется MySQL, но некоторые из синтаксиса, тегов и сообщений об ошибках для SQL Server. – Leigh