我在一个学区工作。每年我们都必须从学生管理系统中导出一份学生名单,并将其发送给处理我们在线考试的公司。

所以为了做这个输出,我们必须雇佣一个了解我们学生管理系统内部运作的人。他写了一个sql (Adaptive Sybase sql Anywhere)查询,将学生导出到我们需要的csv文件。这是在我开始为学区工作之前,所以有一段时间我以为这是一个真正的应用程序,直到轮到我自己做导出的时候。

每年他都会向我们收取500美元来更新这个查询以导出当年的学生。所以当我发现它只是一个查询(.bat文件和.sql文件)时,我的想法是“我可以自己更新”。我所要做的就是改变查询中的年份(例如。2009 - 2010)。

查询(。SQL文件)本身在顶部有这样的注释:

// This code was writtend by [the guy]
// and is the property of [his company]...Copyright 2005,2006,2008,2009
// This code MAY NOT BE USED without the expressed written consent of 
// [his company].

(是的,上面确实写着“writtend”。)

所以现在我老板担心我们侵犯了版权。那家伙会发现是我自己更新了查询因为我们今年还没有要求他更新并采取法律行动。

回到刚才的问题: 他真的能获得这个问题的版权吗? 如果是的话,我们自己修改是不是侵犯了版权? 在我看来,单个查询不是程序代码。它更像是一个命令行命令。但我不知道这在法律上是怎么考虑的。


当前回答

定义一个新的视图使用原始查询作为基础,而不指定日期参数。

create or replace view MY_VIEW as
 select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
   from STUDENT_TABLE
  where STUDENT_CLASS = 10

写一个新的查询从视图中选择应用日期参数,例如。

set DATE_PARM = '2009';
select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
  from MY_VIEW
 where CLASS_YEAR = %DATE_PARM

其他回答

根据美国版权法第102条b段:

版权保护在任何情况下都不能 原创作品 扩展到任何想法,程序, 流程、系统、操作方法、 概念、原理或发现, 不管它是什么形式 描述的,解释的,说明的,或 体现在这样的工作中。

这是原版。

免责声明:我!=律师

只是一个想法:你可能会发现请一个律师审查这个比每年支付500美元更新更便宜。

真是一派胡言。

我的建议是修改SQL语句,运行查询,然后等待那家伙采取法律行动。选择法庭听证会,并在博客上直播结果。听起来会很有趣,一方面是一个剥削成性的承包商,另一方面是一个胆小的经理,不敢让你继续做生意。我很想看看承包商是如何加入这个计划的,然后传唤你的代码库,以确定你是如何在没有他的情况下完成年终的。

因为(C)当然是全能的,你不知道吗?你不能说它不是因为我在括号里加了个C。

相反,您应该考虑学习该查询的重要方面,并实现您自己的版本,您也可以获得版权。如果你不能这样做,你最好买一个。

Add:其中1=1。

新的查询,问题解决。

SQL查询绝对可以受版权保护。然而,版权法只有在你打算分发源代码(即复制)时才适用。鉴于顾问提供了源代码的副本,而您没有将其传输给其他人,版权法不适用。

你和这个顾问之间的协议完全是另一回事。检查合同是否授予您永久使用代码的许可。或者,在你明年雇佣他之前,让他修改协议(和源代码注释)。如果有疑问,请咨询真正的律师。

免责声明:我不是律师。