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

所以为了做这个输出,我们必须雇佣一个了解我们学生管理系统内部运作的人。他写了一个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查询,从这样的数据库结构中获取以下信息”,基本上有一种“正确”的方式来编写它(当然可能会有一些变化)。完全独立工作的其他人很可能会编写完全相同的查询。

因此,你如何证明你的版权被侵犯了呢?

当然,我不是律师。

其他回答

看看你和那家伙的公司的合同。它可能已经说你拥有他们编写的任何代码。

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

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

首先,标准的免责声明:我不是律师,所以不要把我说的任何话当作法律建议。

我下面要说的是关于美国的法律——其他国家的法律可能会有所不同,尽管由于《伯尔尼公约》,许多国家的版权法是相当统一的。

版权可以涵盖创造性的书面作品,我想说SQL查询可以/确实属于这个范围。

与此同时,除非他与学校的合同写得很奇怪,否则他为他们写的是一份雇佣工作。在这种情况下,他的版权主张很可能是彻头彻尾的谎言——当一部作品是为了雇佣而写的时候,拥有版权的是雇佣者,而不是作者。

关于雇佣作品的构成似乎存在一些争议。根据美国法律(17 USC,§101):

A “work made for hire” is— (1) a work prepared by an employee within the scope of his or her employment; or (2) a work specially ordered or commissioned for use as a contribution to a collective work, as a part of a motion picture or other audiovisual work, as a translation, as a supplementary work, as a compilation, as an instructional text, as a test, as answer material for a test, or as an atlas, if the parties expressly agree in a written instrument signed by them that the work shall be considered a work made for hire.

由于此查询似乎属于“(1)”的范围,因此即使没有明确的协议,它也可以被视为有偿制作的作品。可能的例外情况是,如果他的合同是书面的,那么就排除了在他的雇佣范围内编写询问。

唯一值得商榷的是他是否有资格成为一名雇员。对于咨询师来说,这可能是一个很难回答的问题。基本上,如果他是完全独立的工作,只是交付一个最终结果,那么他可能不是。如果他像普通员工一样工作,他们可以控制他的日程之类的事情,那么他很有可能只是一个临时员工。

检查Aharonian诉Gonzales案。

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

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

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

从copyright.gov:

Copyrightable works include the following categories: literary works musical works, including any accompanying words dramatic works, including any accompanying music pantomimes and choreographic works pictorial, graphic, and sculptural works motion pictures and other audiovisual works sound recordings architectural works These categories should be viewed broadly. For example, computer programs and most "compilations" may be registered as "literary works"; maps and architectural plans may be registered as "pictorial, graphic, and sculptural works."

更具体地说,你的问题:

Several categories of material are generally not eligible for federal copyright protection. These include among others: Works that have not been fixed in a tangible form of expression (for example, choreographic works that have not been notated or recorded, or improvisational speeches or performances that have not been written or recorded) Titles, names, short phrases, and slogans; familiar symbols or designs; mere variations of typographic ornamentation, lettering, or coloring; mere listings of ingredients or contents Ideas, procedures, methods, systems, processes, concepts, principles, discoveries, or devices, as distinguished from a description, explanation, or illustration Works consisting entirely of information that is common property and containing no original authorship (for example: standard calendars, height and weight charts, tape measures and rulers, and lists or tables taken from public documents or other common sources)

IANAL,但是我在列表中没有看到任何使SQL查询不符合版权保护资格的内容,而用图灵完备语言编写的程序则被认为是可受版权保护的。我倾向于说,SQL是有版权的。

考虑到这一点,您肯定希望采纳其他答案之一的建议,要么用没有如此繁重许可的代码替换代码,要么让您的承包者对查询进行参数化。如果他拒绝,毫不犹豫地解雇他。