dynamic-sql相关内容

截断 Postgres 数据库中的所有表

我经常需要在重建之前从我的 PostgreSQL 数据库中删除所有数据.我将如何直接在 SQL 中执行此操作? 目前我已经设法想出了一个返回我需要执行的所有命令的 SQL 语句: SELECT '截断表' ||表名 ||';'FROM pg_tables WHERE tableowner='MYUSER'; 但是一旦我有了它们,我就看不到以编程方式执行它们的方法. 解决方案 Fr ..
发布时间:2021-12-05 21:09:27 其他开发

在 SQL Server 中,如何为给定的表生成 CREATE TABLE 语句?

我花了很多时间想出解决这个问题的方法,所以本着 这篇文章,我把它贴在这里,因为我认为它可能对其他人有用. 如果有人有更好的脚本或要添加的任何内容,请发布. 编辑:是的,伙计们,我知道如何在 Management Studio 中执行此操作 - 但我需要能够从另一个应用程序中执行此操作. 解决方案 我修改了上面的版本以运行所有表并支持新的 SQL 2005 数据类型.它还保留主键 ..
发布时间:2021-12-02 14:26:01 数据库

为什么有人会使用 WHERE 1=1 AND <conditions>在 SQL 子句中?

为什么有人会在 SQL 子句中使用 WHERE 1=1 AND (通过连接字符串获得的 SQL,或者视图定义) 我在某处看到这将用于防止 SQL 注入,但它看起来很奇怪. 如果有注入 WHERE 1 = 1 AND Injected OR 1=1 将与 injected OR 1=1 产生相同的结果. 稍后编辑:视图定义中的用法如何? 感谢您的回答. ..
发布时间:2021-12-01 19:43:27 其他开发

重构一个 PL/pgSQL 函数以返回各种 SELECT 查询的输出

我编写了一个函数,它以文本形式输出格式良好的 PostgreSQL SELECT 查询.现在我不想再输出文本,而是实际对数据库运行生成的 SELECT 语句并返回结果 - 就像查询本身一样. 到目前为止我所拥有的: CREATE OR REPLACE FUNCTION data_of(integer)返回文本为$BODY$宣布传感器 varchar(100);-- 保存列名列表输入 var ..
发布时间:2021-12-01 19:28:28 其他开发

如何在mySQL中动态选择列名

我想选择列名,但我不知道提前表结构,它可能会改变,所以我不能只用列名硬编码 select 语句.我也不想选择每一列.有没有简单的方法可以做到这一点? 我的想法是这两个查询的某种组合,但我的 SQL 不是那么好. SHOW COLUMNS FROM table_name;SELECT * FROM table_name; 我尝试使用子选择,但没有用.似乎什么也没发生,我没有收到错误,只是没 ..
发布时间:2021-11-20 22:44:08 数据库

quote_ident() 不会为列名“first"添加引号;

我需要将列名正确地用双引号括起来.quote_ident() 好像不行? 先选1;-- 失败选择 quote_ident('first');-- 先生产,而不是“先"; 我可以使用什么命令来成功引用标识符.我正在尝试用它动态构建一个 SELECT 语句: SELECT '选择'||string_agg(udt_name 在 ('varchar', 'text') 中的情况然后 'left(' ..
发布时间:2021-06-18 20:52:40 其他开发

使用运算符“||"的字符串连接或 format() 函数

我们应该在触发器函数中使用连接运算符 || 还是 format() 函数? 使用一种比另一种有什么优势还是归结为个人喜好和可读性? 您会说对于简单的连接,使用运算符,而对于更复杂的连接,使用格式函数吗? 解决方案 连接字符串的标准工具基本上有 4 种.最简单/最便宜的第一: 连接运算符 || ... 如果任何操作数为NULL,则返回NULL.(可能需要也可能不需要. ..
发布时间:2021-06-18 20:52:13 其他开发

plsql : Cursor 中的动态 SQL

v_upd_cur := '选择 m.name, m.age'||'来自' ||act_table ||' m 其中 m.age 这是游标中的动态 SQL 选择语句.如何将 select 语句放入名为 cur 的游标中? 我尝试了类似下面的代码但不起作用,有人有更好的建议吗? Cursor cur IS v_upd_cur; 解决方案 您可以使用 sys_refcursor 尝试此 ..
发布时间:2021-06-18 19:41:38 其他开发

在 postgresql 中使用动态排序字段/顺序有哪些选项?

我发现我可以使用动态sql来插入排序字段和排序方向的参数.我还发现将这些参数插入动态sql可以使用“USING param1, param2". 这是我正在尝试使用的 plpgsql 函数.不幸的是,postgresql 在应该插入排序方向参数的位置抛出错误. CREATE OR REPLACE FUNCTION manager_performance_get_urls_by_crawl_ ..
发布时间:2021-06-18 19:38:05 其他开发

如何在 Postgres 函数中使用文本输入作为列名?

我正在使用 Postgres 和 PostGIS.尝试编写一个根据给定参数选择特定列的函数. 我正在使用 WITH 语句创建结果表,然后将其转换为 bytea 返回. 我需要帮助的部分是 $4 部分.我尝试在下面演示和 $4::text 并且都给我返回输入的文本值而不是表中的列值如果 cols=name 所以我从查询名称而不是表中的实际名称返回.我也尝试了 data($4) 并得到了类型错 ..
发布时间:2021-06-18 19:37:28 其他开发

SQL Server如何提及动态列值不应为null

首先看到几个屏幕截图. 查看第二个屏幕截图.其中2010 FYA和其余列为动态列.请参阅第一条记录,其中动态列值为NULL.现在告诉我如何在获取数据时提到动态列值不应该为null. 这是代码 设置@AvgSql = @ AvgSql +'Avg(CONVERT(decimal(20,6),['+ @ Period +']))['+ @ Period +'],' 通过这种方式,我将 ..
发布时间:2021-05-03 19:10:03 数据库