<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791808</guid>
        <pubDate>Tue, 05 Mar 2019 13:43:42 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791808</link>
        <description><![CDATA[Akina: А смысл? всё равно в итоге выгружаются все записи. Тогда пофиг, есть сортировка или нет её, если порядок записей в кусках неважен.<br>В описанном мной варианте можно сразу выгружать все, сколько есть, сто тыщ мильёнов записей, без всех этих заморочек с маркированием. Всё одно на следующем этапе оно на куски порежется. Да, при этом нужен двойной объём дискового пространства, но с местом, как я понимаю, проблем нет.]]></description>
        <author>Akina</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791801</guid>
        <pubDate>Tue, 05 Mar 2019 12:33:24 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791801</link>
        <description><![CDATA[Орт_ИКС: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414359&view=findpost&p=3791759'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Akina &#064; <time class="tag-quote__quoted-time" datetime="2019-03-05T04:24:39+00:00">05.03.19, 04:24</time></span><div class='quote '></div></div><br>
Примерно так я и делаю.<br>
 Создаю таблицу только уникальных записей,<br>
 Маркирую из этой таблицы тор 100м записей ключом i. <br>
 Отмаркированные записи выгружаю в файл. <br>
 увеличиваю ключ, маркирую следующие 100м и так по циклу пока все записи не будут отмаркированы]]></description>
        <author>Орт_ИКС</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791759</guid>
        <pubDate>Tue, 05 Mar 2019 04:24:39 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791759</link>
        <description><![CDATA[Akina: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414359&view=findpost&p=3791678'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Орт_ИКС &#064; <time class="tag-quote__quoted-time" datetime="2019-03-04T13:05:16+00:00">04.03.19, 13:05</time></span><div class='quote '>нужна автоматизация процесса</div></div><br>
Ну так всё автоматизируется в рамках одного скрипта. Скажем, VBS.<br>
Сначала стартует клиент командной строки (bcp), которому скармливается запрос на выгрузку. Он выполняет запрос и копирует нужные записи в файл с заданным именем в заданном каталоге. По завершении работы клиента скрипт рубит этот файл на нужные куски. В принципе всё укладывается в десяток строк кода. Оператору достаточно запустить скрипт (а если надо - то можно это поручить планировщику, и тогда вмешательство человека будет не то что минимальным - вообще нулевым), дождаться окончания его работы, и дальше делать с требуемым пакетом файлов, что ему нужно.<br>
<br>
PS. И обратите серьёзное внимание на то, что сортировка, в которой все отбираемые записи уникальны - <strong class='tag-b'>необходима</strong>. Без неё в выходной файл попадёт заданное число <strong class='tag-b'><span class='tag-u'>случайных</span></strong> записей из всех, которые отвечают требованиям (условиям отбора в запросе). Конечно, это не актуально и не требуется, если количество отбираемых записей заведомо меньше заданного количества, и TOP 1000000 туда засунут чисто &quot;от фонаря&quot;.]]></description>
        <author>Akina</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791678</guid>
        <pubDate>Mon, 04 Mar 2019 13:05:16 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791678</link>
        <description><![CDATA[Орт_ИКС: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414359&view=findpost&p=3791675'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>^D^ima &#064; <time class="tag-quote__quoted-time" datetime="2019-03-04T12:43:29+00:00">04.03.19, 12:43</time></span><div class='quote '></div></div><br>
как сделать &quot;врукопашную&quot; я понимаю, нужна автоматизация процесса. <br>
Возможно я не понял предложенного, тогда прошу развернуть идею]]></description>
        <author>Орт_ИКС</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791675</guid>
        <pubDate>Mon, 04 Mar 2019 12:43:29 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791675</link>
        <description><![CDATA[^D^ima: Как вариант сделать временную таблицу, куда передать все данные выборки и по номеру по порядку выдергивать данные частями какими хочешь]]></description>
        <author>^D^ima</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791669</guid>
        <pubDate>Mon, 04 Mar 2019 12:01:29 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791669</link>
        <description><![CDATA[Орт_ИКС: <strong class='tag-b'>Akina</strong>, 100000000 это очень скромная часть. База &quot;весит&quot; десятки гигов. Потому и не хочу привлекать сторонние &quot;приблуды&quot; чтобы все собиралось отрабатывалось и собиралось в одном месте с минимальным вмешательством человека..]]></description>
        <author>Орт_ИКС</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791647</guid>
        <pubDate>Mon, 04 Mar 2019 10:20:20 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791647</link>
        <description><![CDATA[Akina: Выгрузить всё в один файл, а потом внешним приложением (простейший VBS-скрипт) порубить его на нужное число кусков с нужным количеством строк на кусок будет гораздо быстрее.<br>Хотя бы потому, что для выгрузки в несколько файлов средствами (хранимая процедура) сервера потребуется в запрос добавить сортировку, причём ключ сортировки должен быть уникальным.]]></description>
        <author>Akina</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791613</guid>
        <pubDate>Mon, 04 Mar 2019 09:14:40 +0000</pubDate>
        <title>Выгрузка из SQL в TXT</title>
        <link>https://forum.sources.ru/index.php?showtopic=414359&amp;view=findpost&amp;p=3791613</link>
        <description><![CDATA[Орт_ИКС: Всем привет.<br>
Есть представление, например <br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">CREATE VIEW SM1 AS SELECT &nbsp;DISTINCT TOP(100000000) PaWo FROM mPa WHERE Length&#62;7 AND Cat&#60;&#62;&#39;EUc_1&#39; and Typ=&#39;all&#39;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
его я выгружаю в файлик<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">exec PaWo..xp_cmdshell &#39;bcp &quot;SELECT * FROM PaWo.dbo.SM1 &quot; queryout e:3.txt -c -C 1251 -r \n -T&#39;</div></ol></div></div></div></div><br>
с этим проблем нет - все работает.<br>
Но как сделать так, чтобы выгружалось не в 1 файл с 100000000 записей а в 1000 по 100000. <br>
То что делать нужно в цикле я понимаю  :) , но вот личный уровень кунг-фу не позволяет это сделать.  :( <br>
Буду рад любым подсказкам.<br>
<br>
PS: сейчас решаю задачу отдельным приложением, что очень долго и громоздко.]]></description>
        <author>Орт_ИКС</author>
        <category>Базы данных: SQL</category>
      </item>
	
      </channel>
      </rss>
	