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

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

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

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


当前回答

版权就是这样;它涉及复制某物的权利。(注意,备份是允许的。)所以编辑他的代码,并运行编辑后的版本不会侵犯版权。

然而,他可能会试图声称他没有给予使用代码的书面许可;因此只有他才能使用它。另一方面,这样的限制可能被认为是不合理的限制——如果你在停车场开车从他身上碾过会发生什么?-(我刚才说了吗?^^)

但是,如前所述,不能脱离原合同的文件而单独考虑该评论。

另一种想法是,大多数开发者在他们的作品中加入这样的评论只是为了阻止那些赚钱的公司从他们的作品中获利。如果他每年收取这么多钱的唯一原因是他真的不想做这份工作,我也不会感到惊讶,但你们只是太慢了,不知道这有多容易。

其他回答

是的,SQL查询可以受版权保护。

你真正需要问的问题是——他是否真的拥有版权,或者他只是说他拥有。这取决于编写查询所依据的契约的条款。

编辑: 我想修改一下我的回答——你可以随心所欲地处理它(我不是律师!),只要不涉及奇怪的合同。

案例1:他把.sql文件作为“程序”卖给了你——.sql文件本身就是程序,你可以随心所欲地修改它——同样,如果你买了任何应用程序,你可以用十六进制编辑器打开它,并更改位。没有EULA禁止这样做。

案例2:他把.sql文件作为源代码卖给了你——他把源代码卖给了你,这意味着源代码是你从他那里买的东西,你可以修改它,就像修改你买的东西一样。

人们太沉迷于你可以“查看一个。sql文件的源”这一事实——它要么是一个程序,要么是一个源文件,这取决于合同,无论哪种方式你都可以修改它。版权保护人们不受未经授权的传播,而不是为内部使用而修改。

你从没说过你在哪,所以我们给你的任何建议都没用。不同的司法管辖区有不同的法律。

如果你在美国,打电话给你当地的律师协会,要求推荐一个从事软件版权工作的人,相信那个人告诉你的,而不是你在SO上读到的任何东西。如果你在另一个国家,找出相应的。

作为一名美国公民,而不是任何类型的律师,有几件事需要考虑。

你从没告诉过我们这个问题有多复杂。我们不可能为某些内容的唯一合理实现获得版权。如果它很简单,那就用简单的方式重写。如果它很复杂,则查询可能不是严格意义上的功能性查询,并且其中无疑存在一些创造性。在这种情况下,你应该用一种不同的方式重写它,或者雇一个人。

您应该能够找到比继续支付500美元/年更便宜的人来重写查询,并且应该不难找到比原始开发人员更有道德的人。

我会仔细研究所有的协议。你永远不知道,他可能第一年只拿到500美元,因为他知道他将支付某种类型的年费。这为学校系统节省了一大笔钱。

如果应用程序的数据结构改变了怎么办?他可能要花好几天重写这个查询,却只能得到500美元。

也许学校系统不想年复一年地收取固定的小时费,只是决定500美元是固定的费用。

以SQL文件为例,将其更改20%。添加格式,添加别名等等。如果它改变了20%即使他想上法庭也没有法官会说它是一样的。这不是版权,所以不用担心。

如果他在家里用自己的工具写代码,那么他就可以争取权利。如果他在开发SQL查询时使用了任何学校的材料,那么这就是学校的权利。

我在工作中一直在处理这些垃圾,因为我有一份全职的编程工作。

检查Aharonian诉Gonzales案。

基本上,您不能复制应用程序的源代码,但您可以创建功能相似的应用程序,只要不侵犯源代码本身的版权。

实际上,您可以重新创建SQL查询,但不能直接复制它们。

不过,如果你还有其他顾虑,可以找律师谈谈。