`
lansuiyun
  • 浏览: 28272 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

sql中' 的问题

 
阅读更多

存储过程报错,找原因找了好久,以后是 ' 好的问题。结果发现是变量长度不够。不过对 ‘  的应用有了新的理解。转发一篇关于  '  应用的文章

 

1、 ' '是字符界定符,告诉SQL你输入的是字符,SQL已经知道@sitemtext是字符类型,所以不需要。 
2、LIKE   '%XXX% '   可以拆分为   '% '   +   'XXX '   +   '% ', 'XXX '   =   @sitemtext。 
3、EXEC执行字符串:@sitemtext对于EXEC来说变量,但对于EXEC内部的字串指令来说,它是常量,在运行EXEC之前,@sitemtext必然有个确定值(比如@sitemtext= 'TEST '),如果用1点代替3点,则变成“……NID   =   TEST……”,那字串指令将TEST解析为对象名。 
4、道理同上。 

比较笨的方法(也是避免错误的最佳方法): 
A、全部先不加点: 
        exec   (declare   mycursor   cursor   for   select   top   @maxitems   SID,NID,NTime   from   (select   top   @mycount   *   from   V_PC_DOWNUPDATE   where   BName   like   '%@sitemtext+% ')   as   MyTable   order   by   NTime   desc) 
B、加首尾两点: 
        exec   ( 'declare   mycursor   cursor   for   select   top   @maxitems   SID,NID,NTime   from   (select   top   @mycount   *   from   V_PC_DOWNUPDATE   where   BName   like   '%@sitemtext+% ')   as   MyTable   order   by   NTime   desc ') 
C、给字串指令解析为数字的变量加1点: 
        exec   ( 'declare   mycursor   cursor   for   select   top   '   +   @maxitems   +   '   SID,NID,NTime   from   (select   top   '   +   @mycount   +   '   *   from   V_PC_DOWNUPDATE   where   BName   like   '%@sitemtext+% ')   as   MyTable   order   by   NTime   desc ') 
C、给字串指令解析为字符的变量加3点: 
        exec   ( 'declare   mycursor   cursor   for   select   top   '   +   @maxitems   +   '   SID,NID,NTime   from   (select   top   '   +   @mycount   +   '   *   from   V_PC_DOWNUPDATE   where   BName   like   ' '% '   +   @sitemtext   +   '% ' ')   as   MyTable   order   by   NTime   desc ') 
D、检查在()里面,除了变量和“+”号,全部变成红色。

分享到:
评论

相关推荐

    SQL中存储过程中SQL语句的单引号和双引号问题[总结].pdf

    SQL 中存储过程中 SQL 语句的单引号和双引号问题 在 SQL 中,单引号和双引号的问题是一个常见的混淆点,特别是在存储过程中编写 SQL 语句时。下面将对此问题进行详细的解释和总结。 一、单引号和双引号的基本概念 ...

    如何解决sql注入问题

    ### 如何解决SQL注入问题:全面解析与防范策略 #### SQL注入概述 SQL注入是一种常见的安全漏洞,攻击者通过在应用程序的输入字段中插入恶意SQL语句,利用这些语句来操控数据库,获取未授权的数据访问,修改或破坏...

    SQL数据库中的锁问题

    SQL数据库中的锁问题

    将Sql Server 2000中的数据库备份文件还原到sql2005中

    将Sql Server 2000中的数据库备份文件还原到Sql Server 2005中是一个常见的问题。在这个过程中,我们需要了解Sql Server 2000和Sql Server 2005之间的差异,以便正确地还原数据库备份文件。下面是相关的知识点: 1....

    Mysql运行SQL语句中文乱码问题的解决方法

    在MySQL数据库中运行包含中文字符的SQL语句时,经常会遇到中文显示为乱码的问题。这一现象不仅降低了开发效率,还可能导致数据错误。本文将详细介绍如何彻底解决MySQL运行SQL语句中文乱码的问题。 #### 一、理解...

    关于sqlserver2008中一些问题的解决

    ### 关于SQL Server 2008中数据库连接问题及.bak文件的导入方法 #### 一、导入.bak文件到数据库的操作步骤 在SQL Server 2008中,有时候我们需要将备份文件(.bak文件)恢复到现有的数据库中。下面详细介绍如何将....

    sql 面试问题集

    SQL面试问题集通常包含多种级别的SQL问题,从基础知识点到高级概念,这些问题旨在考察求职者对SQL的掌握程度以及他们解决数据库相关问题的能力。 在数据库领域中,SQL语言是核心技能之一。尽管SQL语言有标准规范,...

    关于SQLEXPRESS服务无法启动问题

    在本文中,我们将讨论SQLEXPRESS服务无法启动的问题,并提供解决方案。该问题通常是由TCP/IP协议的冲突引起的,下面我们将详细介绍问题的成因和解决方法。 一、问题描述 SQLEXPRESS服务无法启动,是一种常见的错误...

    php mssql扩展SQL查询中文字段名解决方法

    标题 "php mssql扩展SQL查询中文字段名解决方法" 描述了一个常见的问题,即使用PHP的mssql扩展处理SQL Server数据库中的中文字段名时遇到的查询错误。问题的关键在于,虽然SQL语句在SQL Server中可以正常运行,但在...

    SQL SERVER 字符集问题之一解决

    在本文中,我们将讨论 SQL SERVER 字符集问题之一解决方案,解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_CS_AS" 之间的排序规则冲突。 一、问题背景 在 SQL SERVER 中,默认的字符集是 SQL_Latin1_...

    SQL SQLPrompt 9 SQL 2016/2017可用

    4. **智能分析**:内置的静态代码分析工具能够检查SQL脚本中的潜在问题,如性能瓶颈、未使用的变量、不安全的动态SQL等,提前发现并解决潜在问题。 5. **集成开发环境(IDE)支持**:SQL Prompt 9可以与Visual ...

    首届中文NL2SQL挑战赛数据集

    【首届中文NL2SQL挑战赛数据集】是一个专注于自然语言处理与数据库查询的竞赛,其主要目标是将中文的自然语言问题(NL)转化为结构化的SQL(Structured Query Language)查询,以此来解决表格数据的问题。NL2SQL的...

    SQL.Cookbook(中文高清PDF)

    《SQL Cookbook中文版》中的SQL 是计算机世界的语言,在用关系数据库开发报表时,将数据放入数据库以及从数据库中取出来,都需要SQL 的知识。很多人以一种马马虎虎的态度在使用SQL,根本没有意识到自己掌握着多么...

    SQLMonitor oracle跟踪SQL工具

    在系统运行过程中,当遇到性能问题时,SQLMonitor能迅速定位问题SQL,为优化提供方向;在持续集成和持续部署(CI/CD)流程中,SQLMonitor可以作为质量控制的一部分,确保数据库操作的正确性和效率。 总的来说,SQL...

    vs自带数据库sql server的中文插入乱码问题、查找当前数据库名

    解决两个问题:vs自带数据库sql server的中文插入乱码问题、查找当前数据库名 (查找数据库名在文章中间,自己往下翻吧,不单拎出来了) vs自带数据库sql server的中文插入乱码问题: 如图所示,我插入表的中文变成...

    sql server 导入超大SQL脚本文件

    然而,在实际应用中,我们经常会遇到导入超大 SQL 脚本文件的问题。本文将介绍如何使用 osql 工具来导入超大 SQL 脚本文件。 什么是 osql? osql 是 SQL Server 提供的一个命令行工具,用于执行 SQL 语句和运行 ...

    SQL优化 SQL优化软件 SQL优化工具

    SQL优化是数据库管理中的关键环节,它涉及到提升查询性能、减少资源消耗以及改善系统整体效率。SQL优化软件和工具能够帮助数据库管理员(DBA)和开发人员找出性能瓶颈,优化查询逻辑,从而提高数据库系统的响应速度...

    SQL Optimizer for SQL Server 10.0.3

    在实际应用中,SQL Optimizer可以解决以下问题: 1. **慢速查询**:当用户遇到查询响应时间过长的问题时,该工具能提供性能改进建议,通过调整索引、重写查询或改变JOIN顺序等方式提升查询速度。 2. **资源占用过...

    SQL 语法与问题集

    SQL 语法与问题集 通用办公生产应用程序。   使用图形用户界面 (GUI) 的应用程序,使用户得以选择包含要查看的数据的表和列。   使用通用语言语句确定用户所要查看数据的应用程序。   将其数据存储于 SQL ...

    Oracle的SQL监视工具SQLTracker

    这款工具在Oracle数据库环境中扮演着重要角色,它可以帮助用户实时监控SQL语句的执行情况,识别性能瓶颈,从而提高系统的整体效率。 在描述中提到,SQLTracker可以在Windows 11操作系统上直接运行,这意味着它可能...

Global site tag (gtag.js) - Google Analytics