PL/SQL是面向Oralcle数据库的集成开发环境,是众多Oracle数据库开发人员的主要工具。由于PL/SQL(百度百科)不仅是一种SQL语言,更是一种过程编程语言,在项目实施过程中,会积累大量除存储过程之外的程序代码。既然有代码,就必须对代码进行版本管理,实现代码变更的追溯和备份,这是软件开发过程的基本要求。作为使用Team Foundation Server (TFS)作为团队的应用软件生命周期管理(ALM)平台的企业,自然会要求TFS系统与PLSQL之间实现集成开发。在这个博客中,我主要介绍PLSQL连接TFS系统的软件环境,以及使用PLSQL与TFS集成,实现数据库脚本/代码版本管理的最佳实践。
一、必要条件
- MSSCCI
MSSCCI可以集成TFS与不支持团队资源管理器(Team Explorer)的开发工具,从而是这些开发工具可以与TFS结合实现源代码的版本管理。MSSCCI实际上是TFS的一系列API集合,开发工具可以通过调用其中的接口连接TFS服务器,实现与团队自由管理器一样的代码管理功能。除了非微软的第三方开发工具可以集成MSSCCI之外,实际上,许多老版本的Visual Studio(例如Visual Studio 2005)也需要集成它以后,才能连接TFS服务器。你可以通过下面的地址从Visual Studio市场中下载MSSCCI。
- PL/SQL版本控制插件
如果你的PLSQL Developer开发工具中已经有了CVS菜单,你不需要下载安装这个插件。否则,请重下面的地址下载安装它:http://www.allroundautomations.com/download/vcs124.zip
- TFS团队资源管理器 (TFS TE)
TFS团队自由管理器是TFS服务器原生的客户端程序,也是Visual Studio的一个精简版本,可以通过它实现源代码管理、工作项管理、生产管理等。可以通过下面的地址下载TFS 2013的版本:https://www.microsoft.com/en-us/download/details.aspx?id=40785。由于TFS 2015并没有发布对应的TFS TE版本,目前最新的TFS 2017 TE又不支持MSSCCI,你只能下载2013版本。幸运的是,经过测试,2013版本的团队自由管理器支持TFS 2017。
二、安装和配置
1. 安装PL/SQL
PLSQL的安装基本是傻瓜式的,不用说明。需要说明的是,安装完成以后,随便去搜一个序列号激活软件,网上有许多。
2. 安装Oracle客户端
Oracle客户端是PLSQL连接Oracle服务器必须的前提条件。
安装完成以后,可以参考下面的方法,把数据服务器的相关信息配置在tnsnames.ora文件中,你也可以在需要连接的时候在PLSQL中直接输入。
1. 添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径.
(如:C:\Ora10InstantClient,特别是重装后或其它操作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),
这是为了能够找到上面说的tnsnames.ora。如果本机上安装了ORACLE,并且设置了ORACLE_HOME环境变量,
那么会自动在%ORACLE_HOME%/network/admin/位置查找tnsnames.ora文件。
2. 配置服务器连接信息,即配置tnsnames.ora中的内容,示例如下:
ECIFDB_TEST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = XXX.XXX.XXX.XXX)(PORT = 1521)) (CONNECT_DATA = (SERVER=dedicated) (SERVICE_NAME = myTestDB) (INSTANCE_NAME = myTestDB ) |
3. 下载并安装源代码插件
http://www.allroundautomations.com/download/vcs124.zip
4. 下载并安装MS Visual Studio2013团队自由管理器
http://www.microsoft.com/en-us/download/details.aspx?id=39314
5. 下载并安装TFS 2013 MSSCCI Provider 32-bit
三、PL/SQL代码版本管理实践
1. 连接Oracle数据库
使用PLSQL连接我在上面配置好的数据库。如果你不需要在线调试SQL脚本,可以点击取消。
2. 连接TFS服务器
在PL/SQL中选择Open Project,连接TFS服务器。这里的Project,可以理解为服务器上存储代码的一个目录。
选择TFS服务器上的代码路径,指定本地的对应路径。本地路径就是PL/SQL的工作路径。
3. 签出
PL/SQL从服务器上自动下载、打开签出的数据脚本文件,你可以开发编辑、调试你的脚本了。
4. 签入
完成代码编辑和调试以后,可以直接在PLSQL中签入修改的代码。
在签入中选择文件,填写签入备注信息,例如我这里写了”这是张洪君在PL/SQL中测试签入代码“
使用过TFS系统的人,对下面的这个截图应该比较熟悉,你可以在这里选择签入的文件、修改注释、管理工作项等等。
下图是在TFS服务器上查看签入成功的文件:
(微软ALM MVP 张洪君 http://www.cnblogs.com/zhanghongjun)
5. 其他
- 除了典型的签入、签出之外,你可以使用其他的版本控制功能,例如撤销(Undo)、新增(Add)等等,这些都比较简单,自己摸索一下。