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

所以为了做这个输出,我们必须雇佣一个了解我们学生管理系统内部运作的人。他写了一个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”。)

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

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


当前回答

我不是律师,等等等等……

以下内容来自www.copyright.gov:

“版权保护不适用于思想、程序 逻辑、算法、系统、方法、概念或布局。”

如果您从他的.bat文件中提取SQL代码,那么它很可能属于“程序逻辑”的类别。他可能会争辩说他的简单的.bat文件是一个“程序”,但如果归结到这一点上,他很可能会失去这个论点。

此外(更重要的是),你必须向政府提交文件才能获得计算机程序的版权。我非常怀疑他每年都这样做(任何计划的改变都需要重新申请和不可退还的费用)。

最后,如果这个家伙为了他每年500美元的收入而受到如此大的伤害,那么我怀疑他有没有钱请律师来打官司。你自己做,如果他真的发现了,并提出了臭味(我怀疑他会),然后让他咆哮和咆哮。不要解释自己,不要卷入争论。只要说你对他说的话不感兴趣,然后“祝你今天愉快”。他很可能会怒气冲冲地离开,从此杳无音讯。

再说一次,这不是法律建议,我不是律师,我从来没有在电视上扮演过律师。

其他回答

我认为在这一点上,我们的开发世界是关于保护我们的“想法”的。如果我(曾经看过上面提到的代码)自己写了一个句子,结果与您的提供者正在保护(或试图保护)的句子完全相同,会发生什么?SQL是一种非常有限的语言,一个问题的最佳解决方案在不同的开发人员之间趋于相似。那我就不能用我自己的代码吗?因为和你的源代码是一样的?

只需更改代码,自己使用并更新数据。如果他们问你,回答你已经手动更新了所有的记录,一个接一个。你知道,开发人员是非常有耐心的。他们怎么能证明这不是真的呢?

你可以获得源代码的版权。

但是(通常)版权属于为源代码付费的人,除非在工作合同中有不同的规定。

学校系统也(通常)有权修改源代码。他们付给顾问的500美元是为了奖励他的时间和努力。

我认为你需要看的不是代码,而是写代码的人所依据的合同。通常在任何类型的编程活动中,项目的源代码/目标代码的所有权都有明确的指示。

如果原来的合同里没有,我会确保这份合同里有。

把2009年改成2010年要500美元?哦,伙计,真是个骗局。

今年付给他500美元,并告诉他你想让查询以学年为参数。看看他知道这将是他最后一次为你工作时作何反应。

让开发人员在此人运行查询时打开SQL分析器(假设您使用的是SQL Server)。捕获查询并将其用作自己的查询。

仅仅因为您在查询中抛出了一个声明版权的注释(可能不会传递给SQL)并不意味着它就是版权。如果您拥有数据库和其中的数据,那么您就有权审查进入数据库的每个查询。记住,除了其他人不是律师之外,我们假设你也不是律师,你很容易在这个问题上装傻。我会让位置成为法律的9/10,抓住问题,如果这个人想起诉,告诉他让你开心。

这里的另一个关键元素是没有意图重新分发这个家伙的代码。你是在为你自己的内部使用制作一个衍生作品。