Моя база данных с именем 'dictionary' имеет два столбца с именем 'column1' и 'column2'. Оба могут принимать значение NULL
. Тип данных обоих столбцов - INT
. Теперь я хочу вставить только столбец2 из текстового файла с помощью bcp. Я сделал файл формата. Мой формат файла, как этотМассовая вставка с использованием файла формата
<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RECORD>
<FIELD ID="1" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="7"/>
<FIELD ID="2" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="24"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="column2" xsi:type="SQLINT"/>
</ROW>
</BCPFORMAT>
и моя основная утверждение как
BULK INSERT dictionary
FROM 'C:\Users\jka\Desktop\n.txt'
WITH
(
FIELDTERMINATOR = '\n',
ROWTERMINATOR = '\n',
FORMATFILE = 'path to my format file.xml'
)
Но это не сработало? Как я могу это решить?
N: B: Мой текстовый файл выглядит
123
456
4101
......
еще один вопрос Отредактировано: я могу заполнить одну Колум по этой методике, но когда я заполнить другой столбец из текстового файла, как раньше, из первой строки. Как мне это сделать ???
Я не вижу никакой Visual Studio, или C# –
Я предполагаю, что 'dictionary' - это имя таблицы, а не базы данных. Верный? – peterm
yeah dictionar - это имя таблицы @peterm – DarkenShooter