SQL游标快速上手
问题描述:有以下2张表,
表A
0_id 0_name 0_Salary
Y2007001 达哥 3666
Y2007002 小杜 4888
Y2007003 达哥 3666
表B
a_id a_salary
Y2007001 333
Y2007002 444
Y2007003 555
现在希望得到这样的数据表A里的O_Saloary加上表B的A_Salary是当前的总工资,并更新到表A。
你可以用视图来,表连接下就可以。
现在我们考虑下让SQL自己来处理,游标就是很好的方法。
原理:游标就是把数据按照指定要求提取出相应的数据集,然后逐条进行数据处理。
1.1游标的概念
游标(Cursor)它使用户可逐行访问由SQL Server返回的结果集。使用游标(cursor)的一个主要的原因就是把集合操作转换成单个记录处理方式。用SQL语言从数据库中检索数据后,结果放在内存的一块区域中,且结果往往是一个含有多个记录的集合。游标机制允许用户在SQL server内逐行地访问这些记录,按照用户自己的意愿来显示和处理这些记录。
1.2 游标的优点
从游标定义可以得到游标的如下优点,这些优点使游标在实际应用中发挥了重要作用:
1)允许程序对由查询语句select返回的行集合中的每一行执行相同或
相关文档:
select convert(numeric(10,4),iinvnowcost) from ...
decimal 和 numeric (来源sql 联机丛书)
带定点精度和小数位数的 numeric 数据类型。
decimal[(p[, s])] 和 numeric[(p[, s])]
定点精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。decimal 的 SQL-92 同义词是 dec 和 dec(p, s)。
p(精度) ......
--ksh下的一个WHILE 循环的例子
integer i=1
while ((i<67))
do
pirnt $i
i=i+1
done
--ksh 下一个FOR循环的例子
for i in `cat listdate.txt`
do
echo "执行 $i "
done
--- date.pl 用于生成一个时间段文件
#!/usr/local/bin/perl
use DBI;
if($#ARGV<1)
{
&nbs ......
在做过的很多项目中,发现大家不管对什么表,逢select必定加上nolock(或者with(nolock)),好像已经是制度化的一种东西。有领导高人解释说加上nolock可以提高查询速度,不影响对数据表的其他并发操作。
但是真有必要每个查询都加nolock吗?个人认为加不加nolock还是值得我们根据实际情况斟酌一番的(至 ......
1、该用户有登录权限。
2、Server如果开了Firewall,在exceptions里添加1433 port 。
3、配置工具->SQL Server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的 Database Engine 节点,选择“远程连接”,接下建议选择"同时使用TCP/IP和named pipes",确定后,重启数据库服务后 ......
症状:
SQL SERVER2005里面,启动SQL代理服务,启动正常,但是在sql server 代理还是显示已禁用代理 xp
在Management Studio中新建维护计划时,提示以下错误信息:
“代理XP”组件已作为此服务器安全配置的一部分被关闭。系统管理员可以使用sp_configure来启用“代理XP”。有关启用“代理XP ......