|
v7: Как зачистить в ТиС (SQL) все документы и регистры? | ☑ | ||
---|---|---|---|---|
0
commoc
29.01.14
✎
11:20
|
Есть база 7.7 торговля sql. надо зачистить все документы и регистры. оставить справочники.
|
|||
1
Mikeware
29.01.14
✎
11:21
|
"Позовите программиста"©
|
|||
2
commoc
29.01.14
✎
11:24
|
надо средствами скл. база большая
|
|||
3
sapphire
29.01.14
✎
11:25
|
(2) truncate table
|
|||
4
sapphire
29.01.14
✎
11:26
|
(0) А если история периодических реквизитов установлена документом?
|
|||
5
temsa
29.01.14
✎
11:27
|
(0) Если не знаешь как средствами скуля лучше перенеси справочники в пустую базу.
ЗЫ не забудь перенести периодику самую нужную! |
|||
6
commoc
29.01.14
✎
11:28
|
(4) готов рискнуть и сделать потом Тестирование и Исправление
|
|||
7
commoc
29.01.14
✎
11:28
|
(5) этот вариант также в работе
|
|||
8
пипец
29.01.14
✎
11:29
|
подропать таблицы dt dh ra rg 1sdoc и прочее
|
|||
9
Mikeware
29.01.14
✎
11:29
|
(3) drop database
|
|||
10
commoc
29.01.14
✎
11:29
|
(3) а нет примера? чтоб сразу по всем таблицам регистров?
|
|||
11
temsa
29.01.14
✎
11:29
|
(7) Погугли хорошенько есть готовый скрип который чистит в скул-базе.
|
|||
12
toypaul
гуру
29.01.14
✎
11:30
|
да просто грохнуть все таблицы кроме sc и _1sconst
правда партии и периодика по ценам будет не совсем корректна. но и это можно поправить. недавно кстати делал тоже самое |
|||
13
Mikeware
29.01.14
✎
11:30
|
(11) настаящие пацаны не гуглят!
|
|||
14
temsa
29.01.14
✎
11:31
|
Я такое проделывал раза два но давно. А искать у себя долгое занятие. Легче найти в инете чем у себя за 13 лет данных.
|
|||
15
commoc
29.01.14
✎
11:31
|
(11) нашел на инфостарте. но там за местные деньги. а надо срочно
|
|||
16
toypaul
гуру
29.01.14
✎
11:31
|
+ к (12) некоторые системные таблички еще может понадобяться
|
|||
17
sapphire
29.01.14
✎
11:31
|
(8) ЗАЧЕМ?!
|
|||
18
Mikeware
29.01.14
✎
11:31
|
(15)ну так сделай...
|
|||
19
МихаилМ
29.01.14
✎
11:32
|
(15)
купите стартмани. на инфостарте есть биржа по торговле старт мани. |
|||
20
sapphire
29.01.14
✎
11:34
|
я фигею... там писанины 5 строк на t-SQL
|
|||
21
Ёпрст
29.01.14
✎
11:35
|
declare @name nvarchar(128), @Rows int
declare Names cursor static for select table_name from INFORMATION_SCHEMA.TABLES where table_catalog = DB_NAME() and left(table_name, 2) In ('DH', 'DT', 'RA', 'RG','_1') and table_name != 'dtproperties' and table_name != '_1SSYSTEM' and table_name != '_1SCONST' and table_name != '_1SACCSEL' and table_name != '_1SDBSET' and table_name != '_1SUSERS' open Names SET @Rows = @@Cursor_Rows WHILE @Rows > 0 begin FETCH Names Into @name SET @Rows = @Rows - 1 declare @qt nvarchar(128) set @qt = N'truncate table +'+@name exec sp_executesql @qt end close Names deallocate Names |
|||
22
Ёпрст
29.01.14
✎
11:36
|
+21
©@ADirks |
|||
23
МихаилМ
29.01.14
✎
11:41
|
(2)
зачем 1SCONST удалять ? |
|||
24
sapphire
29.01.14
✎
11:42
|
sp_msforeachtable 'IF (''?'' NOT LIKE ''%SC%'' OR ''?''!=''_1SCONST'') TRUNCATE TABLE ?'
|
|||
25
sapphire
29.01.14
✎
11:43
|
(21) ога, запамятовал, что и эти исчо есть :)
|
|||
26
Ёпрст
29.01.14
✎
11:44
|
(23) это вопрос к (21) ?
Если да, то _1sconst там не удаляется |
|||
27
Ёпрст
29.01.14
✎
11:45
|
надо бы еще _1SACCS воткнуть в (21).. чтоб тоже не очищалась.
|
|||
28
пипец
29.01.14
✎
11:47
|
(17) - чо зачем ? зачем удалять то что нужно удалить ? хмм странный вопрос , ну сохрани (скопируй в бд) нужные ... если так больше нравится
|
|||
29
sapphire
29.01.14
✎
11:58
|
(28) зачем дропать, когда транкейт лучше?
|
|||
30
commoc
29.01.14
✎
12:32
|
огромное спасибо всем!
|
|||
31
beholder
30.01.14
✎
13:02
|
(21) для задачи в (0) вот это лишнее
and table_name != 'dtproperties' and table_name != '_1SSYSTEM' and table_name != '_1SCONST' and table_name != '_1SACCSEL' and table_name != '_1SDBSET' and table_name != '_1SUSERS' а надо добавить _1SJournal _1CRCDOC не уверен что парвильно пишу эти названия, но первое это журнал документов а второе - подчиненность документов. |
|||
32
Ёпрст
30.01.14
✎
13:35
|
(31) еще подумай.
|
|||
33
Ёпрст
30.01.14
✎
13:36
|
+32 если чо, "!=" равно "<>"
|
|||
34
Злой Бобр
30.01.14
✎
14:20
|
(0) Собственно скульная база тем и хороша что ненужно заморачиваться резкой базы. А так алгоритм тот же что и в дбф. Сначала записываем историю справочников, потом вносим остатки на нужное число, потом удаляем документы за выбранный период.
|
|||
35
beholder
30.01.14
✎
15:08
|
(33) посыпаю голову пеплом. Невнимательность блин.
Еще один момент из практики, если нужно все таки какие-то документы оставить и их количество ничтожно по сравнению с удаляемым. То быстрее гораздо не удалять по условию а перенести нужные в новые таблицы, удалить все в старых а потом переименовать новые таблицы в старые. |
|||
36
Ёпрст
30.01.14
✎
15:13
|
(35) не совсем так, нужно оставить всё как есть + условие на табличку шапки и тч нужных доков + оставлять 1sjourn и 1scrdoc
+ выкашивать в двух последних всё, что не относится к нужным докам..с 1sconst аналогично - выкашивать периодику не нужную. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |