dynamic-sql相关内容

如何在动态SQL命令中添加引号?

我正在数据库中存储和编辑某些字段,该字段涉及一个或多个句子的长字符串。每当我在文本框中输入单引号并将其保存时,都会引发类似 “'l'附近的语法不正确的异常。 字符串''之后的引号引起来。 / em> 有什么办法避免这种情况吗? 编辑: 查询是: SqlCommand com = new SqlCommand(“ UPDATE Questions SET Question =' ..
发布时间:2020-10-27 04:05:24 其他开发

如何在dbms_sql.open_cursor上解决ORA-29471?

我正在使用Oracle 11.2.0.1.0,并试图使dbms_sql程序包正常工作。 但是,我仍然收到ORA-29471错误,如下所示: DECLARE c INTEGER; 开始 c:= dbms_sql.open_cursor(); END; ORA-29471:拒绝DBMS_SQL访问 ORA-06512:在“ SYS.DBMS_SQL”行1017 OR ..
发布时间:2020-10-27 04:05:21 数据库

什么是动态SQL查询,什么时候要使用它?

什么是动态SQL查询,什么时候要使用它?我正在使用SQL Server 2005。 解决方案 这里有几篇文章: 动态SQL简介 动态SQL入门指南 从动态SQL入门: 动态SQL 是一个术语,用于表示由您以编程方式(部分或全部)生成的SQL代码程序在执行之前。结果,它是一个非常灵活而强大的工具。您可以使用动态SQL完成诸如根据表单上填写的字段在搜索中添加where子句或 ..
发布时间:2020-10-27 04:05:19 其他开发

我如何在一个UPDATE语句上创建循环,该循环将一直有效直到没有行可更新为止?

假设我有成千上万的行要更新。 我计划迭代地进行更新;通过每次迭代仅更新1000行。 我想迭代直到没有行要更新为止。 如何运行T -SQL脚本在下面,直到没有行要更新为止? -TODO:创建一个循环,以便在存在时存在没有剩余的ROW可以更新; -我该怎么办? UPDATE tableToUpdate SET IsVegetable = 1 WHERE ID ..
发布时间:2020-10-27 04:04:17 数据库

提取从动态SQL返回的值

我有一个存储过程,该过程可以生成并执行一段动态的T-SQL,一旦构建,它就会像这样 SELECT tblUsers.strUserName AS [用户名] ,tblUsers.strEmail AS [电子邮件] ,tblUserAuditLog.strIpAddress AS [IP地址] ,tblUserAuditLog.dtAuditTimeStamp AS [Times ..
发布时间:2020-10-27 04:04:13 数据库

获取“ xml数据类型方法的参数1”修改”。必须是字符串文字”,同时在xml中插入属性

尝试以下代码。但是,获取“ xml数据类型方法“ modify”的参数1必须是字符串文字”错误。大量搜索但找不到任何解决方案 SET @Path ='/ @ ParentNodeName / @ NodeName / child :: * ' SET @ x.modify('插入属性状态{sql:variable(“ @ status”)}} 首先进入('+ @Path +')[1]' ..
发布时间:2020-10-27 04:03:11 其他开发

动态SQL有什么危险,可以避免吗?

我们刚刚获得了以下代码,作为离岸开发人员提供的新应用程序中复杂搜索查询的解决方案。我对使用动态SQL表示怀疑,因为我可以使用’来关闭SQL语句。然后激怒将要在数据库上执行的操作! 关于如何解决注入攻击的任何想法? ALTER过程[dbo]。[SearchVenues]-'','',10,1,1,'' @selectedFeature as varchar(MAX), @searc ..
发布时间:2020-10-27 04:02:07 数据库

如何在plpgsql中使用变量作为表名

我是plpgsql的新手。我正在尝试在plpgsql中使用一个变量作为plpgsql中的表名运行一个简单的查询。但是变量将被解释为表名,而不是变量的值将被解释为变量名。 DECLARE v_table文本; z_table文本; max_id bigint; BEGIN FOR v_table IN 选择table_name FROM informatio ..
发布时间:2020-10-27 04:02:05 其他开发

如何按月对表进行分区(“ YEAR& MONTH”)并自动创建月度分区?

我正在尝试按年和月对表进行分区。我将通过其划分分区的列是具有ISO格式(“ 20150110”,20150202等)的日期时间类型列。 例如,我有2010年,2011年和2012年的销售数据。我希望数据可以按年份进行分区,并且每年也可以按月份进行分区。 (2010/01,2010/02,... 2010/12,2011/01,... 2015/01 ...) EX: Sales2 ..
发布时间:2020-10-27 04:01:03 数据库

在Postgres中从动态查询插入

关于参考解决方案,我已经在我以前的 post 导致了另外一种情况。 尝试插入到我的目标表时(如下所示)。 -表:normalized_transaction -DROP TABLE normalized_transaction; 创建表normalized_transaction ( transaction_id uuid, file_id uuid, account_ ..
发布时间:2020-10-27 04:00:01 其他开发

针对没有动态SQL的多个表运行相同的查询

我支持第三方软件包的SQL数据库。他们有很多所谓的“影子表”,实际上只是审计表。一切都很好,但是他们的系统不会清理这些表,所以我需要这样做。他们还将在每次升级时添加新的“影子表”,而无需另行通知。我们清除表的旧方法是使用很长的 DELETE FROM 语句列表,但是此列表已经很长且很难维护。 为使清除过程更易于维护并自动捕获新的“影子表”,我编写了以下存储过程。存储过程可以工作,但是我更希望 ..
发布时间:2020-10-27 03:59:57 数据库

如何使用表中可能不存在的ID构建SQL语句?

使用Microsoft SQL Server 2008,假设有一个表格1,其中保留了选定的省,地区,公社和村庄的ID。然后是表2,其中包含省,区,公社和村庄的ID和名称。省和地区是必填字段,将始终填写。公社和村庄可能会被填充,但由于不需要,甚至可能不会被填充。 构建动态SQL语句而不知道ID是否为最佳方法是什么? 选择tbl1.province,tbl1.district,tbl1.c ..
发布时间:2020-10-27 03:59:55 数据库

如何将输入参数传递给sp_executesql?

在SQL Server 2014中,我尝试创建动态WHERE子句。 我已将查询构建为字符串,但是当我尝试使用字符串执行时sp_executesql,出现以下错误: 行号13您必须声明标量变量“ @desde”。 我可以t弄清楚如何使sp_executesql识别输入参数。 更改过程[dbo]。[seleccionarFacturas] -在此处添加存储过程的参数 @des ..
发布时间:2020-10-27 03:58:44 数据库

简单的动态TSQL查询语法

这可能是一个简单的答案,但我盯着它看了太久... 我有以下查询使用存储过程输入参数作为变量名并计算该表中的记录。我想将动态语句(@toStartStr)的结果检索到变量(@toStart)中。 -@tempTableName = SProc输入参数 DECLARE @toStartStr nvarchar(150); DECLARE @toStart int; SET @to ..
发布时间:2020-10-27 03:58:42 数据库

SQL Server在动态SQL中等同于Oracle绑定变量?

在Oracle中,编写动态SQL时会执行以下操作: 创建或替换过程myProc(数量为n) 作为 开始 立即执行 'update myTable set myColumn =:n' 使用n; 次提交; 结尾; 然后“神奇发生”。 SQL Server中的等效概念/语法(如果有)是什么? (顺便说一句,我正在使用SQL Server 2005) 解决方案 您将使 ..
发布时间:2020-10-27 03:58:38 数据库

如何执行非常长的动态sql语句?

我记得有一天,我会制作一整包 nvarchar(4000) var,检查它们的长度,并在填充时将其切换出起来,然后将整个混乱串联起来,以供exec调用。我想知道是否有更简单的方法。 谢谢! 编辑: 代码示例,向我展示了case语句的错误 DECLARE @sql NVARCHAR (最大) 选择@sql = CAST(N'SELECT'AS NVARCHAR(MAX)) ..
发布时间:2020-10-27 03:58:34 数据库

如何使用T-SQL在数据库中的所有文本字段中搜索某些子字符串

我有一个庞大的架构,有数百个表和数千个列。我知道一个特定的IP地址存储在此数据库中的多个位置,但是我不确定它存储在哪个表或列中。基本上,我试图在各处找到IP地址存储在数据库中,因此我可以在所有这些位置将其更新为新值。 这是我第一次破解T-SQL语句以打印出数据库中每个包含子字符串10.15.13的文本列的表和列的名称以及值。 现在,这有点有用。问题是,当我在Management Stu ..
发布时间:2020-10-27 03:58:25 数据库