Неизвестная ошибка SQL BCP при попытке прочитать файл формата в Ubuntu - PullRequest
0 голосов
/ 14 октября 2019

Я пытаюсь автоматизировать некоторые задания импорта в свою базу данных SQL Server и получить следующий файл формата XML:

<?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="CharFixed" LENGTH="11" COLLATION="SQL_Latin1_General_CP1_CI_AS" />  
    <FIELD ID="2" xsi:type="CharFixed" LENGTH="30" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="3" xsi:type="CharFixed" LENGTH="2" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="4" xsi:type="CharFixed" LENGTH="2" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="5" xsi:type="CharFixed" LENGTH="2" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="6" xsi:type="CharFixed" LENGTH="1" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="7" xsi:type="CharFixed" LENGTH="1" COLLATION="SQL_Latin1_General_CP1_CI_AS" />
    <FIELD ID="8" xsi:type="CharFixed" LENGTH="2" COLLATION="SQL_Latin1_General_CP1_CI_AS" />  
    <FIELD ID="9" xsi:type="CharTerm" TERMINATOR="\n"/>  
  </RECORD>  
  <ROW>  
    <COLUMN SOURCE="1" NAME="cuit" xsi:type="SQLNUMERIC" PRECISION="11" />  
    <COLUMN SOURCE="2" NAME="denominacion" xsi:type="SQLVARYCHAR" LENGTH="30" /> 
    <COLUMN SOURCE="3" NAME="imp_ganancias" xsi:type="SQLVARYCHAR" LENGTH="2" />
    <COLUMN SOURCE="4" NAME="imp_iva" xsi:type="SQLVARYCHAR" LENGTH="2" />  
    <COLUMN SOURCE="5" NAME="monotributo" xsi:type="SQLVARYCHAR" LENGTH="2" />
    <COLUMN SOURCE="6" NAME="integra_sociedad" xsi:type="SQLVARYCHAR" LENGTH="1" />
    <COLUMN SOURCE="7" NAME="empleador" xsi:type="SQLVARYCHAR" LENGTH="1" />
    <COLUMN SOURCE="8" NAME="actividad_monotributo" xsi:type="SQLVARYCHAR" LENGTH="2" />
  </ROW>  
</BCPFORMAT>  

И он отлично работает на моей локальной машине под управлением Windows 10, если я запускаю bcpкоманда

bcp myDB.dbo.myTable IN File.txt -f File.xml -U x -P x -S myIp

Но проблема в том, что мне нужночтобы оставить эти команды работающими на удаленной машине, работающей в Ubuntu, и когда я это сделаю, я получаю следующую ошибку

SQLState = S1000, NativeError = 0 Ошибка = [Microsoft] [Драйвер ODBC 17 для SQL Server]Формат файла: при попытке чтения произошла неизвестная ошибка.

И я понятия не имею, почему это происходит, я попытался изменить права доступа к файлу и запустить от имени пользователя root, но ничего не изменилось.

...