Вопрос к DBA

User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Вопрос к DBA

Post by CBETA* »

Подскажите пожалуиста, сушествует ли возможность для DBA запорграмировать уничтожение таблиц которие создани ранее чем какое-то время ( к примеру неделю) назад от настояшего времени?
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Post by Dmitry67 »

Ответьте на вопрос N1
Самый главный
Подумайте какой :)
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

Dmitry67 wrote:Ответьте на вопрос N1
Самый главный
Подумайте какой :)

Dmitry67,
Я не так спрашиваю?
..меня интерисует как чистить вспомогателюную ДБ от таблиц недельнои давности.
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Post by Dmitry67 »

О Господи
СВЕТА
Какая у Вас база данных ?????????????????????????????????????????????????????????????????????????????????????????????????????
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

Dmitry67 wrote:О ...

MS SQL
vc
Уже с Приветом
Posts: 664
Joined: 05 Jun 2002 01:11

Re: Вопрос к DBA

Post by vc »

CBETA* wrote:Подскажите пожалуиста, сушествует ли возможность для DBA запорграмировать уничтожение таблиц которие создани ранее чем какое-то время ( к примеру неделю) назад от настояшего времени?


It's unclear what database we are talking about here but anyway...

In Oracle you can schedule a job which would periodically

1. delete rows based on some timestamp that has to be maintained by an application:

delete from t1 where ts <= sysdate - 7

... or ..

2. drop partitions in a table partitioned by week (more efficient than 1).

In MS SQL, Server you can do (1).

If you do not have a timestamp, then you cannot determine what data can be expired.


However, the above is applicable to data that were *designed* to age out -- in all other cases there is no simple criterium to determine whether the rows/tables are no longer needed by some obscure application. Here, a cleanup should be done manually after negotiations (and subsequent approval) with/of all the probable users


VC
User avatar
katit
Уже с Приветом
Posts: 23804
Joined: 05 Jul 2003 22:34
Location: Брест -> St. Louis, MO

Post by katit »

Можно. надо будет немного динамического SQL.
Единственное НО - это FK. Если они есть то просто так таблицы не поудаляешь.

смотрите таблицу sysobjects в вашей базе. Там есть явки, даты и т.п.
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

katit wrote:Можно. надо будет немного динамического SQL.
Единственное НО - это FK. Если они есть то просто так таблицы не поудаляешь.

смотрите таблицу sysobjects в вашей базе. Там есть явки, даты и т.п.


Спасибо!
В sysobjects нашла crdate.
а где посмотреть owner of the table where xtype = 'U'?
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Post by Dmitry67 »

Почему все как партизаны скрывают главное - какая база ?

В MS SQL в sysobjects есть дата тсоздания таблицы
Но учтите - это дата создания таблицы физически
То есть если ктото создал таблицу а потом с помощью Enterprise изменил ее структуру (при этом старая таблица переименовывается, создается новая, данные копируются, и старая удаляется) дата будет содержать не то что Вы одилаете

Наконец Вы уверены что жто нужно ?
Не всяакий production DBA может спать спокойно зная что процесс автоматически дропает таблицы
А почему недостаточно штатных средств ?
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

Dmitry67 wrote:Почему все как партизаны скрывают главное - какая база ?


наверное потому что не ДБА думают что никаких других баз не сушествует, кроме тек с которими они рабоитают ;)

Dmitry67 wrote:Наконец Вы уверены что жто нужно ?
Не всяакий production DBA может спать спокойно зная что процесс автоматически дропает таблицы
А почему недостаточно штатных средств ?


Наш ДБА решил удалять все user таблици из вспомогательнои бази на виходних.
Я его просила поменять процесс и удалять таблици недельнои давности, он говорит что етого он сделать не может, а мне кажется что ему просто лень.
...вот я и ршиле с божеи ( то есть вашеи) помошью написать script котории он может зашить в job и ранить себе хоть каждии день
- и волки будут сити, и заици ( таблици ) живи...
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

Declare @tableName varchar(1000) , @Sql varchar(5000)

declare Cur cursor for
select [name] from sysobjects where xtype ='U' and crdate < dateadd(dd, -7, getdate())

open Cur
fetch next from Cur into @tableName
while @@fetch_status = 0
begin

select @Sql ='drop table [' + @tableName + ']'
print @Sql
exec (@Sql)


fetch next from Cur into @tableName
end

CLOSE Cur
DEALLOCATE Cur

--------пральна?
-- не не пральна, откуда ownership выковырить?
Last edited by CBETA* on 08 Jun 2004 19:16, edited 1 time in total.
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Post by Dmitry67 »

Чтото здесь не так
Почему таблицы которые создают пользователи надо удалять ?
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
CBETA*
Уже с Приветом
Posts: 3417
Joined: 23 May 2001 09:01
Location: Laguna Beach , CA

Post by CBETA* »

они сблаговолили создать временную базу данних чтоб ми могли тестировать на stage environment....
User avatar
katit
Уже с Приветом
Posts: 23804
Joined: 05 Jul 2003 22:34
Location: Брест -> St. Louis, MO

Post by katit »

CBETA* wrote:-- не не пральна, откуда ownership выковырить?


BOL сказал что:
uid smallint User ID of owner object.
User avatar
katit
Уже с Приветом
Posts: 23804
Joined: 05 Jul 2003 22:34
Location: Брест -> St. Louis, MO

Post by katit »

Ах, да - sysusers и т.п. это следующий шаг

Return to “Вопросы и новости IT”