Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save WilliamDoman/6642755 to your computer and use it in GitHub Desktop.

Select an option

Save WilliamDoman/6642755 to your computer and use it in GitHub Desktop.
Adding clustered index pk to all tables of teamcity 8.x schema to work on azure sql. I installed teamcity on my local up to the accept license page, modified the database with this script and exported it with azure migration tools.
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.working_server'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.working_server') AND name = N'pkid')
BEGIN
ALTER TABLE working_server ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE working_server ADD CONSTRAINT working_server_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.single_row'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.single_row') AND name = N'pkid')
BEGIN
ALTER TABLE single_row ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE single_row ADD CONSTRAINT single_row_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.server_property'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.server_property') AND name = N'pkid')
BEGIN
ALTER TABLE server_property ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE server_property ADD CONSTRAINT server_property_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.usergroup_watch_type'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.usergroup_watch_type') AND name = N'pkid')
BEGIN
ALTER TABLE usergroup_watch_type ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE usergroup_watch_type ADD CONSTRAINT usergroup_watch_type_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_property'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_property') AND name = N'pkid')
BEGIN
ALTER TABLE user_property ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_property ADD CONSTRAINT user_property_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_blocks'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_blocks') AND name = N'pkid')
BEGIN
ALTER TABLE user_blocks ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_blocks ADD CONSTRAINT user_blocks_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_build_parameters'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_build_parameters') AND name = N'pkid')
BEGIN
ALTER TABLE user_build_parameters ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_build_parameters ADD CONSTRAINT user_build_parameters_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_projects_order'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_projects_order') AND name = N'pkid')
BEGIN
ALTER TABLE user_projects_order ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_projects_order ADD CONSTRAINT user_projects_order_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_projects_visibility'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_projects_visibility') AND name = N'pkid')
BEGIN
ALTER TABLE user_projects_visibility ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_projects_visibility ADD CONSTRAINT user_projects_visibility_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_roles'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_roles') AND name = N'pkid')
BEGIN
ALTER TABLE user_roles ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_roles ADD CONSTRAINT user_roles_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.user_watch_type'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.user_watch_type') AND name = N'pkid')
BEGIN
ALTER TABLE user_watch_type ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE user_watch_type ADD CONSTRAINT user_watch_type_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.usergropu_roles'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.usergropu_roles') AND name = N'pkid')
BEGIN
ALTER TABLE usergropu_roles ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE usergropu_roles ADD CONSTRAINT usergropu_roles_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.usergroup_subgroups'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.usergroup_subgroups') AND name = N'pkid')
BEGIN
ALTER TABLE usergroup_subgroups ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE usergroup_subgroups ADD CONSTRAINT usergropu_subgroups_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.usergroup_users'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.usergroup_users') AND name = N'pkid')
BEGIN
ALTER TABLE usergroup_users ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE usergroup_users ADD CONSTRAINT usergroup_users_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.action_history'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.action_history') AND name = N'pkid')
BEGIN
ALTER TABLE action_history ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE action_history ADD CONSTRAINT action_history_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.audit_additional_object'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.audit_additional_object') AND name = N'pkid')
BEGIN
ALTER TABLE audit_additional_object ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE audit_additional_object ADD CONSTRAINT audit_additional_object_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.backup_builds'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.backup_builds') AND name = N'pkid')
BEGIN
ALTER TABLE backup_builds ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE backup_builds ADD CONSTRAINT backup_builds_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.build_artifact_dependency'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.build_artifact_dependency') AND name = N'pkid')
BEGIN
ALTER TABLE build_artifact_dependency ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE build_artifact_dependency ADD CONSTRAINT build_artifact_dependency_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.build_labels'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.build_labels') AND name = N'pkid')
BEGIN
ALTER TABLE build_labels ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE build_labels ADD CONSTRAINT build_labels_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.build_queue'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.build_queue') AND name = N'pkid')
BEGIN
ALTER TABLE build_queue ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE build_queue ADD CONSTRAINT build_queue_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.build_type_vcs_change'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.build_type_vcs_change') AND name = N'pkid')
BEGIN
ALTER TABLE build_type_vcs_change ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE build_type_vcs_change ADD CONSTRAINT build_type_vcs_change_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.compiler_output'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.compiler_output') AND name = N'pkid')
BEGIN
ALTER TABLE compiler_output ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE compiler_output ADD CONSTRAINT compiler_output_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.default_build_parameters'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.default_build_parameters') AND name = N'pkid')
BEGIN
ALTER TABLE default_build_parameters ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE default_build_parameters ADD CONSTRAINT default_build_parameters_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.downloaded_artifacts'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.downloaded_artifacts') AND name = N'pkid')
BEGIN
ALTER TABLE downloaded_artifacts ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE downloaded_artifacts ADD CONSTRAINT downloaded_artifacts_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.duplicated_fragments'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.duplicated_fragments') AND name = N'pkid')
BEGIN
ALTER TABLE duplicated_fragments ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE duplicated_fragments ADD CONSTRAINT duplicated_fragments_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.final_artifact_dependency'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.final_artifact_dependency') AND name = N'pkid')
BEGIN
ALTER TABLE final_artifact_dependency ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE final_artifact_dependency ADD CONSTRAINT final_artifact_dependency_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.fragments'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.fragments') AND name = N'pkid')
BEGIN
ALTER TABLE fragments ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE fragments ADD CONSTRAINT fragments_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.ignored_tests'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.ignored_tests') AND name = N'pkid')
BEGIN
ALTER TABLE ignored_tests ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE ignored_tests ADD CONSTRAINT ignored_tests_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.inspection_diff'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.inspection_diff') AND name = N'pkid')
BEGIN
ALTER TABLE inspection_diff ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE inspection_diff ADD CONSTRAINT inspection_diff_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.inspection_fixes'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.inspection_fixes') AND name = N'pkid')
BEGIN
ALTER TABLE inspection_fixes ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE inspection_fixes ADD CONSTRAINT inspection_fixes_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.inspection_results'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.inspection_results') AND name = N'pkid')
BEGIN
ALTER TABLE inspection_results ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE inspection_results ADD CONSTRAINT inspection_results_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.personal_build_relative_path'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.personal_build_relative_path') AND name = N'pkid')
BEGIN
ALTER TABLE personal_build_relative_path ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE personal_build_relative_path ADD CONSTRAINT personal_build_relative_path_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.personal_vcs_changes'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.personal_vcs_changes') AND name = N'pkid')
BEGIN
ALTER TABLE personal_vcs_changes ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE personal_vcs_changes ADD CONSTRAINT personal_vcs_changes_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.tc_build_tags'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.tc_build_tags') AND name = N'pkid')
BEGIN
ALTER TABLE tc_build_tags ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE tc_build_tags ADD CONSTRAINT tc_build_tags_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.vcs_changes'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.vcs_changes') AND name = N'pkid')
BEGIN
ALTER TABLE vcs_changes ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE vcs_changes ADD CONSTRAINT vcs_changes_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.duplicate_fragments'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.duplicate_fragments') AND name = N'pkid')
BEGIN
ALTER TABLE duplicate_fragments ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE duplicate_fragments ADD CONSTRAINT duplicate_fragments_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.remeber_me'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.remeber_me') AND name = N'pkid')
BEGIN
ALTER TABLE remeber_me ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE remeber_me ADD CONSTRAINT remeber_me_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.server'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.server') AND name = N'pkid')
BEGIN
ALTER TABLE server ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE server ADD CONSTRAINT server_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
GO
IF EXISTS(SELECT 1 FROM sys.Tables WHERE object_id = OBJECT_ID(N'dbo.usergroup_roles'))
AND NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'dbo.usergroup_roles') AND name = N'pkid')
BEGIN
ALTER TABLE usergroup_roles ADD pkid [bigint] IDENTITY(1,1) NOT NULL;
ALTER TABLE usergroup_roles ADD CONSTRAINT usergroup_roles_pk PRIMARY KEY CLUSTERED (pkid ASC)
END
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment