??????????


Declare  company_crsr cursor
For select name??salary from company where salary>2000
For update of name??salary


????????????????????????company_crsr???α?

??????2?????α?

????open???????

????open ?α???

???????????α??????????????fetch??update??delete?????????????С????????α?????????????α????????????????????fetch??????????С?

??????3??????α?????

??????????????????α??????fetch??????α??????л???????С?

????Fetch???????

????Fetch [[Next | Prior | First | Last | Absolute{n|@nvar} |Relative {n|@nvar}]

????From]  ?α??? [into ?????б?]

?????????????

????Next???????????е???е?????У??????????????ζ????????????????????????

????Prior???????????е???е?????У??????????????ζ????????е??????????????????????α?λ???????????С?

????First???????α????У?Last???????α??е????У?

????Absolute{n|@nvar}????? n ?? @nvar ?????????????α???????? n ?в?????????б???μ????С???? n ?? @nvar ????????????α?β????? n ?в?????????б???μ????С???? n ?? @nvar ? 0????????з????n ?????????????? @nvar ????? smallint??tinyint ?? int??

????RELATIVE {n | @nvar}????? n ?? @nvar ???????????????????? n ?в?????????б???μ????С???? n ?? @nvar ???????????????????? n ?в?????????б???μ????С???? n ?? @nvar ? 0?????????С???????α???????????????? FETCH RELATIVE ?? n ?? @nvar ?????????? 0????????з????n ?????????????? @nvar ????? smallint??tinyint ?? int??

??????????


Fetch  next
company_crsr into @name??@salary


????SQL Server????ζ??????????????????@@sql_status?????????±??????????@@sql_status????????塣

????????壺

????0——Fetch?????
????1——Fetch??????????
????2——???????и????????????λ??λ??????????У??????????α??????Fetch??????

???????α??????μ??????update??delete????????o?????С?

????????α???е??????

????Delete [from] ????

????where current of ?α???

??????????delete from authors where current of authors_crsr

???????α??????к?SQL Server???α??????????е????????

?????????α???е??????

????update ????

????set column_name1={expression1|NULL|(select_statement)}

????[??column_name2={expression2|NULL|(select_statement)}

????[……]

????where current of ?α???

??????????

????update company

????set name=”????”??salary=”5000”

????where current of company_crsr

??????4??????α?

??????????????α????????????close???????????

????close ?α???

????????α?????????壬????open??δ???????????α????????deallocate???????deallocater???????

????deallocater cursor ?α???

????deallocater?????SQL Server???Declare????????????棬????????????????????????Open??????