20260730231110

This commit is contained in:
oneao committed 2026-07-30 23:11:10 +08:00
1 parent 4929b78434
commit 318fa0d9e1
23 files changed
+4026 -506

No files matched your search

@@ -323,33 +323,15 @@ BEGIN TRANSACTION;
);
END;
IF OBJECT_ID(N'dbo.b_other', N'U') IS NULL
BEGIN
CREATE TABLE dbo.[b_other] (
[b_cateid] varchar(50) NULL,
[b_id] bigint NOT NULL,
[b_name_c] nvarchar(50) NULL,
[b_1] numeric(18,0) NULL,
[b_2] varchar(50) NULL,
[b_desc] nvarchar(255) NULL,
[b_inputuser_id] bigint NULL,
[b_inputdatetime] datetime2(0) NULL,
[b_updateuser_id] bigint NULL,
[b_updatedatetime] datetime2(0) NULL,
[b_code] varchar(50) NOT NULL,
CONSTRAINT [PK_b_other] PRIMARY KEY ([b_id]),
CONSTRAINT [UQ_b_other_b_code] UNIQUE ([b_code])
);
END;
IF OBJECT_ID(N'dbo.b_other_bmfl', N'U') IS NULL
BEGIN
CREATE TABLE dbo.[b_other_bmfl] (
b_id bigint NOT NULL,
b_parent_id bigint NULL,
b_name nvarchar(150) NOT NULL,
b_level int NOT NULL CONSTRAINT [DF_b_other_bmfl_level] DEFAULT (1),
b_path varchar(1000) NOT NULL,
b_i18n varchar(150) NULL,
b_node_type varchar(20) NOT NULL CONSTRAINT [DF_b_other_bmfl_node_type] DEFAULT ('category'),
b_module_code varchar(100) NULL,
b_xh int NOT NULL CONSTRAINT [DF_b_other_bmfl_xh] DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT [DF_b_other_bmfl_canuse] DEFAULT (1),
b_inputuser_id bigint NULL,
@@ -358,10 +340,15 @@ BEGIN TRANSACTION;
b_updatedatetime datetime2(0) NULL,
CONSTRAINT [PK_b_other_bmfl] PRIMARY KEY (b_id),
CONSTRAINT [CK_b_other_bmfl_parent] CHECK (b_parent_id IS NULL OR b_parent_id <> b_id),
CONSTRAINT [CK_b_other_bmfl_node_type] CHECK (b_node_type IN ('category', 'module')),
CONSTRAINT [CK_b_other_bmfl_module_ref] CHECK (
(b_node_type = 'category' AND b_module_code IS NULL)
OR (b_node_type = 'module' AND b_module_code IS NOT NULL AND LEN(LTRIM(RTRIM(b_module_code))) > 0)
),
CONSTRAINT [FK_b_other_bmfl_parent] FOREIGN KEY (b_parent_id) REFERENCES dbo.[b_other_bmfl] (b_id)
);
CREATE INDEX [IX_b_other_bmfl_parent] ON dbo.[b_other_bmfl] (b_parent_id, b_xh, b_id);
CREATE INDEX [IX_b_other_bmfl_path] ON dbo.[b_other_bmfl] (b_path, b_xh, b_id);
CREATE INDEX [IX_b_other_bmfl_module] ON dbo.[b_other_bmfl] (b_node_type, b_module_code);
END;
IF OBJECT_ID(N'dbo.b_othercompany_accountbank', N'U') IS NULL
@@ -17,10 +17,18 @@ BEGIN TRANSACTION;
THROW 52001, N'base directory not found. Run 012 / 002 migration first.', 1;
/* =========================================================================
2. 创建 page 模块: m_base_otherdata
2. 创建 page 模块: base_otherdata
========================================================================= */
IF EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'm_base_otherdata')
AND NOT EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'base_otherdata')
BEGIN
UPDATE dbo.s_module
SET b_code = 'base_otherdata'
WHERE b_code = 'm_base_otherdata';
END;
DECLARE @PageId bigint = 920000000000001100;
IF NOT EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'm_base_otherdata')
IF NOT EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'base_otherdata')
BEGIN
IF EXISTS (SELECT 1 FROM dbo.s_module WHERE b_id = @PageId)
THROW 52002, N'The reserved otherdata page ID is already in use.', 1;
@@ -30,13 +38,13 @@ BEGIN TRANSACTION;
b_route, b_viewtable, b_savetable, b_keyfield, b_orderfield,
b_canmenu, b_canuse, b_xh
) VALUES (
@PageId, 'm_base_otherdata', @BaseId, N'其他数据',
@PageId, 'base_otherdata', @BaseId, N'其他数据',
'menu.base_otherdata', 'page', '/base/otherdata',
NULL, NULL, NULL, NULL, 1, 1, 30
);
END
ELSE
SET @PageId = (SELECT b_id FROM dbo.s_module WHERE b_code = 'm_base_otherdata');
SET @PageId = (SELECT b_id FROM dbo.s_module WHERE b_code = 'base_otherdata');
/* =========================================================================
3. 创建 data 模块辅助存储过程
@@ -1,78 +1,175 @@
/* 扩展 b_other_bmfl 表,添加 b_module_code 字段关联 s_module 数据模块。
分类节点 b_module_code 为空(仅做分组),叶子节点指向对应的 data 模块。*/
/* 其他数据分类树采用引用设计:
category 节点只维护树结构和分类名称,module 节点只引用 s_module.data 的 b_code。*/
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN TRANSACTION;
/* =========================================================================
1. 添加 b_module_code 列
========================================================================= */
IF NOT EXISTS (
SELECT 1 FROM sys.columns
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl') AND name = 'b_module_code'
)
IF OBJECT_ID(N'dbo.b_other_bmfl', N'U') IS NULL
THROW 52301, N'dbo.b_other_bmfl does not exist.', 1;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_node_type') IS NULL
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_module_code nvarchar(100) NULL;
ADD b_node_type varchar(20) NOT NULL
CONSTRAINT [DF_b_other_bmfl_node_type] DEFAULT ('category') WITH VALUES;
END;
/* =========================================================================
2. 插入演示分类数据(基础信息 / 财务信息 / 物流信息 分组)
========================================================================= */
DECLARE @CatBasic bigint = 930000000000000101;
DECLARE @CatFinance bigint = 930000000000000102;
DECLARE @CatLogistics bigint = 930000000000000103;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_module_code') IS NULL
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_module_code varchar(100) NULL;
END;
/* ---- 基础信息 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatBasic)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@CatBasic, NULL, N'基础信息', 1, CAST(@CatBasic AS varchar(20)), 10, 1, NULL);
IF EXISTS (
SELECT 1 FROM sys.indexes
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'IX_b_other_bmfl_path'
)
DROP INDEX [IX_b_other_bmfl_path] ON dbo.b_other_bmfl;
/* ---- 财务信息 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatFinance)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@CatFinance, NULL, N'财务信息', 1, CAST(@CatFinance AS varchar(20)), 20, 1, NULL);
DECLARE @DropSql nvarchar(max);
/* ---- 物流信息 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatLogistics)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@CatLogistics, NULL, N'物流信息', 1, CAST(@CatLogistics AS varchar(20)), 30, 1, NULL);
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_level') IS NOT NULL
BEGIN
SET @DropSql = NULL;
SELECT @DropSql = N'ALTER TABLE dbo.b_other_bmfl DROP CONSTRAINT [' + REPLACE(dc.name, N']', N']]') + N']'
FROM sys.default_constraints dc
JOIN sys.columns c
ON c.object_id = dc.parent_object_id
AND c.column_id = dc.parent_column_id
WHERE dc.parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND c.name = N'b_level';
IF @DropSql IS NOT NULL EXEC sys.sp_executesql @DropSql;
/* =========================================================================
3. 插入叶子节点(关联到已有 data 模块)
========================================================================= */
DECLARE @NodePort bigint = 930000000000000201;
DECLARE @NodeCity bigint = 930000000000000202;
DECLARE @NodeMoney bigint = 930000000000000203;
DECLARE @NodeOceanline bigint = 930000000000000204;
EXEC sys.sp_executesql N'ALTER TABLE dbo.b_other_bmfl DROP COLUMN b_level';
END;
/* ---- 基础信息 / 港口 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodePort)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@NodePort, @CatBasic, N'港口', 2,
CAST(@CatBasic AS varchar(20)) + '/' + CAST(@NodePort AS varchar(20)),
10, 1, 'd_other_port');
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_path') IS NOT NULL
BEGIN
SET @DropSql = NULL;
SELECT @DropSql = N'ALTER TABLE dbo.b_other_bmfl DROP CONSTRAINT [' + REPLACE(dc.name, N']', N']]') + N']'
FROM sys.default_constraints dc
JOIN sys.columns c
ON c.object_id = dc.parent_object_id
AND c.column_id = dc.parent_column_id
WHERE dc.parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND c.name = N'b_path';
IF @DropSql IS NOT NULL EXEC sys.sp_executesql @DropSql;
/* ---- 基础信息 / 城市 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeCity)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@NodeCity, @CatBasic, N'城市', 2,
CAST(@CatBasic AS varchar(20)) + '/' + CAST(@NodeCity AS varchar(20)),
20, 1, 'd_other_city');
EXEC sys.sp_executesql N'ALTER TABLE dbo.b_other_bmfl DROP COLUMN b_path';
END;
/* ---- 财务信息 / 币种 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeMoney)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@NodeMoney, @CatFinance, N'币种', 2,
CAST(@CatFinance AS varchar(20)) + '/' + CAST(@NodeMoney AS varchar(20)),
10, 1, 'd_other_money');
EXEC sys.sp_executesql N'
UPDATE dbo.b_other_bmfl
SET b_module_code = NULLIF(LTRIM(RTRIM(COALESCE(b_module_code, ''''))), '''');
/* ---- 物流信息 / 航线 ---- */
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeOceanline)
INSERT INTO dbo.b_other_bmfl (b_id, b_parent_id, b_name, b_level, b_path, b_xh, b_canuse, b_module_code)
VALUES (@NodeOceanline, @CatLogistics, N'航线', 2,
CAST(@CatLogistics AS varchar(20)) + '/' + CAST(@NodeOceanline AS varchar(20)),
10, 1, 'd_other_oceanline');
UPDATE dbo.b_other_bmfl
SET b_node_type = CASE
WHEN b_module_code IS NULL THEN ''category''
ELSE ''module''
END';
IF NOT EXISTS (
SELECT 1 FROM sys.check_constraints
WHERE parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'CK_b_other_bmfl_node_type'
)
EXEC sys.sp_executesql N'
ALTER TABLE dbo.b_other_bmfl
ADD CONSTRAINT [CK_b_other_bmfl_node_type]
CHECK (b_node_type IN (''category'', ''module''))';
IF NOT EXISTS (
SELECT 1 FROM sys.check_constraints
WHERE parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'CK_b_other_bmfl_module_ref'
)
EXEC sys.sp_executesql N'
ALTER TABLE dbo.b_other_bmfl
ADD CONSTRAINT [CK_b_other_bmfl_module_ref]
CHECK (
(b_node_type = ''category'' AND b_module_code IS NULL)
OR (
b_node_type = ''module''
AND b_module_code IS NOT NULL
AND LEN(LTRIM(RTRIM(b_module_code))) > 0
)
)';
IF NOT EXISTS (
SELECT 1 FROM sys.indexes
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'IX_b_other_bmfl_module'
)
EXEC sys.sp_executesql N'
CREATE INDEX [IX_b_other_bmfl_module] ON dbo.b_other_bmfl (b_node_type, b_module_code)';
EXEC sys.sp_executesql N'
DECLARE @CatBasic bigint = 930000000000000101;
DECLARE @CatFinance bigint = 930000000000000102;
DECLARE @CatLogistics bigint = 930000000000000103;
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatBasic)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (@CatBasic, NULL, N''基础信息'', ''category'', NULL, 10, 1);
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatFinance)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (@CatFinance, NULL, N''财务信息'', ''category'', NULL, 20, 1);
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @CatLogistics)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (@CatLogistics, NULL, N''物流信息'', ''category'', NULL, 30, 1);
DECLARE @NodePort bigint = 930000000000000201;
DECLARE @NodeCity bigint = 930000000000000202;
DECLARE @NodeMoney bigint = 930000000000000203;
DECLARE @NodeOceanline bigint = 930000000000000204;
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodePort)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (
@NodePort, @CatBasic, N''港口'', ''module'', ''d_other_port'', 10, 1
);
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeCity)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (
@NodeCity, @CatBasic, N''城市'', ''module'', ''d_other_city'', 20, 1
);
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeMoney)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (
@NodeMoney, @CatFinance, N''币种'', ''module'', ''d_other_money'', 10, 1
);
IF NOT EXISTS (SELECT 1 FROM dbo.b_other_bmfl WHERE b_id = @NodeOceanline)
INSERT INTO dbo.b_other_bmfl (
b_id, b_parent_id, b_name, b_node_type, b_module_code,
b_xh, b_canuse
)
VALUES (
@NodeOceanline, @CatLogistics, N''航线'', ''module'', ''d_other_oceanline'', 10, 1
);';
COMMIT TRANSACTION;
@@ -0,0 +1,13 @@
/* 删除未使用的旧版其他数据通用表。当前其他数据使用 b_other_bmfl 分类树
关联 s_module 数据节点,并由具体基础表保存数据。*/
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN TRANSACTION;
IF OBJECT_ID(N'dbo.b_other', N'U') IS NOT NULL
BEGIN
DROP TABLE dbo.b_other;
END;
COMMIT TRANSACTION;
@@ -0,0 +1,29 @@
/* 为其他数据分类树增加多语言键。分类节点归属 base_otherdata 页面模块;
数据节点名称继续使用其关联 s_module data 节点的 b_i18n。*/
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN TRANSACTION;
IF OBJECT_ID(N'dbo.b_other_bmfl', N'U') IS NOT NULL
BEGIN
IF NOT EXISTS (
SELECT 1 FROM sys.columns
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl') AND name = 'b_i18n'
)
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_i18n varchar(150) NULL;
END;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_module_code') IS NOT NULL
BEGIN
EXEC sys.sp_executesql N'
UPDATE dbo.b_other_bmfl
SET b_i18n = ''category.base_otherdata.'' + CAST(b_id AS varchar(30))
WHERE b_module_code IS NULL
AND (b_i18n IS NULL OR b_i18n = '''')';
END;
END;
COMMIT TRANSACTION;
@@ -0,0 +1,132 @@
/* 规范其他数据分类树为引用设计。
仅修正目标库元数据结构,不从模块管理同步树节点。*/
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN TRANSACTION;
IF EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'm_base_otherdata')
AND NOT EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = 'base_otherdata')
BEGIN
UPDATE dbo.s_module
SET b_code = 'base_otherdata'
WHERE b_code = 'm_base_otherdata';
END;
IF OBJECT_ID(N'dbo.b_other_bmfl', N'U') IS NOT NULL
BEGIN
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_node_type') IS NULL
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_node_type varchar(20) NOT NULL
CONSTRAINT [DF_b_other_bmfl_node_type] DEFAULT ('category') WITH VALUES;
END;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_module_code') IS NULL
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_module_code varchar(100) NULL;
END;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_i18n') IS NULL
BEGIN
ALTER TABLE dbo.b_other_bmfl
ADD b_i18n varchar(150) NULL;
END;
IF EXISTS (
SELECT 1 FROM sys.indexes
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'IX_b_other_bmfl_path'
)
DROP INDEX [IX_b_other_bmfl_path] ON dbo.b_other_bmfl;
EXEC sys.sp_executesql N'
UPDATE dbo.b_other_bmfl
SET b_module_code = NULLIF(LTRIM(RTRIM(COALESCE(b_module_code, ''''))), '''');
UPDATE dbo.b_other_bmfl
SET b_node_type = CASE
WHEN b_module_code IS NULL THEN ''category''
ELSE ''module''
END;
UPDATE dbo.b_other_bmfl
SET b_i18n = ''category.base_otherdata.'' + CAST(b_id AS varchar(30))
WHERE b_node_type = ''category''
AND (b_i18n IS NULL OR b_i18n = '''');
UPDATE dbo.b_other_bmfl
SET b_i18n = REPLACE(b_i18n, ''category.m_base_otherdata.'', ''category.base_otherdata.'')
WHERE b_node_type = ''category''
AND b_i18n LIKE ''category.m_base_otherdata.%''';
IF NOT EXISTS (
SELECT 1 FROM sys.check_constraints
WHERE parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'CK_b_other_bmfl_node_type'
)
EXEC sys.sp_executesql N'
ALTER TABLE dbo.b_other_bmfl
ADD CONSTRAINT [CK_b_other_bmfl_node_type]
CHECK (b_node_type IN (''category'', ''module''))';
IF NOT EXISTS (
SELECT 1 FROM sys.check_constraints
WHERE parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'CK_b_other_bmfl_module_ref'
)
EXEC sys.sp_executesql N'
ALTER TABLE dbo.b_other_bmfl
ADD CONSTRAINT [CK_b_other_bmfl_module_ref]
CHECK (
(b_node_type = ''category'' AND b_module_code IS NULL)
OR (
b_node_type = ''module''
AND b_module_code IS NOT NULL
AND LEN(LTRIM(RTRIM(b_module_code))) > 0
)
)';
IF NOT EXISTS (
SELECT 1 FROM sys.indexes
WHERE object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND name = N'IX_b_other_bmfl_module'
)
EXEC sys.sp_executesql N'
CREATE INDEX [IX_b_other_bmfl_module] ON dbo.b_other_bmfl (b_node_type, b_module_code)';
DECLARE @DropSql nvarchar(max);
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_level') IS NOT NULL
BEGIN
SET @DropSql = NULL;
SELECT @DropSql = N'ALTER TABLE dbo.b_other_bmfl DROP CONSTRAINT [' + REPLACE(dc.name, N']', N']]') + N']'
FROM sys.default_constraints dc
JOIN sys.columns c
ON c.object_id = dc.parent_object_id
AND c.column_id = dc.parent_column_id
WHERE dc.parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND c.name = N'b_level';
IF @DropSql IS NOT NULL EXEC sys.sp_executesql @DropSql;
EXEC sys.sp_executesql N'ALTER TABLE dbo.b_other_bmfl DROP COLUMN b_level';
END;
IF COL_LENGTH(N'dbo.b_other_bmfl', N'b_path') IS NOT NULL
BEGIN
SET @DropSql = NULL;
SELECT @DropSql = N'ALTER TABLE dbo.b_other_bmfl DROP CONSTRAINT [' + REPLACE(dc.name, N']', N']]') + N']'
FROM sys.default_constraints dc
JOIN sys.columns c
ON c.object_id = dc.parent_object_id
AND c.column_id = dc.parent_column_id
WHERE dc.parent_object_id = OBJECT_ID(N'dbo.b_other_bmfl')
AND c.name = N'b_path';
IF @DropSql IS NOT NULL EXEC sys.sp_executesql @DropSql;
EXEC sys.sp_executesql N'ALTER TABLE dbo.b_other_bmfl DROP COLUMN b_path';
END;
END;
COMMIT TRANSACTION;