浅谈SQL Server表分区及其应用

by shinichi_wtn 2016-08-08 22:20
本文简单介绍了SQL Server企业版才拥有的强大的表分区(Table Partition)功能,并用一个实际的例子完成了表分区涉及的基本操作。表分区拥有许多优势,其对用户是透明的,但是在底层应用了数据分区,根据分区定义对表的数据进行了划分(比如把不同的分区放到不同的FileGroup),从而能够实现快速地数据装载/移动/删除。设想一下我们有一个数据仓库的应用,每天会把新一天的数据加载到表FactTable中,这个数据量往往很大。如果不应用表分区,那我们需要在同一个表FactTable里进行数据的插入操作,而插入操作往往会锁定整个表,这时往往会阻碍其他用户的查询,以及查询性能。 [More]

用Godaddy虚拟主机运行BlogEngine.NET(博易)

by shinichi_wtn 2011-02-08 09:54
BlogEngine.NET(中文的本地化版本叫博易)是一款非常棒的开源博客系统,本文介绍了在Goddady上运行BlogEngine.NET的方法。Godaddy的windows主机口碑还不错,尤其是它全自动化的管理,非常方便。许多用户都选择了Deluxe方案,有150G的空间,支持全系列ASP.NET版本,还提供了2个200M的SQL Server数据库,性价比很高。购买Godaddy可以使用支付宝支付,也可以在淘宝网上代购。 [More]

SQL Server 2008删除或压缩数据库日志的方法

by shinichi_wtn 2010-09-20 20:15
由于数据库日志增长被设置为“无限制”,所以时间一长日志文件必然会很大,一个400G的数据库居然有600G的LOG文件,严重占用了磁盘空间。由于主要是做OLAP,所以数据库本身不会有大变动,所以日志也就没有多少作用了,因此想办法把数据库日志文件收缩到很小或者删除。 网上搜索相关解决方案后,得到的答案丰富多彩,但是真正管用的方案并不多,这里分享一个csdn上找到的方法。这个方法讲述了SQL Server 2005和SQL Server 2008在收缩数据库日志的不同之处,颇有帮助。同时,该方法的效率很高,收缩600G的日志到10M只花了不到30秒。 下面一张图是收缩后的... [More]

微软MySQL to SQL Server迁移工具SSMA CTP1.0试用

by shinichi_wtn 2010-01-13 20:22
今天下载了微软才发布的MySQL to SQL Server迁移工具SQL Server Migration Assistant 2008 for MySql,由于甲骨文收购SUN一拖再拖,MySql的命运也不可知,于是微软发布该软件,帮助MySql用户把数据迁移到SQL Server里面。 其实MySql是一款很棒的数据库软件,现在许多企业级的应用都使用了它,但是MySql在安全性和超大规模数据库应用(数据仓库、数据挖掘等)中,没有收费的SQL Server和Oracle好,但是,由于其轻便、开源、免费,深受用户喜爱,大家也不希望MySql被甲骨文所遗弃,现在我做的一些项目就是基于MySq... [More]

SQL Server与MySQL存储过程学习记录之二

by shinichi_wtn 2009-12-18 10:43
在学习记录一中,讨论了SQL Server与MySQL各自建立存储过程的方法和过程,并简单做了一下对比。在实际应用中,查询往往是很复杂的,不可能用一简单的一行SQL语言就能满足我们的需求,这个时候,就需要使用SQL编程。 实现SQL编程有两种方式,第一种就是用高级语言进行反复调用,因为我们熟悉一门或多门高级程序语言,比如C,C++,C#,PHP,Java等等,这些都是能调用数据库操作的。比如在C#这样的面向对象编程语言里,万物皆对象,在创建一个数据库调用程序时,首先需要新建一个连接,同时建立一条SQL操作指令,然后打开连接,执行该指令,最后返回结果,关闭连接。 首先以C#调用SQL Ser... [More]

SQL Server与MySQL存储过程学习记录之一

by shinichi_wtn 2009-12-15 13:39
SQL语句执行的时候要先编译,然后执行。存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。 SQL Server的存储过程在设计BNU校园百科的时候就有使用,因为存储过程不仅能提高SQL语言的执行效率,同时参数化的调用比每次都写一条SQL语句来得方便。 【SQL Server存储过程的建立】 在企业管理器新建一个StoreProcedure会自动生成相应导航代码,方便用户编写函... [More]

SQL Server 全文索引查询T-SQL学习笔记之二(Full-text index)

by shinichi_wtn 2009-12-12 15:10
在学习笔记一里已经掌握了基本的contains语法和freetext语法的用法,但是面对一些复杂的操作,基本的包含语法是不够用的,如果我们想要查询含有“世界”或“末日”的所有字符串集合,那么无论是contains([column],'世界末日')或者freetext([column],'世界末日')都不能很好的工作,当然contains本身是可以含有条件的,因此有两个解决方案。 多条件查询 第一个就是传统的where多条件查询,加上两个contains语句,然后用or连接 select [Column] as [result] from S... [More]

SQL Server 全文索引查询T-SQL学习笔记之一(Full-text index)

by shinichi_wtn 2009-12-11 11:29
引言 这段时间为了提高海量字符串数据的查询效率,我对字段添加了全文索引。首先全文索引相对于传统的索引是有区别的,这是因为传统的索引主要是以首字母开始建立的索引,处理like 'keword%'这样的查询会很高效,但是如果查询时不限定首字母,而只是包含某个词,比如like '%keyword%'这样的查询,实际操作中无法使用传统索引加速查询效率,而只能一项一项比较了。 而全文索引正是提供了“包含”式查询机制,查询一个长字符串中是否包含给定关键词的功能,这无论是在搜索引擎或是网站的搜索平台都是很有用处的。 首先,推荐一本学习SQL Server全文索引的书籍,这本书详... [More]

用SQL Server企业管理器导入导出数据(import/export data)

by shinichi_wtn 2009-11-14 16:34
今天一家虚拟主机运营商说什么要被某某公司接管,网页服务器和数据库服务器都会有相应变化,要我们用户做好备份,无语啊...... 网页数据好办,直接FTP上拷贝即可,但是数据库就不好办了,需要将数据导进我自己的库里,当然了,SQL Server Management Studio已经为我们做好了这样的准备,在需要导入或导出的数据库上点右键,找到"task"(任务),然后就有"import data"(导入)或"export data"(导出),比如我们选择"export data"(导出数据), 这时会弹出欢迎界面,直接点下一步,进入设置窗口。导出和导入操作都需要一个数据起源(sourse... [More]

将TXT文档导入SQL Server数据库中

by shinichi_wtn 2009-07-27 21:17
ACCESS提供了图形化的界面,能够很方便把诸如TXT,XML,CVS,XLS等常用列表类数据直接导入现有表或新表中,而SQL Server却找不到相应的功能按钮,于是在网上找了找,发现要用T-SQL语句。 其中语法很简单,主要就是“bulk insert”命令,相应的格式为 bulk insert ××× from 'F:\×××.txt' WITH ( DATAFILETYPE = 'char', FIELDTERMINATOR = '\t', ROWTERMINATOR = '\... [More]

About

shinichi_wtnI'm Shinichi_wtn

Software Engineering Manager at Microsoft

[More...]

Widget Recent Tweets not found.

The remote server returned an error: (403) Forbidden.X


Month List