Эквивалент componentDidMount для функции React / компонента Hooks?

Слава богу, благодаря @ user_0 answer и загадочному ответу и комментарию @ user3494351 и комментарию, и этот древний пост форума Я, наконец, понял это через несколько часов, ударяя головой о стену.

Проблема в том, что BCP любит добавлять дополнительные 8 байтов в файл по умолчанию. Это искажает файл и делает невозможным его открытие, если вы просто используете флаг native -n.

Однако BCP позволяет вам указать файл формата в качестве вывода, который может позволить вам сказать, чтобы он не добавлял дополнительные 8 байт. Таким образом, у меня есть таблица, которую я создал (которая будет использоваться в курсоре) на SQL Server, которая имеет только ОДИН ROW и ONE COLUMN с моими двоичными данными. Таблица должна существовать при запуске первой команды.

В командной строке сначала вам нужно сделать это:

bcp MyDatabase.MySchema.MyTempTable format nul -T -n -f formatfile.fmt

Это создает formatfile.fmt в каталоге, в котором вы находитесь. I сделал на диске E: \. Вот как это выглядит:

10.0
1
1       SQLBINARY           8       0       ""   1     MyColumn             ""

Это 8, там есть переменная, которая указывает, сколько байтов добавить в ваш файл. Это ублюдок, который развращает ваши файлы. Измените этот присосок на 0:

10.0
1
1       SQLBINARY           0       0       ""   1     MyColumn             ""

Теперь просто запустите свой BCP-скрипт, снимите флаг -n и включите флаг -f:

bcp "SELECT MyColumn FROM MyDatabase.MySchema.MyTempTable" queryout "E:\MyOutputpath" -T -f E:\formatfile.fmt

17
задан Yangshun Tay 29 December 2018 в 23:11
поделиться