<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5757</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5757&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS/SQL: Одновременное удаление из 2-х и более таблиц».]]></description>
		<lastBuildDate>Thu, 28 Apr 2011 10:54:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47907#p47907</link>
			<description><![CDATA[<p>Угу, спасибки !<br />Вопрос снят.</p>]]></description>
			<author><![CDATA[null@example.com (Евген)]]></author>
			<pubDate>Thu, 28 Apr 2011 10:54:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47907#p47907</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47895#p47895</link>
			<description><![CDATA[<p>Почитал хэлп к аксесу - там Delete работает с одной таблицей.<br />Почитал BOL, MSDN, sql.ru по Transact-SQL - в DELETE может упоминаться несколько таблиц после второго FROM(в качестве критериев для выбора удаляемых записей), но удаляться данные будут только из одной таблицы, указанной после DELETE.<br /><a href="http://social.msdn.microsoft.com/Forums/en-US/transactsql/thread/3ad3be26-fc6b-4a7a-8747-ced2e0b6a4e5/">how to delete records from multiple tables</a><br />Похоже в T-SQL также подобное можно реализовать с помощью каскадного удаления.</p><p>Вариант приведённый в википедии не знаю для какого диалекта приведён <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 28 Apr 2011 09:13:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47895#p47895</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47890#p47890</link>
			<description><![CDATA[<p>Ключевых полей было по одному на таблицу. Впрочем не существенно - разбил схему, удалил ключевые поля(в таблицах больше ключей нет). Осталось только индексное поле в таблице tabARM. Снова сделал связь один к многим с каскадным удалением связанных записей. Закрыл mdb-шку.<br /></p><div class="codebox"><pre><code>
Set Engine = CreateObject(&quot;DAO.DBEngine.36&quot;)
Set MDB=Engine.OpenDatabase (&quot;c:\aScripts\vbs\MDB\db5.mdb&quot;)
arm=&quot;002&quot;
mdb.Execute(&quot;DELETE * FROM tabARM WHERE arm=&quot;&quot;&quot; &amp; arm &amp; &quot;&quot;&quot;&quot;)</code></pre></div><p>Запустил скрипт. Открыл mdb - ни в одной таблице записей по arm=&quot;002&quot; нет.</p><p>Или в первой таблице колонка arm содержит не уникальные записи?<br />P.S. по sql-команде ещё подумаю</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 28 Apr 2011 07:30:50 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47890#p47890</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47889#p47889</link>
			<description><![CDATA[<p><strong>2 BeS Yara</strong> у меня такой вариант не прокатит...<br />я не все подробности описал, для Вашего варианта мне нужно 2 ключевых поля, а такого не бывает <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" /><br />Меня интересует только вариант решения SQL командой...</p>]]></description>
			<author><![CDATA[null@example.com (Евген)]]></author>
			<pubDate>Thu, 28 Apr 2011 07:09:01 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47889#p47889</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47886#p47886</link>
			<description><![CDATA[<p>Добрый день.</p><p>С mdb дела имел мало, но есть одна мысль(надеюсь окажется полезной). <br />Предполагаю что проблема не в скрипте, а в запросе. Удаление сразу из двух таблиц у меня не получилось(скорее всего по недостатку знаний этого диалекта SQL <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />). Но нашел другой вариант, который может подойти.</p><p>Для теста сделал две таблицы: tabARM и tabSOFT(Access 2003). Для ключей в каждой отдельное поле(счётчик), в обоих таблицах есть поле ARM. В tabARM поле ARM сделал уникальным индексом. Далее в схеме данных связал эти таблицы по полю ARM (один tabARM.arm) к (многим tabSOFT.arm) - если я правильно понял суть таблиц, то в первой список рабочих мест, во второй список софта на этих рабочих местах? В свойствах связи включил каскадное удаление и обновление связанных записей. Теперь при удалении записи о рабочем месте из первой таблицы также удаляются связанные записи из второй(обновление за компанию включил, полагаю удаляться будет и без каскадного обновления):<br /></p><div class="codebox"><pre><code>
DELETE * FROM tabARM WHERE tabARM.arm=&quot;002&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 28 Apr 2011 06:18:48 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47886#p47886</guid>
		</item>
		<item>
			<title><![CDATA[VBS/SQL: Одновременное удаление из 2-х и более таблиц]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=47884#p47884</link>
			<description><![CDATA[<p>Коллеги, приветствую !<br />Вопрос следующий, нормально производится удаление из каждой по отдельности таблицы, хотел сделать так, чтобы сразу же удаляло из обоих таблиц, но комп падает в ступор, кто знает, в чём дело ?<br />Необходимые индексы созданы.<br />Код следующий<br /></p><div class="codebox"><pre><code>Set Engine = CreateObject(&quot;DAO.DBEngine.36&quot;)
Set MDB=Engine.OpenDatabase (&quot;C:\Inetpub\wwwroot\invent\invent.mdb&quot;)
arm=&quot;host07&quot;
mdb.Execute(&quot;delete a.*,b.* from primary a,software b where a.arm=b.arm=&#039;&quot; &amp; arm &amp; &quot;&#039;&quot;)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Евген)]]></author>
			<pubDate>Thu, 28 Apr 2011 04:40:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=47884#p47884</guid>
		</item>
	</channel>
</rss>
