20260821230656

This commit is contained in:
oneao committed 2026-08-21 23:06:56 +08:00
1 parent 2e5d532f23
commit c43b4c8364
144 files changed
+7665 -242

No files matched your search

@@ -0,0 +1,251 @@
-- Migrate s_* tables: b_id identity(1,1) -> plain bigint (snowflake by app layer)
-- Generated: 2026-08-21 20:27:23.939
-- ===== s_autocode =====
ALTER TABLE [dbo].[s_autocode] DROP CONSTRAINT [PK_s_autocode];
ALTER TABLE [dbo].[s_autocode] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_autocode] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_autocode] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_autocode] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_autocode.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_autocode] ADD CONSTRAINT [PK_s_autocode] PRIMARY KEY ([b_id]);
GO
-- ===== s_field =====
ALTER TABLE [dbo].[s_field] DROP CONSTRAINT [PK_s_field];
ALTER TABLE [dbo].[s_field] DROP CONSTRAINT [UQ_s_field_module_id];
DROP INDEX [IX_s_field_module] ON [dbo].[s_field];
ALTER TABLE [dbo].[s_field] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_field] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_field] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_field] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_field.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_field] ADD CONSTRAINT [PK_s_field] PRIMARY KEY ([b_id]);
ALTER TABLE [dbo].[s_field] ADD CONSTRAINT [UQ_s_field_module_id] UNIQUE (b_module_id,b_id);
CREATE INDEX [IX_s_field_module] ON [dbo].[s_field] (b_module_id,b_canuse,b_id);
GO
-- ===== s_field_edit =====
ALTER TABLE [dbo].[s_field_edit] DROP CONSTRAINT [PK_s_field_edit];
DROP INDEX [IX_s_field_edit_order] ON [dbo].[s_field_edit];
ALTER TABLE [dbo].[s_field_edit] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_field_edit] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_field_edit] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_field_edit] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_field_edit.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_field_edit] ADD CONSTRAINT [PK_s_field_edit] PRIMARY KEY ([b_id]);
CREATE INDEX [IX_s_field_edit_order] ON [dbo].[s_field_edit] (b_xh,b_id);
GO
-- ===== s_field_group =====
ALTER TABLE [dbo].[s_field_group] DROP CONSTRAINT [PK_s_field_group];
ALTER TABLE [dbo].[s_field_group] DROP CONSTRAINT [CK_s_field_group_parent];
ALTER TABLE [dbo].[s_field_group] DROP CONSTRAINT [UQ_s_field_group_module_id];
ALTER TABLE [dbo].[s_field_group] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_field_group] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_field_group] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_field_group] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_field_group.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_field_group] ADD CONSTRAINT [PK_s_field_group] PRIMARY KEY ([b_id]);
ALTER TABLE [dbo].[s_field_group] ADD CONSTRAINT [CK_s_field_group_parent] CHECK ([b_parent_id] IS NULL OR [b_parent_id]<>[b_id]);
ALTER TABLE [dbo].[s_field_group] ADD CONSTRAINT [UQ_s_field_group_module_id] UNIQUE (b_module_id,b_id);
GO
-- ===== s_field_query =====
ALTER TABLE [dbo].[s_field_query] DROP CONSTRAINT [PK_s_field_query];
DROP INDEX [IX_s_field_query_order] ON [dbo].[s_field_query];
ALTER TABLE [dbo].[s_field_query] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_field_query] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_field_query] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_field_query] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_field_query.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_field_query] ADD CONSTRAINT [PK_s_field_query] PRIMARY KEY ([b_id]);
CREATE INDEX [IX_s_field_query_order] ON [dbo].[s_field_query] (b_canuse,b_xh,b_id);
GO
-- ===== s_field_view =====
ALTER TABLE [dbo].[s_field_view] DROP CONSTRAINT [PK_s_field_view];
DROP INDEX [IX_s_field_view_order] ON [dbo].[s_field_view];
ALTER TABLE [dbo].[s_field_view] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_field_view] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_field_view] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_field_view] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_field_view.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_field_view] ADD CONSTRAINT [PK_s_field_view] PRIMARY KEY ([b_id]);
CREATE INDEX [IX_s_field_view_order] ON [dbo].[s_field_view] (b_xh,b_id);
GO
-- ===== s_i18n =====
ALTER TABLE [dbo].[s_i18n] DROP CONSTRAINT [PK_s_i18n];
ALTER TABLE [dbo].[s_i18n] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_i18n] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_i18n] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_i18n] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_i18n.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_i18n] ADD CONSTRAINT [PK_s_i18n] PRIMARY KEY ([b_id]);
GO
-- ===== s_log_audit =====
ALTER TABLE [dbo].[s_log_audit] DROP CONSTRAINT [PK_s_log_audit];
ALTER TABLE [dbo].[s_log_audit] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_log_audit] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_log_audit] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_log_audit] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_log_audit.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_log_audit] ADD CONSTRAINT [PK_s_log_audit] PRIMARY KEY ([b_id]);
GO
-- ===== s_log_audit_field =====
ALTER TABLE [dbo].[s_log_audit_field] DROP CONSTRAINT [PK_s_log_audit_field];
ALTER TABLE [dbo].[s_log_audit_field] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_log_audit_field] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_log_audit_field] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_log_audit_field] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_log_audit_field.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_log_audit_field] ADD CONSTRAINT [PK_s_log_audit_field] PRIMARY KEY ([b_id]);
GO
-- ===== s_log_login =====
ALTER TABLE [dbo].[s_log_login] DROP CONSTRAINT [PK_s_log_login];
ALTER TABLE [dbo].[s_log_login] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_log_login] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_log_login] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_log_login] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_log_login.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_log_login] ADD CONSTRAINT [PK_s_log_login] PRIMARY KEY ([b_id]);
GO
-- ===== s_log_technical =====
ALTER TABLE [dbo].[s_log_technical] DROP CONSTRAINT [PK_s_log_technical];
ALTER TABLE [dbo].[s_log_technical] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_log_technical] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_log_technical] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_log_technical] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_log_technical.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_log_technical] ADD CONSTRAINT [PK_s_log_technical] PRIMARY KEY ([b_id]);
GO
-- ===== s_menu =====
ALTER TABLE [dbo].[s_menu] DROP CONSTRAINT [PK_s_menu];
ALTER TABLE [dbo].[s_menu] DROP CONSTRAINT [CK_s_menu_parent];
ALTER TABLE [dbo].[s_menu] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_menu] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_menu] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_menu] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_menu.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_menu] ADD CONSTRAINT [PK_s_menu] PRIMARY KEY ([b_id]);
ALTER TABLE [dbo].[s_menu] ADD CONSTRAINT [CK_s_menu_parent] CHECK ([b_parent_id] IS NULL OR [b_parent_id]<>[b_id]);
GO
-- ===== s_module =====
ALTER TABLE [dbo].[s_module] DROP CONSTRAINT [PK_s_module];
ALTER TABLE [dbo].[s_module] DROP CONSTRAINT [CK_s_module_parent];
DROP INDEX [IX_s_module_parent] ON [dbo].[s_module];
ALTER TABLE [dbo].[s_module] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_module] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_module] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_module] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_module.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_module] ADD CONSTRAINT [PK_s_module] PRIMARY KEY ([b_id]);
ALTER TABLE [dbo].[s_module] ADD CONSTRAINT [CK_s_module_parent] CHECK ([b_parent_id] IS NULL OR [b_parent_id]<>[b_id]);
CREATE INDEX [IX_s_module_parent] ON [dbo].[s_module] (b_parent_id,b_xh,b_canuse,b_id);
GO
-- ===== s_power =====
ALTER TABLE [dbo].[s_power] DROP CONSTRAINT [PK_s_power];
ALTER TABLE [dbo].[s_power] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_power] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_power] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_power] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_power.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_power] ADD CONSTRAINT [PK_s_power] PRIMARY KEY ([b_id]);
GO
-- ===== s_relation =====
ALTER TABLE [dbo].[s_relation] DROP CONSTRAINT [PK_s_relation];
ALTER TABLE [dbo].[s_relation] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_relation] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_relation] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_relation] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_relation.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_relation] ADD CONSTRAINT [PK_s_relation] PRIMARY KEY ([b_id]);
GO
-- ===== s_role =====
ALTER TABLE [dbo].[s_role] DROP CONSTRAINT [PK_s_role];
ALTER TABLE [dbo].[s_role] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_role] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_role] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_role] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_role.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_role] ADD CONSTRAINT [PK_s_role] PRIMARY KEY ([b_id]);
GO
-- ===== s_role_power =====
ALTER TABLE [dbo].[s_role_power] DROP CONSTRAINT [PK_s_role_power];
ALTER TABLE [dbo].[s_role_power] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_role_power] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_role_power] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_role_power] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_role_power.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_role_power] ADD CONSTRAINT [PK_s_role_power] PRIMARY KEY ([b_id]);
GO
-- ===== s_role_scope =====
ALTER TABLE [dbo].[s_role_scope] DROP CONSTRAINT [PK_s_role_scope];
ALTER TABLE [dbo].[s_role_scope] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_role_scope] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_role_scope] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_role_scope] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_role_scope.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_role_scope] ADD CONSTRAINT [PK_s_role_scope] PRIMARY KEY ([b_id]);
GO
-- ===== s_user_role =====
ALTER TABLE [dbo].[s_user_role] DROP CONSTRAINT [PK_s_user_role];
ALTER TABLE [dbo].[s_user_role] ADD [b_id_new] bigint NULL;
UPDATE [dbo].[s_user_role] SET [b_id_new] = [b_id];
ALTER TABLE [dbo].[s_user_role] ALTER COLUMN [b_id_new] bigint NOT NULL;
ALTER TABLE [dbo].[s_user_role] DROP COLUMN [b_id];
GO
EXEC sp_rename 'dbo.s_user_role.b_id_new', 'b_id', 'COLUMN';
GO
ALTER TABLE [dbo].[s_user_role] ADD CONSTRAINT [PK_s_user_role] PRIMARY KEY ([b_id]);
GO
-- End of migration