行政区划数据数据库的设计(七)

作者水如烟分享了在设计行政区划数据数据库时的经验,修改了行政区划的全名并创建了一个存储过程,以输出所需信息。该数据库适合用于练习,未来可以进行更多分析,如历年数据对比、城市化进程研究等。下一篇文章将介绍行政区划程序的查询实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

Author水如烟

 

总目录:行政区划数据方案设计

上一篇,行政区划数据数据库的设计()

 

上文实现了把区划码按三个行政级别分成了六个类,分别是:
一级:省
二级:省直辖市、地区州盟
三级:市地辖区、县旗、省直辖县级市

至于这样的命名和分级对不对,我心里也没准,不过修改还是方便的,到时知错了改正就是了。
 
现在继续说附属部分的全名。
 
单单给出了区划码和名称,如:654221 额敏县,我们看着也只有干着急的份。需要更多的信息。如是654221  新疆维吾尔自治区塔城地区额敏县,这才是我们需要的,看着也乐意。
 
全名无非是由省+市+县的名称组成,也就是一级名称+二级名称+三级名称,这是约定俗成的,不知也有相关规定没有,这回我没有去找(应当已有国家标准规定)。
 
这个定义我可以用函数固定下来了:
 
[Action]. 全名

USE  [ RegionalCodeWorks ]
GO
/* ***** 对象:  UserDefinedFunction [Action].[全名]    脚本日期: 09/21/2006 17:55:00 ***** */
SET  ANSI_NULLS  ON
GO
SET  QUOTED_IDENTIFIER  ON
GO
--  =============================================
--
 Author:      LzmTW
--
 Create date: 20060921
--
 Description: 取行政区全名 
--=============================================

CREATE  FUNCTION  [ Action ] . [ 全名 ]  
(
     
@当前时间      [ Base ] . [ RegionalDate ]      =  N ' Current '
    ,
@一级          nchar ( 2 )
    ,
@二级          nchar ( 2 )
    ,
@三级          nchar ( 2 )
)
RETURNS  nvarchar ( 200 )
AS
BEGIN
    
-- 初始化变量

    
DECLARE    @全名          nvarchar ( 200 )
            ,
@一级全名      nvarchar ( 100 )
            ,
@二级全名      nvarchar ( 100 )
            ,
@三级全名      nvarchar ( 100 )

    
SET  @一级全名  =  N ''
    
SET  @二级全名  =  N ''
    
SET  @三级全名  =  N ''

    
DECLARE    @一级区划码      [ Base ] .RegionalCode
            ,
@二级区划码     
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值