VB中怎样把sql语句的查询结果赋值给一个变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB中怎样把sql语句的查询结果赋值给一个变量相关的知识,希望对你有一定的参考价值。

Dim temp As New ADODB.Recordset
temp = "select Keyword from Logintable where Usename='" & Trim(TxtUsername.Text) & "'"
If temp = TxtKeyword.Text Then
FormStudent.Show
End If
各位回答问题的哥哥或姐姐们,你们的回答我都看过了,可我还是不太懂
我就是想申请一个变量temp,然后把select语句查询的结果赋给temp,通过比较temp与Txtkeyword的值是否一致
小弟我不知道dim temp as 什么呀 后面怎么写呀

查询结果如果只有一个值,可以用
val=conn.execute("select fileld from 表名 where id=1")(0)

如果有多个值,要用getRowss(),如
SQL="select * from 表名"
Set Rs=conn.execute(SQL)
arrA = rs.GetRows()
这样得到的是一个数组。
参考技术A 我不知道你的语句为什么会产生重复的结果,最好检查一下你的代码。关于将语句输出赋值到变量的问题请你参照一下我测试的这份代码
get_msisdn()

echo -e "
set feedback off;\n
set pagesize 0;\n
spool result.log;\n
select prono from pl.tbassignp where model = 'ZFN';\n
spool off;\n
exit;
" > query.sql

sqlplus pl/oracle@mydb @query.sql|head -0

result=`cat result.log`

echo $

exit


get_msisdn

它首先设置输出的格式如set feedback off; set pagesize 0;,然后将语句的输出指定到文件result.log,最后使用cat命令将结果显示并赋值给变量result。
参考技术B set rs=conn.execute("select * from 表名 where 1=1")
dim str1=rs("字段")

这儿的str1就是变量,已经把数据库的一个字段赋值给它了追问

字段是哪个字段呀

追答

我怎么知道你的字段是什么
你要哪个字段,就写上哪个字段的名字呗

oracle 中怎样把查询结果当做已知量或赋值给某个变量?

如我想在update station
set geom=addpoint(x,y,z)where id=1
中将x,y的位置用另一个表的某行的两个值代替应该怎么操作啊,谢谢了
代码如图

需要写存储过程,先声明两个变量v_x,v_y,然后用select into语句赋值给这两个变量.以下供参考:
declare
v_x NUMBER; --必须和addpoint(x,y,z)里面的x字段类型一致
v_y NUMBER; --必须和addpoint(x,y,z)里面的y字段类型一致
...
begin
select xxx,yyy into v_x, v_y from table; --把table表中xxx,yyy的值赋给v_x,v_y.你可以自己写查询
...
update station set set geom=addpoint(v_x,v_y,z)where id=1;
...
end追问

SQL> create or replace procedure pro_into
as
declare
v_x number;
v_y number;
begin
select sta_long into v_x from sta_87 where id=2;
select sta_alt into v_y from sta_87 where id=2;
update station_87
set geom= addpoint(v_x,v_y,4214)where id=2;
end pro_into;
/
Warning: Procedure created with compilation errors
就报错了,帮忙看看有哪不对吗?多给分哦

追答

set geom= addpoint(v_x,v_y,4214)where id=2;
4214)后面是否要加一个空格

参考技术A 加个判断就好了,可以用自带的异常。 EXCEPTION WHEN NO_DATA_FOUND THEN 变量 = NULL; END ; 参考技术B 存储过程里面定义局部变量不需要declare ,去掉declare 试试。 参考技术C update station set geom=addpoint(sta_87.sta_long,sta_87.sta_alt,z)where id=1
这样不行么?追问

TT 也不行,说是标示符无效,是不是我的pl/sql developer版本不对啊?

追答

你确定表名都对吧?
你那个_87都加了?
或者是都不用加?

追问

表名都对,大侠方便加下我qq吗1269160297

追答

额...非大侠,只是凭经验的一点推论,oracle不是很瘦
公司无法聊Q,*_*

以上是关于VB中怎样把sql语句的查询结果赋值给一个变量的主要内容,如果未能解决你的问题,请参考以下文章

mysql 查询结果把一个字段的值赋值给另一个字段的键值

Sql中如何给变量赋值

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

SQL存储过程中怎样给变量赋值?

oracle 将查询结果赋值给变量

sql语句怎么把NULL赋值给另一个值