sql返回结果集
Ⅰ sql查询语句怎样限定返回结果集的行数
1、创建测试表,create table test_rows(id number, value varchar(200));
Ⅱ sql存储过程返回多个结果集默认哪个
存储过程如果返回多个记录集的情况下,默认返回的是第一个记录集。至于多个记录集的排序顺序则取决于存储过程中的定义。
Ⅲ sql server 存储过程返回结果集存入临时表
1
用ado,连接字符串参考下面纤嫌代码.
dim
sa
as
string
'ip方式
sa
=
"provider=sqloledb;
data
source=
dbserver
,1433;
network
library=dbmssocn;
;initial
catalog=
dbdatabasename
;user
id=
dbusername
;password=
dbpassword"
‘计算机名方式
sa
=
"provider=sqloledb;data
source=dbservername;initial
catalog=dbdatabasename
;user
id=
dbusername
;password=
dbpassword“
2
打开联接后不要用者余command,用cn
rs=cn.execute(”test()“)
’有参数的例子
rs=cn.execute(”test(1,22,’abc‘)“毁嫌手)
Ⅳ 求助,sqlserver2005存储过程如何返回这样的结果集
部署CLR存储过程
上面的示例代码需要进行编译才能通过存储过程来调用。在命令行中执行下面的命令来编译这些代码并创建类库DLL MSSQLTipsCLRLib.dll:
CSC/target:libraryStoredProceres.cs/out:MSSQLTipsCLRLib.dll
假设你使用的是Microsoft .NET框架的第二版本,那么你可以在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下看到CSC.EXE。
执行下面的T-SQL脚本来创建这个存储过程:
ALTERDATABASEmssqltips
FROM'C:\mssqltips\MSSQLTipsCLRLib.dll'
WITHPERMISSION_SET=EXTERNAL_ACCESSGOCREATEPROCEDUREdbo.GetListOfFiles
@pathNVARCHAR(256)
,@patternNVARCHAR(64)
,@.StoredProceres.GetListOfFiles
在编译了这个代码到类库(.dll)之后,CREATE ASSEMBLY命令就被执行了,它将这个DLL与ASSEMBLY数据库对象关联起来。FROM条件从句必须指向DLL的实际路径。PERMISSION_SET必须设置为EXTERNAL_ACCESS,因为.NET代码将访问SQL Server 之外的文件系统。TRUSTWORTHY选项被设置为on,以允许外部访问。最后,CREATE PROCEDURE命令的EXTERNAME NAME将这个集合、类和函数与这个存储过程名称关联起来。
要执行这个存储过程,执行下面的脚本:
EXECdbo.GetListOfFiles'C:\mssqltips','*.*',0
你将看到类似于下面的输出,这取决于你选择的文件夹的内容;例如,一个只有一列、每一行是一个文件的结果集:图2接下来的步骤
在这里下载示例脚本并执行从一个CLR存储过程返回结果集。
记住,当在Microsoft .NET框架中有满足你需求的函数时,使用SQL Server的CLR可能是个很好的解决方法。
Ⅳ java 获取SQL查询语句返回的结果
step1:构造连接
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db","root","123");
step2:构造语句
String sql = "select username,password from t_user where username=?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setString(1, "zhangshan"); //给SQL的"?"(问号)传值。
step3:执行查询
ResultSet rs = stmt.executeQuery(); //rs就是SQL查询语句返回的结果集
step4:处理结果(java 获取SQL查询语句返回的结果)
List list = new ArrayList();
//遍历结果集,这样写就可以了,就是一个循环,有多少条记录,这里就会循环多少次,
//一次就是一条记录,想象一下就像一个表的一条记录
//在这里可以做查询出来的数据处理,可以封装成对象之类的(就是把值给它)
if(rs.next()) { //遍历结果集,这样写就可以了
User u = new User();
String username = rs.getString("username");
String address = rs.getString("password ");
u.setUsername(username);
u.setAddress(address);
list.add(u);
}
//上面这个例子意思是,把每一条记录封装成了一个User对象,然后这些User对象都放存入到了一个list
step4:关闭连接等
Ⅵ 关于SQL语句Select返回,是结果集还是单一值
关于返回什么,是由你的select 语句后面的语句决定,最终呈现的是什么?
例如 :select * from table 返回的肯定是一个结果集
例如:select top 1 name from table 返回的就是一个单一的具体name对应的值了
Ⅶ sql中如何通过存储过程返回结果集
引用
4
楼
oraclefans_
的回复:想麻烦了。。你直接返回游标就是一个结果集合。。CREATE
OR
REPLACE
PROCEDURE
USP_RETN_VAL(
RETN_VAL_CUR
OUT
sys_refcursor)ISBEGIN
OPEN
RETN_VAL_CUR
FOR
SELECT
*
FROM
TBL1;END;调用declare
cur
sys_refcurso……谢谢
但是我是想执行一个存储过程后,直接返回表里所有数据,不要再去操作游标。
Ⅷ SQL语句对返回的结果集里的字段再进行条件查询,在一个结果集显示
这个sql可以通过将初始查询结果集用括号括起来当作一个子查询(也可以称之为虚拟表),然后再对其实施进一步筛选从而获得另一个结果集的办法予以实现。
例如列出各科平均分在80到90分的同学姓名和各科平均分
select stu.name,t.平均分 from stu,
(select sid,avg(score) as 平均分 from scores group by sid)t
where stu.sid=t.sid and t.平均分 between 80 and 90;
事实上Sql可以通过这种方法实现多重子查询筛选、嵌套和连接非常方便。
Ⅸ java 获取SQL查询语句返回的结果
step1:构造连接
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db","root","123");
step2:构造语句
String sql = "select username,password from t_user where username=?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setString(1, "zhangshan"); //给SQL的"?"(问号)传值。
step3:执行查询
ResultSet rs = stmt.executeQuery(); //rs就是SQL查询锋昌语句返回的结果集
step4:处理结果(java 获取SQL查询语句返回的结果)
List list = new ArrayList();
//遍历结果集,这样写就可以了,就是一个循环,有多少条记录,这里就会循环多少次,
//一次就是一条记录,想象一下就像一个表的一条记录
//在这里可以做查询出来的数据处理,可以封装成对象之类的(就是把值给它)
if(rs.next()) { //遍历结果集,这样写就可以衫基搭了
User u = new User();
String username = rs.getString("username");
String address = rs.getString("password ");
u.setUsername(username);
u.setAddress(address);
list.add(u);
}
//上面这个例子意思是,把每一条记录封装成了一个User对象,然后这或拿些User对象都放存入到了一个list
step4:关闭连接等
Ⅹ SQL SERVER怎么获取存储过程返回的数据集
数据集可以用print的方式返回。
1、创建测试表、插入数据:
createtabletest
(idintnotnull,
namevarchar(10))
insertintotestvalues(1,'张三')
insertintotestvalues(2,'李四')
表里数据如图: