本实例用的是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