`
baobeituping
  • 浏览: 1070397 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

SQL动态语法

阅读更多

SQL code
动态sql语句基本语法
1 :普通SQL语句可以用Exec执行

eg:
Select * from tableName
Exec('select * from tableName')
Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N

2:字段名,表名,数据库名之类作为变量时,必须用动态SQL

eg:
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname from tableName -- 错误,不会提示错误,但结果为固定值FiledName,并非所要。
Exec('select ' + @fname + ' from tableName') -- 请注意 加号前后的 单引号的边上加空格

当然将字符串改成变量的形式也可
declare @fname varchar(20)
set @fname = 'FiledName' --设置字段名

declare @s varchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句会报错

declare @s Nvarchar(1000) -- 注意此处改为nvarchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句正确

3. 输出参数
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何将exec执行结果放入变量中?

declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output
select @num

分享到:
评论

相关推荐

    sqlserver sql语法大全

    ### SQLServer SQL语法大全 #### 创建数据库 在SQL Server中创建数据库是一项基本操作,通过`CREATE DATABASE`命令来实现。创建数据库时可以指定文件和日志文件的位置、初始大小及增长方式等参数。 **语法示例:**...

    Oracle和SqlServer语法区别

    Oracle和SqlServer语法区别 Oracle和SqlServer是两种流行的关系型数据库管理系统,它们之间存在着一些语法区别。了解这些区别对于开发者来说非常重要,因为它可以帮助他们更好地迁移到新的数据库管理系统。下面将...

    动态SQL语句基本语法

    学习SQL应知道的动态SQL语句基本语法 学习SQL应知道的动态SQL语句基本语法 学习SQL应知道的动态SQL语句基本语法 学习SQL应知道的动态SQL语句基本语法

    SQL 语法 SQL 总结 SQL教程

    SQL 语法 SQL select SQL distinct SQL where SQL AND & OR SQL Order By SQL insert SQL update SQL delete SQL 高级 SQL Top SQL Like SQL 通配符 SQL In SQL Between SQL Aliases SQL Join SQL ...

    SqlParser C++实现的SQL语法解释器

    SqlParser是一款基于C++实现的SQL语法解释器,它的主要任务是解析SQL语句,将其转化为计算机可理解的形式,从而能够执行相应的数据库操作。在数据库系统中,SQL(Structured Query Language)是用于管理关系数据库的...

    学习SQL应知道的动态SQL语句基本语法 mssql

    在Microsoft SQL Server(MSSQL)环境下,掌握动态SQL的基本语法是提升SQL编程能力的关键。下面,我们将深入探讨动态SQL的核心概念、应用场景以及基本语法。 **1. 动态SQL的概念** 动态SQL允许我们在运行时构建SQL...

    Visual FoxPro中SQL命令语法及示例

    ### Visual FoxPro中SQL命令语法及示例 #### 1. 准备 - **1.1 创建文档中所要使用到的数据库及环境配置** 在开始学习Visual FoxPro (VFP) 中的SQL命令之前,需要创建一个用于演示的基础数据库环境。以下是创建...

    SQL语句语法

    13.7 预处理语句的SQL语法: 预处理语句提高性能,通过参数化查询减少SQL注入风险。 在学习SQL语句时,理解这些基本语法是至关重要的。无论是创建数据库结构,还是进行复杂的数据操作,熟练掌握SQL都能让你更有效地...

    java检查sql语法是否正确

    在Java编程中,检查SQL语法是否正确是一项重要的任务,它能确保我们的数据库操作代码不会因为语法错误而引发异常。为了实现这一目标,开发者通常会利用Java的JDBC(Java Database Connectivity)API或者其他第三方库...

    SQL语法教学课件

    适合教学使用的SQL语法课件,内容相对精炼。

    Sql语法转换为Oracle语法

    标题“Sql语法转换为Oracle语法”涉及到的主要知识点是SQL Server与Oracle数据库之间的SQL语句转换。这通常是因为在系统迁移或跨平台开发时,需要将SQL Server的查询语句适应Oracle数据库的语法。 描述中提到的...

    SQL语法手册.pdf

    SQL 语法手册 SQL 语法手册是数据库管理系统中使用的一种标准语言,用于管理、操作和访问数据库中的数据。本手册将详细介绍 SQL 语法的基本结构和使用方法。 一、SELECT 语句 SELECT 语句是 SQL 语法中最基本的一...

    Hive_SQL语法大全

    Hive_Sql语法详述,平时工作中遇到的问题,用于Hadoop平台的数据挖掘。

    SQL基本语法知识

    在这个“SQL基本语法知识”中,我们将深入理解SQL的一些核心概念和基本语法。 首先,数据库是组织和存储数据的系统,而表则是数据库中的基本单元,用于存储具体的信息。例如,描述中的"Persons"表,包含ID、Last ...

    sql基本语法例子 数据库

    在这个“sql基本语法例子 数据库”主题中,我们将深入探讨SQL的基础概念和核心语法,这对于SQL初学者来说是至关重要的。 首先,我们要理解SQL的主要功能。SQL可以用来创建数据库、定义数据结构、插入数据、查询数据...

    Oracle与SQLServer的SQL语法差异

    Oracle与SQLServer的SQL语法差异,用简单易懂的语言和实例对Oracle和Sql Server语法之间的差异进行了对比分析,更加适用于入门的人

    sybase与microsoft—sql的语法区别

    - 在执行动态SQL时,Sybase使用`execute (@sql_string)`,而SQL Server使用`exec sp_executesql @sql_string`或`execute @sql_variable`。 3. **游标操作**: - Sybase使用`fetch from cursor_name`来获取游标中...

Global site tag (gtag.js) - Google Analytics