У меня есть 10 таблиц, например Table_1, Table_2, Table_3, Table_4 ..., Table_10 .. Мне нужно удалить данные из всех таблиц, кроме таблицы_4. «Использовать« LIKE »,« IN »и т. Д.)« Удалить * из tablename, как Table_, где Таблица NOT IN («Таблица_4») ».Удалить данные из SQL-таблиц
ответ
Если количество таблиц превышает 10, вы не хотите перечислять все таблицы в инструкции delete. Вы должны придерживаться каталога и использовать курсор:
declare @table nvarchar(max)
delcare @cur cursor
set @cur = cursor fast_forward for
select name
from sys.tables
where name like 'Table_%'
and name not like 'Table_4'
open @cur
fetch next from @cur into @table
while(@@fetch_status = 0)
begin
sp_executesql 'DELETE FROM ' + @table
fetch next from @cur into @table
end
close @cur
deallocate @cur
Edit: этот ответ для MS SQL только :)
написать запрос на удаление с из Table_4
delete from Table_1,Table_2,Table_3,Table_5,......Table10
что делать, если у вас тысячи таблиц? будете ли вы продолжать писать его вручную? –
здесь есть только десять таблиц, поэтому я предложил – Nighil
, если я скажу, что у меня 1000 столов и сказать, что вы предлагаете? –
use [db_name]
declare @sql nvarchar(max)
select @SQL =
(select ';
DELETE FROM ' + quotename(TABLE_SCHEMA) + '.' +
quotename(TABLE_NAME) from INFORMATION_SCHEMA.TABLES where TABLE_TYPE = 'BASE TABLE'
and TABLE_NAME not in ('mytab1', 'mytab2')
ORDER BY Table_Schema, TABLE_NAME
FOR XML PATH(''), type).value ('.','nvarchar(max)')
print @SQL -- verify
Он создаст запрос для удаления и использует этот запрос, удалив требуемую таблицу u и пропустив u не требуется.
- 1. Удалить данные из elasticsearch
- 2. Удалить данные из файла
- 3. Удалить данные из Gridview
- 4. Удалить данные из RRDTool
- 5. Удалить/удалить ранее сохраненные данные из HealthKit
- 6. Как удалить данные из Firebase?
- 7. Удалить несоответствующие данные из таблицы
- 8. Удалить данные из адресной строки
- 9. Как удалить данные из полей
- 10. удалить данные из связанного списка
- 11. Удалить данные из отключенного ввода
- 12. Удалить данные из таблицы cdc
- 13. Удалить данные из таблицы Azure
- 14. удалить данные из базы данных
- 15. WinSock: удалить данные из сокета
- 16. Удалить данные из зависимых таблиц
- 17. Удалить данные из HashMap java
- 18. Удалить все данные из gridview
- 19. Как удалить данные из массива?
- 20. Удалить данные из таблиц Oracle
- 21. Удалить данные из детских таблиц
- 22. Попытка удалить данные из COLUMN
- 23. Удалить данные из файла имен
- 24. Удалить данные из Bootstrap Modal
- 25. SQLITE удалить данные из столбцов
- 26. Как удалить данные из подмассива?
- 27. Удалить данные из двух таблиц
- 28. Удалить данные из arraylist объектов
- 29. удалить данные из табличных переменных из функции
- 30. Удалить данные из массива из массива элементов
какой сервер sql вы используете? –
Какая база данных? Я еще не думал об этом, но вы могли бы получить имена таблиц из схемы, а затем сделать ... что-то с ними. – cha0site
Помогла ли мне моя ссылка? –