Есть ли способ, чтобы программно использовать утилиты импорта/экспорта SQL Server. В моем веб-приложении я хотел бы импортировать/экспортировать данные из некоторых таблиц базы данных в CSV и наоборот, просто используя инструменты SQL Server. Возможно ли это?Импорт/экспорт данных с SQL Server по коду
ответ
Вы можете запускать команды BCP из ваших веб-приложений, которые могут быть использованы для импорта данных из таблицы SQL сервера для csv-файл, а затем экспортировать данные из csv в таблицу.
Чтобы экспортировать данные из таблицы SQL в текстовый файл
BCP Database.TableName out "Location of the text file " -c -S ServerName -T
Чтобы загрузить данные из плоского файла в таблицу
BCP Database.TableName in "Location of the text file " -c -S ServerName -T
Ну, так как вы уже используете .net, вы можете просто создать строку подключения, проанализировать ваш файл csv, а затем вставить строки в свои таблицы или использовать другие классы C#. Если вы действительно хотели бы назвать внешним * .exe с помощью C# вы можете сделать следующее:
Process pLight = new Process();
// Redirect the output stream of the child process.
pLight.StartInfo.UseShellExecute = false;
pLight.StartInfo.CreateNoWindow = false;
pLight.StartInfo.RedirectStandardOutput = true;
pLight.StartInfo.FileName = "c:\path\to\light.exe";
pLight.StartInfo.Arguments = "-i -d -ext ";
pLight.Start();
// Do not wait for the child process to exit before
// reading to the end of its redirected stream.
// p.WaitForExit();
// Read the output stream first and then wait.
string lightoutput = pLight.StandardOutput.ReadToEnd();
pLight.WaitForExit();
Я использую Linq для SQL, так что это не так легко импортировать значения из CSV-файлов в объекты ... Можете ли вы предложить мне лучший подход? – davioooh
, возможно, вам захочется взглянуть на выполнение хранимой процедуры в LinqToSQL с помощью пути к файлу csv? http://weblogs.asp.net/scottgu/archive/2007/08/16/linq-to-sql-part-6-retrieving-data-using-stored-procedures.aspx –
- 1. Служба SQL Server не запускается по коду
- 2. Установить пароль существующей базы данных sql ce (по коду)
- 3. SQL-запрос клиентов по региональному коду
- 4. Тип данных сгенерированный timestamp по коду
- 5. Группировка данных по SQL Server
- 6. Справка по запросу базы данных SQL Server
- 7. Резервная база данных SQL Server по ODBC
- 8. вопросы по базе данных копирования SQL Server
- 9. Рекомендации по архитектуре базы данных SQL Server
- 10. SQL Server с «группой по»
- 11. SQL Server - Запрос по геометрии данных
- 12. phpDocumentor по устаревшему коду
- 13. Настройка базы данных SQL Server 2005 с SQL Server 2000
- 14. Разблокировать TABSTable по коду
- 15. Аутентификация базы данных SQL Server SQL Server
- 16. проблемы с автозапуском по коду?
- 17. Отображение данных SQL Server
- 18. Усовершенствование по коду
- 19. SQL Server 2008 - перемещение данных с SQL Server 2000
- 20. SQL Server 2012 - Инструменты данных SQL Server
- 21. Форматирование формул по коду?
- 22. Пользовательский доступ к коду в отчете SQL Server
- 23. Руководство по архитектуре SQL Server
- 24. Liferay по предложениям SQL Server
- 25. База данных SQL Server или база данных на SQL Server
- 26. Сравнение данных по SQL Server только по месяцам и годам
- 27. Производительность процесса по сравнению с SQL Server
- 28. Обновление базы данных с SQL Server 2012 по 2008 год
- 29. Получение данных по интервалу datetime из SQL Server с EF
- 30. Преобразование базы данных SQL Server с 2005 по 2000 год
Как запустить эти команды? Как и любые другие ** «SELECT» ** или ** «UPDATE» ** заявление? Заметьте, что я использую Linq для SQL ... – davioooh
Я не уверен, как это сделать с помощью Linq, но вы можете выполнять приведенные выше команды так же, как вы запускаете хранимую процедуру. Например, строка sql; sql = "BCP Statement" Exec master..xp_cmdshell sql – praveen