Question : tronquer toute la table d'utilisateur dans un sqlserver 2000 de manuscrit

Salut des experts, j'ai besoin d'un manuscrit pour tronquer toutes les tables d'utilisateur. Ils m'ont demandés pour copier le DB de prodcution à un serveur d'essai mais eux veulent qu'il vide. Pour pouvoir faire que j'ai besoin d'un manuscrit qui combine la conclusion des tables qui sont mises en référence et le tronqué des tables. Nous employons le sqlserver 2000. J'ai trouvé ce manuscrit sur le Web pour obtenir les tables qui sont mises en référence ou pas dans une table de @r de database.
declare (
PK_TABLE nvarchar (200), le
FK_TABLE nvarchar (200), le
primary verrouille groupé (PK_TABLE, FK_TABLE))table de @rs du

declare (le
PK_TABLE nvarchar (200), le
FK_TABLE nvarchar (200), le
primary verrouillent groupé (PK_TABLE, FK_TABLE))/>declare/>
REF_LEVEL international, de
TABLE_NAME groupée)/>
TABLE_NAME groupée) tables de charge de/>
set
declare/>print @table 'pour la base de données

insert dans le @table
select
TABLE_NAME = a.TABLE_SCHEMA+ ». « a
where
de +a.TABLE_NAME
from
INFORMATION_SCHEMA.TABLES a.TABLE_TYPE = « TABLE BASSE » and
a.TABLE_SCHEMA+ ». by
1

print « Br/>insert du Br/>order de dbo.dtproperties'< 'de <> 'de +a.TABLE_NAME de references'< de la charge PK/FK dans le distinct
du @r
select PK_TABLE =
b.TABLE_SCHEMA+ ». « +b.TABLE_NAME,
FK_TABLE =
c.TABLE_SCHEMA+ ». 'l'on
du b
du join
INFORMATION_SCHEMA.TABLE_CONSTRAINTS de l'a
de +c.TABLE_NAME
from
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS l'and
d'a.CONSTRAINT_SCHEMA = de b.CONSTRAINT_SCHEMA l'on
du c
du join
INFORMATION_SCHEMA.TABLE_CONSTRAINTS d'a.UNIQUE_CONSTRAINT_NAME = de b.CONSTRAINT_NAME
l'and
d'a.CONSTRAINT_SCHEMA = de c.CONSTRAINT_SCHEMA le by
1,2

print d'a.CONSTRAINT_NAME = de c.CONSTRAINT_NAME
order 'transforment la copie du Br/>insert de references'< de PK/FK dans le
insert comme niveau 0 du by
1,2

print du @r
order du *
from
du
du @rs
select 'charger les tables ONU-référencées ' en @t
select
REF_LEVEL = 0, l'in
de l'a
where
a.TABLE_NAME du
a.TABLE_NAME
from
pas (le
choisissent PK_TABLE à partir de l'union de @r tout le
FK_TABLE choisi de @r
1

du
order de/>)-- choisi * du @r
print 'enlever le Br/>delete de self references'< du @r
where
@level de l'int
set de @level de PK_TABLE = de FK_TABLE

declare = @level de 0

while < @level réglé du begin
de 100
= @level + suppression plus basse du Br/> de references'< de suppression d'impression de 1

'du where
/> PK_TABLE dans le
(TABLE_NAME choisi d'or
/> FK_TABLE dans
(TABLE_NAME choisi charge « +convert de niveau de @t)

d'impression '(varchar (20), @level) + » insertion du Br/>
de tables'< dans le =@level du select
REF_LEVEL du @t
, le where
a.TABLE_NAME de l'a
du from
du
a.TABLE_NAME
pas in
(FK_TABLE choisi d'in
d'and
a.TABLE_NAME de @r)
pas (TABLE_NAME choisi du by
1

d'ordre du @t)
sinon existe (choisi * du

select
REF_LEVEL, le
de Br le level'print de l'end


print de l'end

du break
du
'de chargement d'impression 'du begin
'' du @r)
de table de levels'< d'impression fait du Br/> compte de Tableaux par '' TABLE_COUNT = note de Br name'< niveau et table/>print de by
REF_LEVEL

print de by
REF_LEVEL
order de @t
group de
de
from de compte (*) des 'Tableaux dans l'ordre par ': Le nay nul de REF_LEVEL indiquent le reference'<
select
b.REF_LEVEL de Br/>print circulaire possible le '', le
TABLE_NAME = a
du
du
from de converti (varchar (40), a.TABLE_NAME) laissé le b
de @t du join
sur le by
b.REF_LEVEL d'a.TABLE_NAME = de b.TABLE_NAME
order, le
select
b.REF_LEVEL, le
de Br le Tables'< de/>print du
a.TABLE_NAME

print des 'Tableaux et mise en référence '' TABLE_NAME = converti (varchar (40), a.TABLE_NAME), l'a
du
du
from de =convert du
REFERENCING_TABLE (varchar (40), c.FK_TABLE) laissé le b
de @t du join
sur a.TABLE_NAME = b.TABLE_NAME
laissé le c
/> sur le by
a.TABLE_NAME,
select
b.REF_LEVEL, le
d'a.TABLE_NAME = de c.PK_TABLE
order de Br le Referenced'print du
c.FK_TABLE


print 'ajourne et ajourne le '' TABLE_NAME = converti (varchar (40), a.TABLE_NAME), l'a
du
du
from de =convert du
TABLE_REFERENCED (varchar (40), c.PK_TABLE) laissé le b
de @t du join
sur a.TABLE_NAME = b.TABLE_NAME
laissé le c
de @rs du join
sur le by
a.TABLE_NAME, le
c.PK_TABLE
d'a.TABLE_NAME = de c.FK_TABLE
order class= de

Réponse : tronquer toute la table d'utilisateur dans un sqlserver 2000 de manuscrit

Oui Microsoft a raison.

Quand il vient aux perspectives 2003 nous devrons modifier manuellement le profil si les perspectives 2003 ne peuvent pas se relier à la boîte aux lettres après la migration.

Il y a des outils comme l'outil de mise à jour de profil de perspectives mais cela ne fonctionne pas avec l'échange 2010.

Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us