当前位置:首页 » 编程语言 » sql传参变量
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql传参变量

发布时间: 2022-05-31 23:18:58

㈠ 如何用sql代码将动态查询结果赋值给变量

1、首先最基本的赋值就是默认值了。

㈡ 如何给SQL SERVER存储过程传递数组参数

确切的说不行-SQL SERVER没有数组类型,ANSI SQL 92标准也不支持数组。但可用其它的方法来实现。
1. You could simulate an array by passing one or more varchar(255) fields with comma-separated values and then use a WHILE loop with PATINDEX and SUBSTR to extract the values.
1、你可以使用几个VARCHAR(255)字段来模拟数组,字段中用逗号分开各个数据,然后使用循环和PATINDEX和SUBSTR分开这些数据。
2. The more usual way to do this would be to populate a temporary table with the values you need and then use the contents of that table from within the stored-procere. Example of this below2、通常这种方法需要为这些数据创建一个临时表,然后在存储过程使用表中的内容。如下例create procere mytest @MyParmTempTable varchar(30)asbegin-- @MyParmTempTable contains my parameter list... 这个变量是包含参数的表名-- For simplicity use dynamic sql to into a normal temp table...
create table #MyInternalList (
list_item varchar( 2 ) not null)set nocount oninsert #MyInternalList
select *
from sysobjects
create table #MyList (
list_item varchar( 2 ) not null)insert #MyList values ( 'S' )
insert #MyList values ( 'U' )
insert #MyList values ( 'P' )exec mytest "#MyList"3. If all you wanted to do was use the array/list as input to an IN clause in a WHERE statement you could use :-3、如果你想在IN子句里使用输入的数组参数可以这样做:CREATE PROCEDURE sp_MyProcere (@MyCommaDelimitedString

㈢ SQL2005存储过程,多个传入参数变量,求修改

试试用
sp_execute @strsqlOutput,N'@FileName nvarchar(50),@Photo nvarchar(20),@PhotoNum nvarchar(20)',
@FileName=@FileName,@Photo=@Photo,@PhotoNum=@PhotoNum
1.sp_execute 用于在存储过程中执行相关的sql语句
2.如果要返回值,应该给输出参数赋值

㈣ Sql中如何给变量赋值

DECLARE @n1 int,@n2 varchar(10)
set @n1 =(select age from table where column=xxx)
set @n2=(select gender from table where column = xxx )
------------------
或者一起赋值
就是楼上那个
DECLARE @n1 int,@n2 varchar(10)
select @n1 =age,@n2=gender
from table where column = xxx
------------------
select @n1,@n2 就知道变量的值了

㈤ Sql中如何给变量赋值

/*

Sql server 存储过程中怎么将变量赋值

*/

--SQL赋值语句

DECLARE @test1 INT

SELECT @test1 = 111

SET @test1 = 222

--SQL函数赋值,假定count()是自定义函数

DECLARE @test2 INT

SELECT @test2 = COUNT(*) FROM sys.sysobjects

--SQL存储过程赋值,直接传参处理(类似C语言中的指针吗)

IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test

GO

CREATE PROCEDURE sp_test(@test INT OUTPUT)

AS

BEGIN

SELECT @test = 999

GO

DECLARE @test3 INT

EXEC sp_test @test3 OUTPUT

SELECT @test3

DROP PROCEDURE sp_test

GO

㈥ sql语句中的问号和直接传变量参数

第一条是用绑定参数的方法查寻
第二条是直接组成sql语句的方法查寻

推荐使用绑定变量,可以提高安全性,理论上性能可以提升5%左右。
如果个人习惯一气呵成写SQL并且系统不是很大的话,也可以用第二种。

㈦ 调用.sql文件有没有比较好的参数传递方法

d:\test.sql脚本如下: [sql] view plain select &1 from &2; exit; 执行时这样传参数:sqlplus "scott/tiger@test" @d:\test.sql sysdate al 注意:参数必须用&[1-9]表示,不然传不进去,会提示让手动输入参数 [sql] view plain C:\>sqlpl...

㈧ 如何传递参数到 SQL 脚本

可以这么写,把目录下file_1,file_2,file_3 文件名保存在一个文本文件里, 这个文件叫file.txt,格式一行一个文件名。比如脚本叫test.sh 使用:./test.sh file.txt 这样就循环读取文本中每行的文件名并代入到变量filename 或者你也可以通过files=($(ls -l | grep ^- | awk '{print $8}')) 截取一个files数组然后,for filename in ${files[*]} 往for循环里套。 #!/bin/bash while read filename do sqlplus -S g471725/g471725 <<EOF define v_input_file=$filename @sql.sql exit EOF done < $1

㈨ SQL语句中字段的值是变量怎么传递

如果你用存储过程的话,你可以声明一个变量来存放sql:

DECLARE @SQL_1 VARCHAR(8000)、

SET @SQL_1='update [表1] SET U_'+i+'=2 FROM [表1] where code=001 '

EXEC @SQL_1

如果你sql是直接写在asp里的话:
sql1="update [表1] SET U_"&i&"=2 FROM [表1] where code=001"