Max Length des champs sous SQL server
Bonjour,
J'ai besoin de votre aide :)
Je voudrais developper un petit script pour récuperer et calculer la longeur total de mes champs, afin de ne pas dépasser les 8060Ko de SQL server.
j'ai donc commencé a rediger un script mais je suis bloqué car je ne sais pas comment parcourir les tables de ma DB (variable @TablesName') et faire le calcule de longeur de champs.
Si quelqu'un pouvait jetter un oeil et m'aider :roll:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
--Creation d'une table temporaire pour stocker la liste de mes tables presente --dans ma DB
CREATE TABLE #toto (
Id int identity (1,1),
TablesName nvarchar(255),
Cost int
)
--insert des tables presentent dans ma DB
insert #toto
(TablesName)
select name from sys.tables
declare @ID int;
declare @maxID int;
declare @TablesName nvarchar(255);
Select @maxID = Max(Id),@ID = 1 from toto
while @ID < @MaxID
begin
insert toto
(Cost)
Select SUM(C.Length) as Length from dbo.SysColumns C,toto t
where C.id = object_id ('@TablesName')
SET @ID=@ID +1
end |