Консультации по быстрой большой ввод данных с SQL-сервера с использованием C# - Навальный
у меня есть программа C# WinForm, которая мне нужна для вставки быстрых больших данных в sql-сервер.
Sql-сервер находится в cloude server, а файл, который я загружаю в локальный компьютер.
файл представляет собой текст (разделенный табуляцией) в
d:\TEST\TEST.txt and has Full permissions BAR DES MAK 111 aaa 222 333 bbb 333 . .
таблица sql-сервера-это CatTbl:
BAR nvarchar(250) DES nvarchar(250) MAK nvarchar(250)
я пытаюсь вставить вот так:
SQL = @"BULK INSERT CatTbl FROM 'd:\TEST\TEST.txt' WITH (CODEPAGE=1255,FIELDTERMINATOR = '\t')"; Cmd = new SqlCommand(SQL, Conn); Cmd.ExecuteNonQuery(); Cmd.Dispose();
когда я работаю на локальном sql-сервере, он работает отлично.
но в cloude sql-server я получил ошибку:
Не удается выполнить массовую загрузку, так как файл "d:\TEST\TEST.txt-не удалось открыть. Код ошибки операционной системы 21(устройство не готово).
Обратите внимание, что подключение к sql-серверу выполнено успешно
Я поискал в интернете и не нашел ответа, который решил бы эту проблему. Я был бы признателен за некоторую помощь
Что я уже пробовал:
SQL = @"BULK INSERT CatTbl FROM 'd:\TEST\TEST.txt' WITH (CODEPAGE=1255,FIELDTERMINATOR = '\t')"; Cmd = new SqlCommand(SQL, Conn); Cmd.ExecuteNonQuery(); Cmd.Dispose();
Mehdi Gholam
Ваш файл .txt недоступен с облачного сервера, попробуйте загрузить его туда, где этот сервер может видеть и получать доступ в первую очередь.
goldsoft
спасибо, как это сделать ? или как скопировать файл на сервер ?
Herman<T>.Instance
C#-> FtpRequest (поиск по MSDN)
Dave Kreskowiak
Это полностью зависит от вашей облачной службы и/или вашего SQL-сервера, если он размещен на виртуальной машине. Поскольку никто не знает, что это такое, никто не может сказать вам ничего о том, как это сделать.
Обратитесь к документации для вашего облачного сервиса и настройки SQL.
Eric Lynch
Поскольку вы начинаете с C#, вы можете проверить следующее:
https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/bulk-copy-operations-in-sql-server