sql >> Databáze >  >> RDS >> Sqlserver

SQL nevloží hodnoty null pomocí BULK INSERT

Podle:

http://msdn.microsoft.com/en-us/library/ms187887 .aspx

Hodnoty null lze vložit tak, že budete mít v souboru prázdné pole.

Příklad souboru byl:

1,,DataField3
2,,DataField3

Příklad metody importu souboru s hodnotami null je:

USE AdventureWorks;
GO
BULK INSERT MyTestDefaultCol2
FROM 'C:\MyTestEmptyField2-c.Dat'
WITH (
    DATAFILETYPE = 'char',
    FIELDTERMINATOR = ',',
    KEEPNULLS
);
GO

Je pravda, že to znamená, že budete muset změnit své "NULL" na "" a všechny prázdné řetězce, které jste chtěli jako prázdný řetězec, budou interpretovány jako null, ale pro začátek by to mohlo stačit? Představoval bych si, že ponechám vaše prázdné sloupce řetězců, z nichž by bylo třeba změnit

field1,,field2

do

field1,"",field2

jako příklad



  1. Jak vyplnit mezery v datech v MySQL?

  2. SQLiteException:tabulka již existuje

  3. Chyba SQL:ORA-02298:nelze ověřit (SYSTEM.AEROPUERTO_FK) - nadřazené klíče nebyly nalezeny

  4. Jak získat celkově nejoblíbenější značky z normalizovaných tabulek?