sqlserver变量赋值
⑴ sqlSERVER 存储过程中 赋值时出错 提示:必须声明标量变量
存储过程代码也不贴出来,怎么帮你分析呢?一般出现这种问题的原因是变量没有事先定义就直接赋值,或者语法不对,用set还是select是有讲塌培拿究的,建团搭议把代码贴出来看中孝看
⑵ 如何给sqlserver 存储过程中的变量赋值
你差扮枯有存储过虚洞程定义如下
create procere some_procere @var1 int,@var2 int
传值时
exec some_procere 100,100或者缺灶
exec some_procere @var1=100,@var2=100
⑶ SQLserver 怎么声明变量
点击开始——所有程序——Microsoft SQL Server——企业管理器——(local)(Windows NT)——安全性——登录——sa,弹出SQL Server登录属性—sa界面,输入新的密码,确定。
密码无法看到,但是可以重新设置。
⑷ SQL server 中 关于@和declare的解释,请看详细
1.SQL server使用declare来声明局部变量。
语法:DECLARE @local_variable data_type
其中,local_variable为局部变量的名称,data_type为数据类型。
2.SQL server中的变量前面都要加@。
其中,局部变量以一个@符号开头,全局变量以两个@@符号开头(如:@@ERROR)。
3.@可以看作局部变量的一个标志,是一种规定,不可以去掉的。
上图是declare一个简单应用的例子。
(4)sqlserver变量赋值扩展阅读:
1.用declare进行声明的同时也可对变量赋初值,如:declare @id int = 3
2.SQL server中使用@@表示的全局变量,是系统预先定义的,我们写的sql语句不能创建、修改这些变量的值,只能读取。
⑸ sqlserver存储过程加变量的问题
加上引号
create proc insertTableNO(
@name varchar(50),
@manHour decimal,
@workTime datetime,
@wages decimal,
@insertTime datetime,
@tableName varchar(50)
)
as
begin
if object_id(@tableName) is not null
exec('insert into '+ @tablename+ ' ( name,manHour,workTime,wages,insertTime)
values('''散灶枝+@name+''','''+@manHour+''','辩神''+@workTime+''','''+@wages+'''冲敏,'''+@insertTime+''')')
else
return -1
end
⑹ 在SQL Server数据库中 存储过程是什么,希望给点例题
存储过程不仅sqlserver里有、其他dbms也有、只是语法有小出入。
存储过程是一段存储在系统中可随时使用的可带参数的SQL执行语句或程序段。
使用存储过程可以避免重复的填写SQL语句、可以快速的得到符合条件的某段SQL语句的执行结果。
例子(MSSQL):比如想实现一个表a(aid int,atime datetime)输入aid的值得到对应的atime的值
创建:
create proc proc_test //创建过程
@aid int //定义一个参数(默认为in参数)
as
declare @atime datetime //定义一个变量用于接收返回值(游标在这里定义)
begin
select @atime=atime from a where aid=@aid //select @xxx=xxx from是给变量赋值、也是sql语句的符合条件值
print @atime //print方法输出显示变量
end
执行:
exec proc_test a表中aid的任意一个值
以后想实现通过输入aid(或者其他列)的值得到atime(或者其他列)的值、就不用一遍一遍的写sql语句
这只是一个简单的应用。如果SQL语句是复杂语句、不是就省事多了?
这个例子只能返回一条记录、如果想返回多条、需要用游标。
这里暂时只给你简单应用、你先理解下。