20260903173038
This commit is contained in:
1 parent
c8940f6e03
commit
0faf44cffc
55 files changed
+3278
-208
No files matched your search
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
新增「多语言类型」表 dbo.b_i18n_type,并注册独立模块 m_i18n_type 与其权限、管理员授权。
|
||||
新增「多语言类型」表 dbo.s_i18n_type,并注册独立模块 m_i18n_type 与其权限、管理员授权。
|
||||
用于维护系统支持的语言清单(简称、名称、是否默认、是否启用、排序),默认中文为内置默认语言。
|
||||
|
||||
本脚本可重复执行:表、模块、权限均通过存在性判断避免重复播种;
|
||||
@@ -24,22 +24,22 @@ BEGIN TRANSACTION;
|
||||
);
|
||||
|
||||
-- 1. 多语言类型表
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.tables WHERE name = N'b_i18n_type')
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.tables WHERE name = N's_i18n_type')
|
||||
BEGIN
|
||||
CREATE TABLE dbo.b_i18n_type (
|
||||
CREATE TABLE dbo.s_i18n_type (
|
||||
b_id bigint NOT NULL,
|
||||
b_code varchar(20) NOT NULL,
|
||||
b_name nvarchar(100) NOT NULL,
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_i18n_type_canuse DEFAULT (1),
|
||||
b_default int NOT NULL CONSTRAINT DF_b_i18n_type_default DEFAULT (0),
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_i18n_type_xh DEFAULT (0),
|
||||
CONSTRAINT PK_b_i18n_type PRIMARY KEY (b_id),
|
||||
CONSTRAINT UQ_b_i18n_type_code UNIQUE (b_code)
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_i18n_type_canuse DEFAULT (1),
|
||||
b_default int NOT NULL CONSTRAINT DF_s_i18n_type_default DEFAULT (0),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_i18n_type_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_i18n_type PRIMARY KEY (b_id),
|
||||
CONSTRAINT UQ_s_i18n_type_code UNIQUE (b_code)
|
||||
);
|
||||
CREATE INDEX IX_b_i18n_type_xh ON dbo.b_i18n_type (b_xh, b_id);
|
||||
CREATE INDEX IX_s_i18n_type_xh ON dbo.s_i18n_type (b_xh, b_id);
|
||||
|
||||
-- 预置数据:默认中文不可删除,可选英文
|
||||
INSERT INTO dbo.b_i18n_type (b_id, b_code, b_name, b_canuse, b_default, b_xh) VALUES
|
||||
INSERT INTO dbo.s_i18n_type (b_id, b_code, b_name, b_canuse, b_default, b_xh) VALUES
|
||||
(920000000000000001, N'zh-CN', N'简体中文', 1, 1, 0),
|
||||
(920000000000000002, N'en-US', N'English', 1, 0, 10);
|
||||
END
|
||||
|
||||
@@ -393,6 +393,25 @@ BEGIN
|
||||
CREATE INDEX IX_s_role_scope_role ON dbo.s_role_scope (b_role_id, b_module_id, b_operation, b_canuse);
|
||||
END;
|
||||
|
||||
IF OBJECT_ID(N'dbo.s_i18n_type', N'U') IS NULL
|
||||
BEGIN
|
||||
CREATE TABLE dbo.s_i18n_type (
|
||||
b_id bigint NOT NULL,
|
||||
b_code varchar(20) NOT NULL,
|
||||
b_name nvarchar(100) NOT NULL,
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_i18n_type_canuse DEFAULT (1),
|
||||
b_default int NOT NULL CONSTRAINT DF_s_i18n_type_default DEFAULT (0),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_i18n_type_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_i18n_type PRIMARY KEY (b_id),
|
||||
CONSTRAINT UQ_s_i18n_type_code UNIQUE (b_code)
|
||||
);
|
||||
CREATE INDEX IX_s_i18n_type_xh ON dbo.s_i18n_type (b_xh, b_id);
|
||||
|
||||
INSERT INTO dbo.s_i18n_type (b_id, b_code, b_name, b_canuse, b_default, b_xh) VALUES
|
||||
(920000000000000001, N'zh-CN', N'简体中文', 1, 1, 0),
|
||||
(920000000000000002, N'en-US', N'English', 1, 0, 10);
|
||||
END;
|
||||
|
||||
IF OBJECT_ID(N'dbo.s_i18n', N'U') IS NULL
|
||||
BEGIN
|
||||
CREATE TABLE dbo.s_i18n (
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
将旧版 dbo.b_i18n_type 统一为系统表 dbo.s_i18n_type。
|
||||
可重复执行,兼容新库未建表、旧库已有 b_i18n_type,以及两张表同时存在的情况。
|
||||
*/
|
||||
SET NOCOUNT ON;
|
||||
SET XACT_ABORT ON;
|
||||
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
IF OBJECT_ID(N'dbo.s_i18n_type', N'U') IS NULL
|
||||
BEGIN
|
||||
CREATE TABLE dbo.s_i18n_type (
|
||||
b_id bigint NOT NULL,
|
||||
b_code varchar(20) NOT NULL,
|
||||
b_name nvarchar(100) NOT NULL,
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_i18n_type_canuse DEFAULT (1),
|
||||
b_default int NOT NULL CONSTRAINT DF_s_i18n_type_default DEFAULT (0),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_i18n_type_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_i18n_type PRIMARY KEY (b_id),
|
||||
CONSTRAINT UQ_s_i18n_type_code UNIQUE (b_code)
|
||||
);
|
||||
CREATE INDEX IX_s_i18n_type_xh ON dbo.s_i18n_type (b_xh, b_id);
|
||||
END;
|
||||
|
||||
IF OBJECT_ID(N'dbo.b_i18n_type', N'U') IS NOT NULL
|
||||
BEGIN
|
||||
INSERT INTO dbo.s_i18n_type (b_id, b_code, b_name, b_canuse, b_default, b_xh)
|
||||
SELECT old.b_id, old.b_code, old.b_name, old.b_canuse, old.b_default, old.b_xh
|
||||
FROM dbo.b_i18n_type AS old
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM dbo.s_i18n_type AS current_row
|
||||
WHERE current_row.b_code = old.b_code
|
||||
);
|
||||
|
||||
DROP TABLE dbo.b_i18n_type;
|
||||
END;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.s_i18n_type)
|
||||
BEGIN
|
||||
INSERT INTO dbo.s_i18n_type (b_id, b_code, b_name, b_canuse, b_default, b_xh) VALUES
|
||||
(920000000000000001, N'zh-CN', N'简体中文', 1, 1, 0),
|
||||
(920000000000000002, N'en-US', N'English', 1, 0, 10);
|
||||
END;
|
||||
|
||||
COMMIT TRANSACTION;
|
||||
Reference in new issue
Block a user