有人可以版权SQL查询吗?

Sam*_*utz 208 sql

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

所以要做这个出口,我们必须雇用一个知道我们学生管理系统内部运作的人.他编写了一个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].
Run Code Online (Sandbox Code Playgroud)

(是的,它确实说"写".)

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

回到主题的问题:他真的可以对此查询进行版权保护吗?如果是这样,我们自己修改了侵犯版权的行为吗?在我看来,单个查询不是程序代码.它更像是命令行命令.但我不知道它在法律上是什么.

rjm*_*nro 222

如果我是你,我会写一个查询需要做的完整描述,包括所有的表,字段名等,并在此处发布.这里的某个人一定能够编写一个新版本的查询,而这个版本不是开发人员的版权,您可以每年编辑它以满足您的内容.

  • @David,请点击此处查看答案:http://stackoverflow.com/questions/1840847/can-someone-copyright-an-sql-query (33认同)
  • @Alex,没人说要查看旧查询的实现!事实上,每个人都特别避免这样说!你抽烟了吗?所要求的只是数据库定义,解释了查询需要做什么. (10认同)
  • SQL代码是否真的有资格获得版权? (7认同)
  • @David我喜欢你如何再次问原问题但是以不同的方式 (7认同)
  • 当然,在CC-Wiki下自动发布的代码存在问题,除非放弃... (3认同)
  • 这绝对是接近版权的错误方式!通过查看旧查询的实现来提出自己的知识产权(从法律角度来说),你就是在窃取知识产权 - 所以这并不比仅仅使用别人的代码更好.相反,对于这样的情况,仅通过分析其输入和输出来重写查询,将其视为黑盒子. (3认同)
  • @PaulG,这是一个多么可爱的递归答案 (2认同)

Nei*_*l N 139

收费500美元改变2009年至2010年?哦,男人真是个骗子.

今年给他500美元,并告诉他你想要查询以学年作为参数.看看他如何回应知道这将是他最后一次为你工作.

  • 我可以为你节省400美元.告诉那个家伙,"看,这种情况很荒谬.我会以100美元的价格买下你的代码.或者我可以在几个小时内自己重新实现.你的选择." (83认同)
  • 呃......道德,需要他们...... (6认同)
  • 不幸的是,他会引用不同的(更高的)价格来进行参数化.你最好的选择是让某人重建查询(如果你碰巧在他们这样做的时候留下他当前的查询,那又怎样?如果这是一个非常复杂的查询 - 我怀疑 - 它可以重写,所以它看起来不像原始的,如果它是一个简单的查询,一旦新的看起来不同,他就无法证明IP).我的两分钱. (5认同)
  • 最好的解决方案绝对是雇用一​​名ETHICAL程序员以正确的方式编写它.也许有一个干净的前端让一个不是程序员的人输入新的一年并按下按钮...... (5认同)
  • 他的版权评论表明你甚至不能在没有他的许可的情况下运行sql ... - 虽然我同意,这是一个骗局. (3认同)

Jer*_*fin 59

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

我在下面所说的是关于美国的法律 - 在其他国家,它可能会有所不同,但是由于"伯尔尼公约",许多国家的版权法相当统一.

版权可以涵盖创意,书面作品,我会说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)"的范围,因此即使没有明确同意这一点,它也可以作为雇用的工作.在可能的例外是,如果他的合同的书面所以排除属于其工作范围内,以书面查询.

唯一真正值得怀疑的部分是他是否有资格成为一名员工.就顾问而言,这可能是一个难以回答的问题.基本上,如果他完全独立工作,并且只是提供最终结果,那么他可能不是.如果他像普通员工一样工作,并且他们可以控制他的日程安排等事情,那么他很有可能成为一名临时员工.

  • @Jerry这是另一种方式.如果没有指定任何内容,那么**不是**工作出租.雇佣工作必须具体详细说明才有效. (10认同)
  • 我很抱歉,但不是我们所有人都在美国,并非我们所有人都明白法律文本的mambo-jambo ......你能解释一下你实际上在说什么吗? (4认同)

Bar*_*ttJ 58

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

你真正需要问的问题是 - 他是否真的拥有版权,或者他只是说他做了.这取决于编写查询的合同条款.

编辑:我想修改我的答案 - 你可以用它做你想做的事(我不是律师!),只要没有涉及奇怪的合同.

案例1:他将.sql文件作为"程序"出售 - .sql文件本身就是程序,您可以随意修改它 - 如果您购买任何应用程序,可以使用十六进制编辑器打开它改变一下.没有EULA禁止这样做.

案例2:他卖给你.sql文件作为源代码 - 他卖给你的来源意味着源是你从他那里买来的,你可以修改它,因为你只是修改你买的东西.

人们越来越关注你可以"查看.sql文件的来源" - 它既可以是程序,也可以是源文件,具体取决于合同,无论哪种方式都可以修改它.版权保护人们免受未经授权的分发,而不是内部使用的修改

  • 取决于您所在的国家/地区 (3认同)

pmf*_*pmf 52

找一个从未见过敲诈者代码的人来检查表结构并以洁净室方式派生出一个等价的查询.

  • 如果准确的话,这不是诽谤. (11认同)
  • "有点诽谤".对不起,考虑到查询编写器是*完全*匿名,诽谤是如何进入的?我发现强烈的评论非常有趣.似乎已经打了一个原始的神经. (11认同)
  • 有点诽谤,使用贬义'勒索',但显然准确可能但声音:) (4认同)
  • @Breton:真相通常但不总是防止诽谤. (2认同)

Rya*_*rle 34

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

在任何情况下,原创作品的版权保护都不会扩展到任何想法,程序,过程,系统,操作方法,概念,原则或发现,无论其描述,解释,说明或体现的形式如何.在这样的工作.

这是原件.

免责声明:我!=律师

只是一个想法:你可能会发现让律师对此进行审查要便宜,而不是支付500美元/年的更新费用.

  • 这是正确的,他不能声称对该过程本身拥有版权,但他可以声称由他撰写的特定"代码"的版权来执行该过程.如果您尝试将其视为此问题的禁用声明,则不会对任何软件进行版权保护. (8认同)

Jus*_*ner 23

和往常一样,如果你真的担心它,那就请律师.我们是开发人员.

如果我看到类似的东西并且查询不是太复杂,我会自己重新编写它(可能使用他的查询严格来计算数据库模式,但就是这样).

那时,你要更新你的工作......不是别人的.

至于他的询问......如果在工作时没有签订任何合同,我认为执行版权会有点不稳定.

  • 哎呀,这是逆向工程......同样狡猾. (4认同)
  • 但是你并没有对他的查询进行逆向工程......只是使用它来确定数据库结构(不属于他的数据库的开头). (4认同)

Mat*_*att 21

找别人为你重写查询(或自己动手),再也不用他的代码了.

您不必使用他的代码.

  • 我同意.不要再给这个家伙付一分钱.期. (2认同)

Pur*_*lot 20

实际上我对这个问题的一些态度感到有些惊讶.程序员最初被引入,因为没有其他人可以解决问题.解决方案可能或者可能不容易,但没有其他人可以做到这一点,他可以做到.

然后他每年都会被召回来进行维护.虽然改变年份并不完全是火箭科学,也许其他人会提出他没有被要求的参数(我假设).为了论证的缘故,有人写了一个他不遵守的程序规范吗?或者有人对他说'只是解决它.多少?$ 500〜很酷,快点.哦,明年再来,请保持它"?

这里的大部分愤怒似乎都围绕着他解决的问题的简单性,但肯定不是重点吗?他解决了实际问题,确保每年都运行并得到一致同意的补偿.我的数学很糟糕,但我怀疑有些人可以编写应用程序来进行快速傅立叶变换,而不会出汗.但是因为他们觉得很容易,他们收取很少或没有钱来"解决问题".

关于版权的观点.好吧,这里的很多帖子都以"我不是律师"开头.不,我不怀疑是原来的程序员.他(火腿)试图保护自己,我同意其他人认为它不值得写在纸上,或者所需要的只是在不查看或使用代码的情况下重写ot,或者其他一些建议在这里.没有锤击一些人谋生.

好的,所以请记住我现在的反对意见.

  • 他可能值得首付.这不是问题所在.他继续每年收取500美元换一个数字,这表明他并没有遵守我熟悉的任何道德准则. (6认同)
  • 我没有看到他收取500美元,1000美元或一百万美元来改变参数的问题.如果学校想要付钱给他,那就这样吧,并且擅长赚钱.但我确实看到了查询版权问题.我的意思是wtf. (5认同)

