基础题,求牛人帮助
1.输入SQL语句,实现查询借过“软件工程”和“操作系统”两本书的所有读者的信息
select rno,rname from borrow(消息 209,级别 16,状态 1,第 1 行
列名 'rno' 不明确。)
inner join reader on borrow.rno=reader.rno
inner join book on borrow.bno=book.bno
where bname='软件工程' and bname='操作系统'
2.输入SQL语句,实现删除“数据结构”的所有借书记录
delete borrowno,bno,rno,pubdate from borrow (消息 102,级别 15,状态 1,第 1 行
',' 附近有语法错误。)
inner join book on borrow.bno=book.bno
where bname='数据结构'
3.输入T-SQL语句,利用游标循环遍历图书表的每条记录,然后关闭并释放游标
declare mycursor cursor for select * from book
open mycursor
fetch @@fetch_status=0 (提示这行有问题)
begin
fetch next from mycursor
end
close mycursor
deallocate mycursor
[最优解释]
null
[其他解释]
输入SQL语句,实现查询“李莎”所借过的图书的图书名称、作者和出版社
select bname,author,publish from book
inner join reader on reader.rno=book.bno
inner join borrow on borrow.bno=book.bno
where rname='李莎'
看下这个
这个查出来和题目要求不一样啊,李莎借过4本书 这个查出来就借过一本啊
[其他解释]
求高手解析解析
[其他解释]
这些错误犯的之低级
1.输入SQL语句,实现查询借过“软件工程”和“操作系统”两本书的所有读者的信息
select rno,rname --你需要这样标明:表名.字段名字
from borrow(消息 209,级别 16,状态 1,第 1 行
列名 'rno' 不明确。)
inner join reader on borrow.rno=reader.rno
inner join book on borrow.bno=book.bno
where bname='软件工程' and bname='操作系统'
2.输入SQL语句,实现删除“数据结构”的所有借书记录
delete borrowno,bno,rno,pubdate --这后面鞋子段是什么意思 我老师从来没这样教过 我也没见人这样写过 今天第一次
from borrow (消息 102,级别 15,状态 1,第 1 行
',' 附近有语法错误。)
inner join book on borrow.bno=book.bno
where bname='数据结构'
3.输入T-SQL语句,利用游标循环遍历图书表的每条记录,然后关闭并释放游标
declare mycursor cursor for select * from book
open mycursor
fetch @@fetch_status=0 (提示这行有问题)
begin
fetch next from mycursor
end
close mycursor
deallocate mycursor
这个问题 去看看游标的语法吧
[其他解释]
1.输入SQL语句,实现查询借过“软件工程”和“操作系统”两本书的所有读者的信息
select reader.rno,rname from borrow(消息 209,级别 16,状态 1,第 1 行
列名 'rno' 不明确。)
inner join reader on borrow.rno=reader.rno
inner join book on borrow.bno=book.bno
where bname='软件工程' or bname='操作系统'
[其他解释]
eclare @name nvarchar(35)
declare @number int
declare my_cursor cursor for --定义游标cursor1
select TOP 5 [name],[number] from [spt_values] --使用游标的对象(跟据需要填入select文)
open my_cursor --打开游标
fetch next from my_cursor into @name,@number --将游标向下移1行,获取的数据放入之前定义的变量@id,@name中
while(@@fetch_status=0) --判断是否成功获取数据
begin
www.2cto.com
--update [spt_values] set [name]=@name+'1'
--where [number]=@number+1 --进行相应处理(跟据需要填入SQL文)
print @name
print @number
print '===='
fetch next from my_cursor into @name,@number --将游标向下移1行
end
close my_cursor --关闭游标
deallocate my_cursor
游标的使用例子
[其他解释]
作业题
[其他解释]
2、delete borrow from borrow (消息 102,级别 15,状态 1,第 1 行
',' 附近有语法错误。)
inner join book on borrow.bno=book.bno
where bname='数据结构'
[其他解释]
第三题,看看联机丛书游标的例子就可以了,你都没赋值
[其他解释]
1.
select borrow.rno,borrow.rname from borrow
inner join reader on borrow.rno=reader.rno
inner join book on borrow.bno=book.bno
where bname='软件工程' and bname='操作系统'
2.
delete from borrow
inner join book on borrow.bno=book.bno
where bname='数据结构'
3
OPEN authors_cursor
declare mycursor cursor for select * from book
open mycursor
WHILE @@FETCH_STATUS = 0
begin
fetch next from mycursor
end
close mycursor
deallocate mycursor
[其他解释]
晕,谢谢你了,我愚钝了。。
[其他解释]
谢谢,正解
------其他解决方案--------------------
SELECT book.bname ,
book.author ,
book.publish
FROM borrow
INNER JOIN reader ON borrow.rno = reader.rno
INNER JOIN book ON borrow.bno = book.bno
WHERE reader.rname = '李莎'