Questions tagged «sql»

结构化查询语言(SQL)是用于查询数据库的语言。问题应包括代码示例,表结构,示例数据以及正在使用的DBMS实现的标签(例如MySQL,PostgreSQL,Oracle,MS SQL Server,IBM DB2等)。如果您的问题仅涉及特定的DBMS(使用特定的扩展名/功能),请改用该DBMS的标签。使用SQL标记的问题的答案应使用ISO / IEC标准SQL。

10
我可以添加没有默认值的非空列吗
是否可以添加我指定为NOT NULL的列,我不想指定DEFAULT值,但是MS-SQL 2005说: ALTER TABLE仅允许添加可以包含空值或指定DEFAULT定义的列,或者要添加的列是Identity或timestamp列,或者如果不满足任何先前条件,则该表必须为空才能允许添加本专栏的内容。无法将列“ test”添加到非空表“ shiplist”中,因为它不满足这些条件。 如果是,请让我知道语法,如果否,请说明原因。

9
没有汇总功能的GROUP BY
我试图了解没有聚合功能的GROUP BY (oracle dbms的新功能)。 它如何运作? 这是我尝试过的。 我将在其上运行SQL的EMP表。 SELECT ename , sal FROM emp GROUP BY ename , sal SELECT ename , sal FROM emp GROUP BY ename; 结果 ORA-00979:不是GROUP BY表达式 00979。00000-“不是GROUP BY表达式” *原因: *操作: 错误:行:397列:16 SELECT ename , sal FROM emp GROUP BY sal; 结果 ORA-00979:不是GROUP BY表达式 00979。00000-“不是GROUP BY表达式” *原因: …

12
将表数据从一个SQL Server导出到另一个
我有两个SQL Server(均为2005版)。 我想将几个表从一个迁移到另一个。 我试过了: 在源服务器上,我右键单击数据库,选择Tasks/Generate scripts。问题在于,在此之下Table/View options没有Script data选择。 然后,我用来Script Table As/Create script生成SQL文件,以便在目标服务器上创建表。但是我仍然需要所有数据。 然后我尝试使用: SELECT * INTO [destination server].[destination database].[dbo].[destination table] FROM [source server].[source database].[dbo].[source table] 但是我得到了错误: 对象包含的前缀数量超过了最大数量。最大值为2。 有人可以为我指出解决问题的正确方法吗?

9
SQL按月和年分组
我不确定在下面的SQL查询中应该写些什么来显示“日期”列,例如:“ month-year”-“ 9-2011”。 SELECT MONTH(date) + '.' + YEAR(date) AS Mjesec, SUM(marketingExpense) AS SumaMarketing, SUM(revenue) AS SumaZarada FROM [Order] WHERE (idCustomer = 1) AND (date BETWEEN '2001-11-3' AND '2011-11-3') GROUP BY MONTH(date), YEAR(date) 因此,我要做的是将第一列中的数据更改为显示月份和年份,而不是仅显示月份。
72 sql  sql-server 


3
更改SQL Server函数以接受新的可选参数
我在SQL Server 2005中已经具有以下功能: ALTER function [dbo].[fCalculateEstimateDate] (@vWorkOrderID numeric) Returns varchar(100) AS Begin <Function Body> End 我想修改此函数以接受其他可选参数@ToDate。如果@Todate提供,我将在函数中添加逻辑,然后继续执行现有代码。 我将函数修改为: ALTER function [dbo].[fCalculateEstimateDate] (@vWorkOrderID numeric,@ToDate DateTime=null) Returns varchar(100) AS Begin <Function Body> End 现在我可以将函数调用为: SELECT dbo.fCalculateEstimateDate(647,GETDATE()) 但是它在以下调用中给出了错误: SELECT dbo.fCalculateEstimateDate(647) 如 为过程或函数dbo.fCalculateEstimateDate提供的参数数量不足。 根据我的理解,这不应该发生。 我有什么想念的吗?提前致谢。



4
SQL Server 2008-如果不存在则插入其他更新
我很抱歉,但这是一个分为两个部分的问题。 我对SQL非常陌生,正在尝试为我工作的小型办公室开发一个时钟应用程序。我现在正在使用SQL后端,并对复合语句有疑问。 我遇到的问题是,如果用户尝试暂停休息,但从未在上班开始前一直停下来,则SQL需要创建新行而不是更新现有行。 这是我尝试过的: IF NOT EXISTS(SELECT * FROM Clock WHERE clockDate = '08/10/2012') AND userName = 'test') BEGIN INSERT INTO Clock(clockDate, userName, breakOut) VALUES({ fn NOW() }, 'test', { fn NOW() }) END ELSE BEGIN UPDATE Clock SET breakOut = { fn NOW() } WHERE (clockDate = '08/10/2012') AND …

8
在C#中解析SQL代码
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 6年前关闭。 改善这个问题 我想使用C#解析SQL代码。 具体来说,是否有任何免费的解析器可以解析SQL代码并从中生成树或任何其他结构?它还应为嵌套结构生成适当的树。 它还应该返回该树的节点代表哪种语句。 例如,如果节点包含循环条件,则它应返回这是节点的“循环类型”。 还是有什么方法可以解析C#中的代码并生成我想要的类型的树?
71 c#  sql 


7
什么时候不应该使用关系数据库?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 7年前关闭。 改善这个问题 除了google / bigtable方案之外,您什么时候不应该使用关系数据库?为什么不呢?您应该使用什么呢?(您学习过“艰难的方式”吗?)

5
MongoDB如何避免SQL注入混乱?
我读了我值得信赖的O'Reilly书,发现一段关于Mongo本质上如何避免SQL注入式缺陷的麻烦的文章。 以我的直觉,我想我明白这一点。如果unsanitized瓦尔传递到查询,他们无法攻破了面向文档的查询结构的出UNION,JOIN,查询翻评论,等等。 MongoDB如何避免SQL注入混乱?只是这种查询语法的本质吗?

6
使用PL / pgSQL在PostgreSQL中返回多个字段作为记录
我正在使用PL / pgSQL编写SP。 我想返回一条记录,其中包含来自几个不同表的字段。可能看起来像这样: CREATE OR REPLACE FUNCTION get_object_fields(name text) RETURNS RECORD AS $$ BEGIN -- fetch fields f1, f2 and f3 from table t1 -- fetch fields f4, f5 from table t2 -- fetch fields f6, f7 and f8 from table t3 -- return fields f1 ... f8 as …

25
CREATE FILE遇到操作系统错误5(未能为此错误检索文本。原因:15105)
我.mdf在文件夹中有一个来自MS SQL EXPRESS的数据库文件: C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA 我想将其附加到MS 2008 R2(MSSQL10_50.MSSQLSERVER),但是使用Server Management Studio时出现以下错误: CREATE FILE encountered operating system error 5(failed to retrieve text for this error. Reason: 15105) while attempting to open or create the physical file 您知道如何解决吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.