微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sqlserver存储过程中利用游标遍历结果集简单示例及查询数据库时间

本实例用的是sqlserver2005   在存储过程中遍历结果,和查询数据库中所有 存储过程名称 加以处理以文本形式输出

源码:

drop procedure findName

create procedure findName--创建一个名为findName的存储过程
AS
 declare @result VARCHAR(30)--用来处理结果的变量
 begin
 --声明一个游标
  Declare curStudentFee Cursor for 
  SELECT NAME FROM SYSOBJECTS WHERE XTYPE='P';---查询语句(查询所有用户存储过程名称)
  
   --打开游标
  Open curStudentFee 
  --循环并提取记录
  Fetch Next From curStudentFee Into @result--取第一条记录存入@result中
  While ( @@Fetch_Status=0 )   
        begin
        print ''''+@result+''''+',';---处理结果
     Fetch Next From curStudentFee into @result----下一条
       end 
  --关闭游标   
   Close curStudentFee
  --释放游标
 Deallocate curStudentFee 
 end

exec findName


其中SELECT NAME FROM SYSOBJECTS WHERE XTYPE='P';---查询语句(查询所有用户存储过程名称)是查询用户写的存储过程名称      处理后输出

输出结果形:

'p_check_drp_gonchang',
'p_execute_drp_gongchang',
'p_query_open_form_close',
'sp_upgraddiagrams',
'sp_helpdiagrams',

 

2.另外加一个用hibernateTemplate查询sqlserver当前时间的java代码,在网上找了好长时间就是找不到 查询数据库系统时间 用HQL怎么写 或者用hibernateTemplate直接获取数据库间的方法(期待高人指点!),没办法只能用sql查询

代码

 Object date= (Object) hibernateTemplate.execute(new HibernateCallback() {
			@Override
			public Object doInHibernate(Session arg0) throws HibernateException,sqlException {//查询当前数据库时间
			       sqlQuery query=arg0.createsqlQuery("select getdate()");
			       return query.list().get(0);
							}
						});
    System.out.println("取得数据库当前时间是 : "+(Date)date);


运行结果:

Hibernate: select getdate() 取得数据库当前时间是 : 2012-09-27 14:45:21.637

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