116 lines
5.0 KiB
Transact-SQL
116 lines
5.0 KiB
Transact-SQL
-- ----------------------------
|
|
-- 候选人表结构更新脚本 (SQL Server)
|
|
-- 说明:此脚本用于为候选人表添加缺失字段
|
|
-- 请根据实际情况谨慎执行,建议先备份数据
|
|
-- ----------------------------
|
|
|
|
-- ----------------------------
|
|
-- 第一步:备份原有数据(可选,建议执行)
|
|
-- ----------------------------
|
|
-- select * into biz_candidate_backup from biz_candidate;
|
|
|
|
-- ----------------------------
|
|
-- 第二步:添加缺失字段
|
|
-- ----------------------------
|
|
-- 沟通日期
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'communication_date')
|
|
begin
|
|
alter table biz_candidate add communication_date date null;
|
|
execute sp_addextendedproperty 'MS_Description', '沟通日期', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'communication_date';
|
|
end
|
|
go
|
|
|
|
-- 项目组
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'project_group')
|
|
begin
|
|
alter table biz_candidate add project_group varchar(100) null;
|
|
execute sp_addextendedproperty 'MS_Description', '项目组', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'project_group';
|
|
end
|
|
go
|
|
|
|
-- 统招是否
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'is_unified_recruitment')
|
|
begin
|
|
alter table biz_candidate add is_unified_recruitment char(1) null;
|
|
execute sp_addextendedproperty 'MS_Description', '统招是否(0否 1是)', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'is_unified_recruitment';
|
|
end
|
|
go
|
|
|
|
-- 专业
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'major')
|
|
begin
|
|
alter table biz_candidate add major varchar(100) null;
|
|
execute sp_addextendedproperty 'MS_Description', '专业', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'major';
|
|
end
|
|
go
|
|
|
|
-- 是否愿意外派
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'willing_to_outsource')
|
|
begin
|
|
alter table biz_candidate add willing_to_outsource char(1) null;
|
|
execute sp_addextendedproperty 'MS_Description', '是否愿意外派(0否 1是)', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'willing_to_outsource';
|
|
end
|
|
go
|
|
|
|
-- 是否在职
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'is_employed')
|
|
begin
|
|
alter table biz_candidate add is_employed char(1) null;
|
|
execute sp_addextendedproperty 'MS_Description', '是否在职(0否 1是)', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'is_employed';
|
|
end
|
|
go
|
|
|
|
-- 离职周期多久
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'resignation_cycle')
|
|
begin
|
|
alter table biz_candidate add resignation_cycle varchar(50) null;
|
|
execute sp_addextendedproperty 'MS_Description', '离职周期多久', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'resignation_cycle';
|
|
end
|
|
go
|
|
|
|
-- 什么时候方便面试
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'interview_availability')
|
|
begin
|
|
alter table biz_candidate add interview_availability varchar(200) null;
|
|
execute sp_addextendedproperty 'MS_Description', '什么时候方便面试', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'interview_availability';
|
|
end
|
|
go
|
|
|
|
-- 候选人住哪里
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'residence_location')
|
|
begin
|
|
alter table biz_candidate add residence_location varchar(200) null;
|
|
execute sp_addextendedproperty 'MS_Description', '候选人住哪里', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'residence_location';
|
|
end
|
|
go
|
|
|
|
-- 是否加微信
|
|
if not exists (select * from sys.columns where object_id = object_id('biz_candidate') and name = 'wechat_added')
|
|
begin
|
|
alter table biz_candidate add wechat_added char(1) null;
|
|
execute sp_addextendedproperty 'MS_Description', '是否加微信(0否 1是)', 'SCHEMA', 'dbo', 'TABLE', 'biz_candidate', 'COLUMN', 'wechat_added';
|
|
end
|
|
go
|
|
|
|
-- ----------------------------
|
|
-- 第三步:添加唯一约束
|
|
-- ----------------------------
|
|
-- 删除可能存在的旧索引
|
|
if exists (select * from sys.indexes where name = 'uk_name' and object_id = object_id('biz_candidate'))
|
|
drop index uk_name on biz_candidate;
|
|
if exists (select * from sys.indexes where name = 'uk_phone_number' and object_id = object_id('biz_candidate'))
|
|
drop index uk_phone_number on biz_candidate;
|
|
if exists (select * from sys.indexes where name = 'uk_name_phone' and object_id = object_id('biz_candidate'))
|
|
drop index uk_name_phone on biz_candidate;
|
|
go
|
|
|
|
-- 创建唯一索引:姓名唯一(过滤空值)
|
|
create unique nonclustered index uk_name on biz_candidate(name)
|
|
where name is not null;
|
|
go
|
|
|
|
-- 创建唯一索引:手机号码唯一(过滤空值)
|
|
create unique nonclustered index uk_phone_number on biz_candidate(phone_number)
|
|
where phone_number is not null;
|
|
go
|