在Oracle SQL Developer中使用源代码控制

时间:2013-09-11 04:14:57

标签: oracle oracle11g

我是Oracle的新手,所以我想在Oracle中执行源代码控制,因此Oracle SQL Developer中有一个选项供应

1.这是一个更好的解决方案,可以对Oracle进行版本控制

2.我可以使用PL / SQL

1 个答案:

答案 0 :(得分:4)

首先,您的问题讨论了两个不相关的概念 - 在SQL Developer中使用源代码控制,在PL / SQL中使用其他概念。因此,这是一个有希望消除一切歧义的回应:

  • Oracle SQL Developer确实提供了一种与源代码控制集成的方法。有关说明,请参阅this链接。它讨论了Subversion,它必须适用于任何其他源控制存储库,如Perforce或Clearcase。
  • 这是否是对Oracle进行版本控制的更好解决方案 - 对此没有明确的是/否;但是这种方法肯定是推荐的(为什么他们会在第一时间提供它?:))。保持代码编辑器与版本控制集成将节省与手动检出您正在编辑的每个文件相关的痛苦。更重要的是,当您移动/重命名文件或添加新文件时,它会有所帮助。你绝对不想编写一个很棒的软件包然后弄清楚构建失败只是因为你忘了添加依赖文件/手动从版本控制中删除一些过时的文件。因此,这是首选的方式 - 但是选择取决于您。
  • 你能使用PL / SQL - 坦白说PL / SQL和源代码控制之间没有任何关系 - PL / SQL只是Oracle数据库平台的一种编程语言(就像你可以用Java / C ++ / Python做的那样)与正确的绑定和驱动程序相同的任务)。我猜,混淆更多的是 - PL / SQL程序和函数作为数据库对象驻留在数据库中,那么源代码如何控制它们?那么,在这种情况下,答案是:
    • 在单独的文件中开发PL / SQL源代码程序并保留  它们与源代码树一起存储在磁盘上。
    • 从命令行实用程序(如SQL * Plus)或自定义安装程序调用这些文件以获取存储过程和
      在数据库中创建的函数。

该方法的优点是您可以独立于数据库实例开发和测试脚本 - 您可以将现有生产数据库克隆到测试数据库中,创建原始存储过程和数据库对象,然后验证任何更改或缺陷修复在不影响生产的情况下对这些对象。此外,由于您使用源代码控制检入这些文件,因此您还可以访问修订历史记录,以观察脚本随时间的变化情况。

我希望这个长期答案能让您深入了解如何实现目标。