【每日一得】关于对SQL Server 2008用PowerDesigher进行逆向工程的问题


    一年多没到自己园子里逛了,真感到羞愧!“没有时间”永远只是借口,懒惰才是真正原因!

    闲话少说,先来总结一下今天遇到的几个问题:

    一、下载 Sql Server 2008 示例数据库(下载地址:http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=18407SQL2008.AdventureWorks_All_Databases.x86.msi ,安装过程中出现: "PrepInstance() failed for MSSQLSERVER. The following features are missing: Full Text Search. Fix the problems and re-run setup."这样的错误提示,结果安装被回滚。网上搜索了一下(http://blog.163.com/shell0120/blog/static/119493728200961281632467/),原来是AdventureWorks2008中使用了SQL2008的新特性FILESTREAM,所以必须要启用该特性才能够还原数据库成功。按照网上的做法,打开Windows服务,找到SQL Full-text Filter Daemon Launcher (MSSQLSERVER)这个服务,设为手动并启动它。再次安装示例数据库OK。
【转】

    AdventureWorks2008中使用了SQL2008的新特性FILESTREAM,所以必须要启用该特性才能够还原数据库成功。具体启动FILESTREAM的操作如下:

    (1)在SSMS中,打开数据库实例的属性窗口,在高级选项卡中将“文件流访问级别”设置为已启用完全访问或者已启用T-SQL访问。然后单击“确定”按钮。

image

    (2)在配置管理器中将SQL Server服务的FILESTREAM打开,如图:

image

    (3)重启SQL Server服务,然后再还原AdventureWorks2008数据库即可。

    另外两个示例数据库也接着还原即可。

    AdventureWorks2008与SQL2005的AdventureWorks数据库有以下特性上的不同:

    1.为了使用Entity Framework,所以添加了Person.BusinessEntityAddress这样的表。

    2.在表HumanResources.Employee中使用了hierarchyid 的数据类型。

    3.在表HumanResources.Employee中使用了date类型,在HumanResources.Shift表中使用了time数据类型。

    4.在表Person.Address中使用了地理空间数据类型geography。


    二、在利用PD对SQL SERVER 2008数据库进行逆向工程的过程中,总出现问题,生成的表都只有表名没有字段。经过几番折腾后,发现如果将PD的模板选为 SQL SERVER 7.X则没有任何问题。但是目前还不确定的是,如果使用了Sql server 2008或者2005的一些字段类型的话,如date、time、xml等,不知道逆向的结果是否又有新的问题呢?
posted @ 2009-09-27 17:26  bobomouse  阅读(669)  评论(0编辑  收藏  举报