Dou*_*ner 16

我不是律师,但据我所知:

除非您以书面形式明确表达"雇用工作"协议,或者可以证明存在"雇用工作"的相互理解,否则他将有权限制该代码的使用.

"雇佣工作"基本上是指个人在"雇用工作"安排下创造的任何东西,都是雇用他们的人的财产.如果没有这样的协议,创建的新作品将自动受到撰写个人版权的个人版权.我相信员工(不是分包商)创造的任何工作都会自动被视为"雇佣工作".

当然你不能对版权的想法,只有这些想法的具体表达.


Rob*_*ney 16

我很乐意为你的学区工作.显然,你的承包商可以在他们的评论中坚持他们喜欢的任何条件,你的第一个冲动就是尊重他们而不是查阅合同并确定实际情况.


Rob*_*son 12

似乎没有人认识到版权处理复制这一事实.如果OP既不复制也不分发,版权在这种情况下似乎并不适用.

即学校未经许可不得作为自己的作品出版或出售(也许).在这种情况下,您需要咨询您的律师.

无论如何,OP都同意运行在特定文件中运行某些sql的程序.我认为OP没有绕过程序员实施的任何防篡改控制.

sql是程序的一部分(尽管可以雇用),它只是文件中的文本.现在可能的情况是,在未经程序员明确同意的情况下修改与程序相关的任何/所有文件可能会使任何保证失效,但这确实是关于它的.

500美元,没有人会起诉你.你知道律师的费用吗?但如果您取消原始程序员的任何支持,请不要感到惊讶.在那里公平警告.

当所有的事情都说完了,如果所有人都以500美元的价格完成,那么需要花费2分钟的时间来改变它.但你确定他正在做的一切吗?以正常的咨询费用率工作半天工作500美元并非不切实际.

  • 版权处理更多,然后复制...... (4认同)
  • @Robert:版权是关于版权法所说的(理论上受美国宪法限制).有限的垄断包括创造衍生作品的权利. (2认同)

Mat*_*tin 10

从头开始编写自己的"应用程序"版本.它能有多难?


Ben*_*esh 10

结帐Aharonian v.Gonzales.

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

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

如果您有其他疑虑,请与律师联系.


Laz*_*rus 8

我认为你不需要查看代码,而是查看个人编写代码的合同.通常在任何类型的编程活动中都清楚地表明项目的源代码/目标代码的所有权.

如果那不在原始合同中,那么我会确保它在这个合同中.


Joh*_*nFx 8

它是一个SQL查询的事实是一个红色的鲱鱼.它是源代码和知识产权,就像编译成可执行文件一样.正如其他人已经说过的,对您使用软件的任何限制主要取决于您的协议条款.

我会观察他的评论说:

// This code MAY NOT BE USED without the expressed written consent of 
Run Code Online (Sandbox Code Playgroud)

其中没有提到修改它,如果你修改它,那么你也可以争辩说你没有使用他的代码.

  • 修改后的版本将被视为原始脚本的衍生作品,具体取决于发生了多少更改.您将不得不重写大部分内容以避免原始版权,在这种情况下,您可能只需重写整个内容并完成它. (4认同)

cro*_*wne 6

使用原始查询作为基础定义新视图,而不指定日期参数,例如

create or replace view MY_VIEW as
 select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
   from STUDENT_TABLE
  where STUDENT_CLASS = 10
Run Code Online (Sandbox Code Playgroud)

编写新查询以从应用日期参数的视图中进行选择,例如

set DATE_PARM = '2009';
select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
  from MY_VIEW
 where CLASS_YEAR = %DATE_PARM
Run Code Online (Sandbox Code Playgroud)


gbn*_*gbn 5

在律师的信上花500美元

如果你重复使用他的代码,我的2便士最多可以让你留下他的名字(这很常见,不是吗?

  • 开源(由OSI定义)必须通过许可证的选择来指定.我没有看到执照.因此,任何拥有合法代码的人在法律上都可以自由使用它,但不能创建衍生作品.改变这一年很可能构成衍生作品; 咨询专门从事软件着作权的律师,而不是一群开发人员. (2认同)