当前位置:知识百科 > 正文

sqlserver区

更新时间:2026-04-17 23:20 阅读量:62

如何导入sqlserver行政区划

第一段:到国家统计局网站,找到县及县以上行政区划页面.

我找到的是这个:

然后将页面上的代码直接复制粘贴到记事本,保存为 e:\temp\region.txt.

第二段:硬着头皮用SQL SERVER Management Studio导进去.

导入的时候注意一点,就是要在目标表里设置一个标识列.

第三段:生成区域表

今天这一节导进去的目标表,只是一个临时用的中间表:region_tmp,我真正要的,是表region.

中间表region_tmp的结构:

region_tmp

======================

id int identity(1,1)

导进去以后,数据如下:

而我想要的区域表region

region

=========================

id int identity(1,1)

parentId int

所以现在需要将数据再从region_tmp == region.

在导入的时候,之所以要设置一个标识列,就是用来区分邮政编码和地名.在region_tmp,奇数行都是编码,偶数行则是地名,所以呢可以通过以下语句将编码和地名都写进region的同一行:

INSERT INTO [dbo].[Region]

([code]

,[name]

,[parentId])

SELECT a.cn,b.cn,0

FROM region_tmp a,region_tmp b

WHERE b.id=a.id+1

第四段:修改区域表

现在要修改字段region.parentId.就是每个地名记录要有一个父ID,在使用的时候好排序.比如广州的父ID是广东省,天河区的父ID是广州.

--设置市级地名的父ID

UPDATE [dbo].[region]

SET parentid=b.id

FROM [region],[region] b

--设置县级地名的父ID

SqlServer是如何管理,分配存储空间的呢

Sql Server 区管理(GAM,SGAM)

为解决上述问题,SQLSERVER提供了一种解决方案,定义了两种盘区类型,统一盘区和混合盘区.

据区当前的使用情况,GAM 和 SGAM 中每个区具有以下位模式:

这将简化区管理算法.若要分配统一区,数据库引擎将在 GAM 中搜索为 1 的位,并将其设置为 0.若要查找具有可用页的混合区,数据库引擎将在 SGAM 中搜索为 1 的位.若要分配混合区,数据库引擎将在 GAM 中搜索为 1 的位,将其设置为 0,然后将 SGAM 中对应的位设置为 1.若要释放区,数据库引擎确保将 GAM 位设置为 1,将 SGAM 位设置为 0.实际上,数据库引擎内部使用的算法比本主题中介绍的更为复杂,因为数据库引擎在数据库中均匀分布数据.但是,由于无需管理区分配信息链,所以呢即使是实际算法也会被简化.

管理Sql Server可用空间

首先摘录段 MSDN 的一段官方解释:

将区分配给对象后,数据库引擎将使用 PFS 页来记录区中的哪些页已分配或哪些页可用.数据库引擎必须分配新页时,将使用此信息.保留的页中的可用空间量仅用于堆和 Text/Image 页.数据库引擎必须找到一个具有可用空间的页来保存新插入的行时,使用此信息.索引不要求跟踪页的可用空间,因为插入新行的点是由索引键值设置的.

看过之后,让人一头雾水,真是不知所云,真佩服这些 MSDN 是如何翻译的,看来中文 MSDN 太不靠谱,最后没办法,只能google了

其实上面说的意思就是:Sql Server 管理可用空间的方法是,查找每个每个页面是否使用,以及使用情况情况.这时就需要一个页面来记录各个页面的使用情况了,这就是 PFS 页.

让我们首先了解一下PFS的页面管理字节的构造,管理单位为字节,每字节管理一个页面.

第0个bit为保留字节,始终为0

sqlserver和mysql区别

开发公司不同、开发工具包搭配不同、开放性不同.sqlserver是由Microsoft开发和推广.mysql由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品.

sqlserver和mysql区别

开发工具包搭配不同

①.、SQLserver:SQLserver能与 Microsoft Visual Studio、Microsoft Office System以及开发工具包搭配.

开放性不同

①.、SQLserver:SQLserver不是开放源码软件

SQL Server的特点是可信任.使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序;高效.使得公司可以降低开发和管理他们的数据基础设施的时间和成本;智能.提供了一个全面的平台,可以在用户需要的时候给他发送观察和信息.

Mysql的特点是其体积小、速度快、总体拥有成本低,尤其是开放源码.一般中小型网站的开发都选择 MySQL 作为网站数据库.

什么是MySQL?

已经成为MySQL特征的东西是它在创业社区中的受欢迎程度.因为它是开源的和免费的,所以开发人员可以轻松地开始使用MySQL,并在他们可能需要的极少数情况下修改其代码.MySQL通常与PHP和Apache Web Server 结合使用,在Linux发行版之上,这导致了著名的首字母缩略词LAMP(L inux,Apache,MySQL,PHP).

什么是SQL Server?

SQL Server主要面向使用.NET作为开发语言的开发人员,而不是PHP for MySQL.这是有道理的,因为两者都属于微软的保护伞.