Vraag : beknot al gebruikerslijst in één manuscript sqlserver 2000

Hallo deskundigen, heb ik een manuscript nodig om alle gebruikerslijsten te beknotten. Zij hebben me gevraagd om prodcution db aan een testserver te kopiëren maar zij willen leeg het. Die behoefte van I kunnen doen beknot een manuscript dat het vinden van de lijsten combineert die referenced zijn en van de lijsten. Wij gebruiken sqlserver 2000. Ik heb dit manuscript op het Web gevonden om lijsten te krijgen die of niet in een database.
declare @r- lijst van verwijzingen worden voorzien (nvarchar
PK_TABLE (200), sluit nvarchar
FK_TABLE (200),
primary gegroepeerd (PK_TABLE, FK_TABLE))

declare @rs- lijst (nvarchar
PK_TABLE (200), nvarchar
FK_TABLE (200),
primary sluit gegroepeerd (PK_TABLE, FK_TABLE))/>declare/>
REF_LEVEL int.,
TABLE_NAME) @table (nvarchar (200) niet ongeldige primaire gegroepeerd zeer belangrijk
TABLE_NAME) nocount off
print de 'lijsten van de Lading/>
set
declare/>

insert in @table
select
TABLE_NAME = a.TABLE_SCHEMA+“. „+a.TABLE_NAME
from
INFORMATION_SCHEMA.TABLES a
where
a.TABLE_TYPE = „BASEREN LIJST“ and
a.TABLE_SCHEMA+“. '+a.TABLE_NAME <> 'dbo.dtproperties'< br/>order by
1

print „br/>insert van de Lading PK/FK references'< in @r
select distinct
PK_TABLE =
b.TABLE_SCHEMA+“. „+b.TABLE_NAME,
FK_TABLE =
c.TABLE_SCHEMA+“. '+c.TABLE_NAME
from
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS a
join
INFORMATION_SCHEMA.TABLE_CONSTRAINTS b
on
a.CONSTRAINT_SCHEMA = b.CONSTRAINT_SCHEMA and
a.UNIQUE_CONSTRAINT_NAME = b.CONSTRAINT_NAME
join
INFORMATION_SCHEMA.TABLE_CONSTRAINTS c
on
a.CONSTRAINT_SCHEMA = c.CONSTRAINT_SCHEMA and
a.CONSTRAINT_NAME = c.CONSTRAINT_NAME
order by
1,2

print 'maken copie van PK/FK references'< br/>insert in @rs
select
*
from
@r
order by
1,2

print als niveau 0 '
insert in @t
select
REF_LEVEL = 0,
a.TABLE_NAME
from
@table a
where
a.TABLE_NAME niet in
(
uitgezochte PK_TABLE van unie @r al
uitgezochte FK_TABLE van @r
)
order by
1

-- selecteer * uit @r
print 'verwijderen self references'< br/>delete uit @r
where
PK_TABLE = FK_TABLE

declare @level int
set @level = 0

while @level < geplaatste 100
begin
@level = @level + 1

druk 'schrap lagere niveau references'< br/> schrappen van @r
where
PK_TABLE in
(uitgezochte TABLE_NAME van @t)
or
FK_TABLE in
(uitgezochte TABLE_NAME van @t)

niveau „varchar +convert (van de druk het 'Lading (20), @level) +“ tables'< br/>
tussenvoegsel in @t
select
REF_LEVEL =@level,
a.TABLE_NAME
from
@table a
where
a.TABLE_NAME niet in
(uitgezochte FK_TABLE van @r)
and
a.TABLE_NAME niet/> (uitgezochte TABLE_NAME van @t)
orde in
1

als niet (selecteer * uit @r)
begin
druk 'Gedaane 'Telling/>


/> break
end
end
print van Lijsten door level'
print ''

select
REF_LEVEL,
TABLE_COUNT = tellings (*)
from
@t
group by
REF_LEVEL
order by
REF_LEVEL

print 'Lijsten in orde bij niveau en lijst name'< br/>print 'Nota bestaat: Het ongeldige REF_LEVEL stem tegen wijst op mogelijke cirkelreference'
print ''
select
b.REF_LEVEL,
TABLE_NAME = varchar bekeerling ((40), a.TABLE_NAME)
from
@table a
verlaten join
@t b
op a.TABLE_NAME = 'Lijsten/>
order by
b.REF_LEVEL,
/>print en het Van verwijzingen voorzien van Tables'< br/>print ''
select
b.REF_LEVEL,
TABLE_NAME = varchar bekeerling ((40), a.TABLE_NAME),
REFERENCING_TABLE =convert (varchar (40), c.FK_TABLE)
from
@table a
verlaten join
@t b
op a.TABLE_NAME = b.TABLE_NAME
verlaten join
@rs c
op a.TABLE_NAME = zetten de 'Lijsten/>

order by
a.TABLE_NAME,
/>print en de Lijsten Referenced'< br/>print ''
select
b.REF_LEVEL,
TABLE_NAME = (varchar (40), a.TABLE_NAME),
TABLE_REFERENCED =convert (om varchar (40), c.PK_TABLE)
from
@table a
verlaten join
@t b
op a.TABLE_NAME = b.TABLE_NAME
verlaten join
@rs c
op a.TABLE_NAME = c.FK_TABLE
order by
a.TABLE_NAME,
c.PK_TABLE

Antwoord : beknot al gebruikerslijst in één manuscript sqlserver 2000

Ja is Microsoft Juist.

Wanneer het over Vooruitzichten 2003 komt zullen wij het Profiel moeten manueel aanpassen als de Vooruitzichten 2003 niet met de Brievenbus na de Migratie kunnen verbinden.

Er zijn hulpmiddelen zoals het Hulpmiddel van de Update van het Profiel van Vooruitzichten maar het werkt niet met Uitwisseling 2010.

Andere oplossingen  
 
programming4us programming4us