Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 12475|Svar: 0

[Kilde] SQL Server 2000 opretter 1024 tabeller i en løkke

[Kopier link]
Opslået på 09/02/2015 14.04.26 | | |
  1. declare @i int
  2. declare @j int
  3. declare @sql varchar(4000)
  4. declare @sqlsource_delete varchar(4000)
  5. declare @sqlsource_create varchar(4000)
  6. declare @sn varchar(10)

  7. set @sql = ''
  8. set @i=1
  9. set @sqlsource_delete = 'drop table [dbo].[Test_{SN}]'
  10. set @sqlsource_create = 'CREATE TABLE [dbo].[Test_{SN}] (
  11. [iid] [int] IDENTITY (1, 1) NOT NULL ,
  12. [headid] [int] NULL ,
  13. [istid] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  14. [istname] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  15. [isturl] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  16. [ititle] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  17. [icontents] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  18. [icontent] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
  19. [iurl] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
  20. [ipic] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
  21. [ipdate] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  22. [iedate] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  23. [icompname] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  24. [icompemail] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  25. [iphone] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  26. [ifax] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
  27. [ishengf] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  28. [iaddress] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  29. [ilianxiren] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  30. [imobile] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  31. [isite] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
  32. [isamecount] [int] NULL ,
  33. [imainid] [int] NULL ,
  34. [creationDate] [datetime] NOT NULL DEFAULT getdate() ,
  35. [lastModifiedDate] [datetime] NOT NULL DEFAULT getdate()
  36. CONSTRAINT [PK_Test_{SN}] PRIMARY KEY  CLUSTERED
  37. (
  38.   [iid]
  39. )  ON [PRIMARY]  
  40. ) ON [PRIMARY]'

  41. while @i<=1024
  42. begin
  43.     set @sn = cast(@i as varchar(10))
  44.     set @j=len(@sn)
  45.    
  46.     if exists (select * from dbo.sysobjects where id = object_id('[dbo].[Test_' + @sn + ']') and OBJECTPROPERTY(id, 'IsUserTable') = 1)
  47.     begin
  48.         set @sql = replace(@sqlsource_delete, '{SN}', @sn)
  49. --print @sql
  50.         execute(@sql)
  51.     end

  52.     set @sql = replace(@sqlsource_create, '{SN}', @sn)
  53.     --print @sql
  54.     execute(@sql)

  55.     set @i = @i + 1
  56. end
Kopier kode





Tidligere:XML begyndersyntaks
Næste:SQL-metoden til tømmelse af tabeldata
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com