Oracle 的 DBMS_ASSERT 的 Sql Server 等效项是什么?

2024-02-29

数据库管理系统_断言是Oracle中防止SQL注入攻击的关键之一。我尝试了粗略搜索...是否有 SQL Server 2005/2008 等效于此功能?

我正在寻找一个特定的实现,它具有 DBMS_ASSERT 的所有相应 Oracle 包成员的对应项。

  • NOOP
  • SIMPLE_SQL_NAME
  • QUALIFIED_SQL_NAME
  • SCHEMA_NAME

我知道防止注入的最佳实践...绑定变量...是其中之一。
但是,在这个问题中,我专门寻找一种在不使用绑定变量的情况下清理输入的好方法。

你们有具体的实现吗?
是否有一个库实际上是 Oracle 包的 SQL Server 端口?


不要通过构建字符串并执行它们来执行动态查询。

Use sp_executesql并将参数作为参数传递。

你会发现sql注入已经不复存在了。

EDIT: 抱歉,我太着急,写错了命令。它不是 sp_execute,而是 sp_executesql;它需要一个字符串和一组参数:参数的所有编码和转义都由 SQL Server 完成。

EDIT2: sp_executesql语句解释 http://doc.ddart.net/mssql/sql70/sp_ea-ez_4.htm

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Oracle 的 DBMS_ASSERT 的 Sql Server 等效项是什么? 的相关文章

  • 如何在 SQL Server 查询中的 FROM 子句中使用变量?

    我正在创建一个查询 该查询将选择表中的所有数据 查询将根据我将传递给存储过程的变量选择表 在我的例子中 如果我执行example sp table1它将选择table1 如果我使用同样的事情example table table2 应该选择
  • oracle 数据透视表中的列

    示例选择 select from select 1 cnt 2 sm 55 name 12 month 2011 year 12 2011 mnth txt from dual union all select 1 cnt 2 sm 54
  • Postgres - 这是在布尔列上创建部分索引的正确方法吗?

    我有下表 CREATE TABLE recipemetadata Lots of columns diet glutenfree boolean NOT NULL 大多数每一行都会被设置为FALSE除非有人想出一些席卷全国的疯狂新无麸质饮食
  • Sql 查询抛出标识符太长。最大长度为 128

    我正在处理一个简单的更新查询 在执行查询时看到以下错误 我非常清楚 这根本不应该是一个长度问题 可能是什么问题 Error 以identifier开头的标识符太长 最大长度为 128 我的查询 update dbo DataSettings
  • 如何在 where 子句中使用别名? [复制]

    这个问题在这里已经有答案了 可能的重复 在 WHERE 子句中引用列别名 https stackoverflow com questions 8370114 referring to a column alias in a where cl
  • 使用 SQLite 创建列表树

    我正在尝试使用 PHP 和 SQLite 表设置创建一个分层列表 如下所示 itemid parentid name 1 null Item1 2 null Item2 3 1 Item3 4 1 Item4 5 2 Item5
  • 删除 DB 但不删除 *.mdf / *.ldf

    我正在尝试自动化分离和删除数据库的过程 通过 VBS objshell run 如果我手动使用 SSMS 分离和删除我可以将数据库文件复制到另一个位置 但是如果我使用 sqlcmd U sa P MyPassword S local Q A
  • 如何将数据插入 Microsoft Access 数据库?

    我正在尝试将数据插入 Microsoft Access 数据库 我将数据插入到 Access 数据库中 但只有第一次和第二次显示我插入的数据 当我重建应用程序时 我插入的数据消失了 我不知道他们去了哪里并且没有出现 我使用 C 和 NET
  • 当我尝试连接到数据库时收到“错误:无法初始化 OLE”? C#

    我正在尝试通过 C 连接到数据库 但这样做时收到一条非常无用的错误消息 08 44 17 错误 无法初始化 OLE 08 44 17 错误 无法初始化 OLE 我尝试寻找解决方案 但没有成功 我也尝试重新启动计算机 但这也没有帮助 我正在运
  • SQL*Loader - 如何忽略具有特定字符的某些行

    如果我有一个以下格式的 CSV 文件 fd sdf dsfds dsfd fd asdf dsfds dsfd fd sdf rdsfds dsfd fdd sdf dsfds fdsfd fd sdf dsfds dsfd fd sdf
  • SQL日期格式转换? [dd.mm.yy 至 YYYY-MM-DD]

    是否有 mySQL 函数可以将日期从 dd mm yy 格式转换为 YYYY MM DD 例如 03 09 13 gt 2013 09 03 由于您的输入是表单中的字符串03 09 13 我假设 因为今天是 2013 年 9 月 3 日 d
  • SQL,帮助进行有关用户年龄的小查询

    我有一个包含注册用户的表 其中我将年份保存为 varchar 值 只是因为我只花了一年 我想创建包含年龄的饼图 以显示哪些用户更有可能注册 下面的查询给出了表中出现超过 5 次的用户年龄计数 以避免结果过小 虽然这些小结果低于 having
  • 如何授予用户访问 SQL Server 中的 sys.master_files 的权限?

    我需要授予数据库用户读取权限sys master files桌子 我怎样才能做到这一点 目前用户拥有以下权限 Calling SELECT on sys master files返回空结果 我还使用以下命令测试了相同的查询sa用户按预期工作
  • SQL 解析键值字符串

    我有一个像这样的逗号分隔字符串 key1 value1 key2 value2 key3 value3 key1 value1 1 key2 value2 1 key3 value3 1 我想将它解析成一个如下所示的表 Key1 Key2
  • Oracle - 仅当不存在时才创建索引

    有没有什么方法可以在oracle中创建索引 只有当它们不存在时 就像是 CREATE INDEX IF NOT EXISTS ord customer ix ON orders customer id 仅当索引不存在时添加索引 declar
  • C# 事务中的事务

    我正在使用 C 将发票的平面文件导入到数据库中 如果遇到问题 我将使用 TransactionScope 回滚整个操作 这是一个棘手的输入文件 因为一行不一定等于一条记录 它还包括链接记录 发票将包含标题行 行项目和总计行 有些发票需要跳过
  • 选择不带 FROM 但有多于一行的选择

    如何在不从现有表中进行选择的情况下生成 2 行 2 列的表 我正在寻找的是一个返回的选择语句 e g id value 1 103 2 556 Use UNION http dev mysql com doc refman 5 0 en u
  • SQL:两个没有完整列匹配的表的并集

    我有一个table A其中有一组列A1 A2和一个具有一组列的 table bB1 B2 碰巧的是A2 B1但其余列不匹配 也不应该匹配 我想附加表格 所以我使用UNION ALL 对于不匹配的列 我使用null as COLUMN NAM
  • sql查询连接两个服务器中不同数据库的两个表

    我在 ServerS 上的数据库中有两个表 tableA 在 ServerB 上的数据库中有两个表 我只想根据这些表的公共字段名对这些表执行 fullouter join 在 SQL Server 中 您可以创建一个链接服务器 在 Mana
  • 尝试使用 SQL 身份验证登录失败

    我正在尝试使用 sa 用户名及其密码连接到 SQL Server 2008 在 SQL Server 日志文件中我看到以下错误 用户 sa 登录失败 原因 尝试使用 SQL 登录 认证失败 服务器配置为 Windows 身份验证 仅有的 当

随机推荐

  • 在哪里可以找到新的 azure devops 扩展的所有可用贡献目标?

    新的azure扩展开发文档 https developer microsoft com en us azure devops develop extensions指向一个示例项目github https github com Microso
  • LLVM 和编译器术语

    我正在研究 LLVM 系统并且我已经阅读了入门文档 http llvm org docs GettingStarted html 然而 一些术语 以及 clang 示例中的措辞 仍然有点令人困惑 以下术语和命令都是编译过程的一部分 我想知道
  • 如何对嵌入 JSON 的 JSON 进行编码

    我有一个 JSON 字符串 其中一个字段是文本字段 此文本字段可以包含用户在 UI 中输入的文本 如果他们输入的文本是 JSON 文本 也许为了说明一些编码 我需要对其文本进行编码 以便它不会在发送的实际 JSON 结构中被解释为 JSON
  • 创建具有多个子文件夹链接的 Ajax 网站失败

    我正在尝试创建一个site那是loading全部都是通过 Ajax 的内容 假设该网站是www abc net I have abc net index html并且无论输入什么 URL 文件夹 文件 该文件都将始终被调用 abc net
  • RGDAL 无法安装

    我无法在 R 中安装 RGDAL 我使用的是 Ubuntu 12 04 configure error gdal config not found or not executable ERROR configuration failed f
  • 关于 REST 响应和 XMLElement

    我有下面一个需要在代码中创建的 REST 响应
  • Page_Load 未在 UserControl 中触发

    我在类库中用 C 创建了一个类 并将此控件添加到了 default aspx 但我的代码没有触发 page load 事件 这是代码 我究竟做错了什么 页面已加载 但页面上未显示标签 我已将控件正确添加到页面 没有任何错误 我已经在其中添加
  • 同步集合包装器工厂方法如何“拥有”传递给它的对象?

    Brian Goetz 在 Java Concurrency in Practice 一书中说 传递给类的构造函数和方法的对象是不拥有由类本身 是因为他们是从外面来的 班级无法控制他们吗 他接着说 如果方法被明确设计为转移传入对象的所有权
  • C++ 隐式参数的顺序: this 和返回的对象,哪个在先?

    在 C 中 成员函数最多可以有 2 个隐式参数 this指针和返回对象的地址 它们位于显式参数之前 但是 哪个先走 我特别对 Android NDK 基于 gcc ARM 中发生的情况感兴趣 Example class MyClass pu
  • Java Kafka adminClient 主题配置。配置值被覆盖

    在尝试使用 java kafka adminClient 配置新创建的 kafka 主题时 值被覆盖 我尝试使用控制台命令设置相同的主题配置 并且它有效 不幸的是 当我尝试通过 Java 代码时 一些值发生冲突并被覆盖 ConfigReso
  • Celery 在任何更改时自动重新加载

    当模块发生更改时 我可以使 celery 自动重新加载CELERY IMPORTS in settings py 我尝试让母模块检测子模块的变化 但它没有检测到子模块的变化 这让我明白检测不是由 celery 递归完成的 我在文档中搜索了它
  • 在android中使用内容提供程序获取联系号码

    我按照本教程学习了内容提供商的基础知识 http www vogella de articles AndroidSQLite article html http www vogella de articles AndroidSQLite a
  • 使用更改 django 模板中表单字段的名称属性

    我有表单字段 表单 项目 这将呈现为
  • 数据类型映射参数中的键只能使用列名

    我已经使用 dask read sql table 从 Oracle 数据库成功引入了一张表 但是 当我尝试引入另一个表时 出现此错误KeyError 只有列名可以用作数据类型映射参数中的键 我已经检查了我的连接字符串和架构 所有这些都很好
  • 转换为日期格式 dd/mm/yyyy

    我有以下日期 2010 04 19 18 31 27 我想将此日期转换为日 月 年 format 您可以使用正则表达式或一些手动字符串摆弄 但我想我更喜欢 date d m Y strtotime str
  • keras自定义损失纯python(没有keras后端)

    我目前正在编写一个用于图像压缩的自动编码器 我想使用用纯 python 编写的自定义损失函数 即不使用 keras 后端函数 这是否可能 如果可能的话 如何实现 如果可能的话 我将非常感谢您提供一个最小工作示例 MWE 请查看这个 MWE
  • AWS CloudFormation:在嵌套堆栈之间传递值

    更多 AWS 问题 好的 我们的想法是一个主模板调用所有嵌套堆栈 在此处的帮助下 我弄清楚了如何将参数从主服务器传递到嵌套堆栈 现在我试图弄清楚如何将值从嵌套堆栈传递到嵌套堆栈 我认为这应该通过出口和进口来完成 但我认为我的做法不太正确 我
  • Cesium JS 椭球切平面计算

    Problem 我对铯如何计算大地测量和地心表面法线有点困惑 根据计算法线生成的平面实际上并不与给定点的椭球面相切 而且 根据大地表面法线创建的平面与根据地心表面法线生成的平面完全相同 示例以及为什么我需要这个 In this 沙堡 htt
  • 使用关键字参数 end=' ' 获取 print 的语法错误

    我有这个 python 脚本需要运行gdal retile py 但我在这一行得到一个例外 if Verbose print Building internam Index for d tile s len inputTiles end T
  • Oracle 的 DBMS_ASSERT 的 Sql Server 等效项是什么?

    数据库管理系统 断言是Oracle中防止SQL注入攻击的关键之一 我尝试了粗略搜索 是否有 SQL Server 2005 2008 等效于此功能 我正在寻找一个特定的实现 它具有 DBMS ASSERT 的所有相应 Oracle 包成员的