title: How to force Microsoft Database Project generate ALTER statement for primary key constraint instead of creating temp table?
body: <p>I have following script for LoginLogo table:</p>
  
  <pre class="lang-sql prettyprint-override"><code>CREATE TABLE [LoginLogo] (
      [LoginLogoId]           INT               IDENTITY (1, 1) NOT NULL,
      [LoginId]               INT               NOT NULL,
      [LogoNm]                NVARCHAR(255)     NULL,
      CONSTRAINT [PK_LoginLogo_LoginLogoId] PRIMARY KEY CLUSTERED ([LoginId] ASC),
      CONSTRAINT [FK_LoginLogo_LoginId] FOREIGN KEY ([LoginId]) 
      REFERENCES [Login] ([LoginId])
  );
  
  GO
  CREATE NONCLUSTERED INDEX [IF_LoginLogo_LoginId]
      ON [LoginLogo]([LoginId] ASC)
      ON [INDX];
  </code></pre>
  
  <p>I need to change Primary Key Constraint, so I've just changed one line, please see below the change:</p>
  
  <pre class="lang-sql prettyprint-override"><code>CONSTRAINT [PK_LoginLogo_LoginLogoId] PRIMARY KEY CLUSTERED ([LoginLogoId] ASC),
  </code></pre>
  
  <p>Database project perfectly build changed code, but when it generates database update statement it generates temp table instead of simple ALTER statement. See below generated script:</p>
  
  <pre class="lang-sql prettyprint-override"><code>CREATE TABLE [tmp_ms_xx_LoginLogo] (
      [LoginLogoId]        INT            IDENTITY (1, 1) NOT NULL,
      [LoginId]            INT            NOT NULL,
      [LogoNm]             NVARCHAR (255) NULL,
      CONSTRAINT [tmp_ms_xx_constraint_PK_LoginLogo_LoginLogoId1] 
      PRIMARY KEY CLUSTERED ([LoginLogoId] ASC)
  );
  
  IF EXISTS (SELECT TOP 1 1 
             FROM   [apps].[LoginLogo])
      BEGIN
          SET IDENTITY_INSERT [apps].[tmp_ms_xx_LoginLogo] ON;
          INSERT INTO [apps].[tmp_ms_xx_LoginLogo] ([LoginLogoId], [LoginId], [LogoNm])
          SELECT   [LoginLogoId],
                   [LoginId],
                   [LogoNm],
          FROM     [LoginLogo]
          ORDER BY [LoginLogoId] ASC;
          SET IDENTITY_INSERT [tmp_ms_xx_LoginLogo] OFF;
      END
  
  DROP TABLE [LoginLogo];
  
  EXECUTE sp_rename N'[tmp_ms_xx_LoginLogo]', N'LoginLogo';
  
  EXECUTE sp_rename N'[tmp_ms_xx_constraint_PK_LoginLogo_LoginLogoId1]',
  N'PK_LoginLogo_LoginLogoId', N'OBJECT';
  </code></pre>
  
  <p>Is it possible to tell Database project to generate ALTER statement instead of creating temp table? How can I force Microsoft Database Project to do that?</p>