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

sql中隐式游标的行数

如何解决sql中隐式游标的行数

我尝试了一个 sql 测试,我得到了这个问题:

from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

#url of the page we want to scrape
url = "https://www.flightclub.com/adidas/adidas-yeezy"
driver = webdriver.Chrome(executable_path=r'.\ChromeDriver\chromedriver_win32\chromedriver.exe')
result = []
for i in range(1,15):
    temp = []
    # initiating the webdriver. Parameter includes the path of the webdriver.
    driver.get(url+ "?page="+str(i))

    # this is just to ensure that the page is loaded
    time.sleep(5)
    html = driver.page_source
    soup = BeautifulSoup(html)

    temp = soup.find_all('a',class_='sc-12adlsx-0 iSXeRZ')
    result.extend(temp)
    print("Result len: "+ str(len(result)))

shoes = []
for res in result:
    try:
        print("------------------------------------------------------------------")
        print("Title: "+res.find('img',class_='sc-htpNat ipJcZu')['alt'])
        print("Price: "+str(res.find('div',class_='yszfz8-5 kbsRqK').text.split()[0]) +  " USD")
        print("Picture: "+res.find('img',class_='sc-htpNat ipJcZu')['src'])
        print("Link: "+"https://www.flightclub.com" + res.get('href'))
    except:
        print("Shoe not found")
print(f"\nFound total shoes: {len(result)}")
driver.quit()

我不知道上述问题的正确选项应该是什么。

请帮我找到上述问题的正确答案。

谢谢。

解决方法

选项 A 我不确定的其他选项。 但是A绝对是正确的。

,

A + B 是正确的。

您可以在 comment 中的链接中找到解决方案。

您将在此处找到以下信息:

隐式游标

PL/SQL 为所有 SQL 数据操作语句隐式声明了一个游标...... SQL%ROWCOUNT 属性的值是指最近执行的来自 PL/SQL 的 SQL 语句。

示例:

BEGIN
   UPDATE tbl1 SET col1 = 1 WHERE col2 = 1;
   DBMS_OUTPUT.PUT_LINE (SQL%ROWCOUNT);
   
   UPDATE tbl1 SET col1 = 2 WHERE col2 = 2;
   DBMS_OUTPUT.PUT_LINE (SQL%ROWCOUNT);
END;
/

返回:

1
1

显式光标

当其游标或游标变量打开时,%ROWCOUNT 为零。在第一次获取之前,%ROWCOUNT 产生 0。此后,它产生到目前为止获取的行数。

示例:

DECLARE
   CURSOR cur IS SELECT col1 FROM tbl1;
   l_result tbl1.col1%TYPE;
BEGIN
   OPEN cur;
   LOOP
      FETCH cur INTO l_result;
      EXIT WHEN cur%NOTFOUND;
      DBMS_OUTPUT.PUT_LINE('Rowcount: ' || cur%ROWCOUNT);
   END LOOP;
   CLOSE cur;
END;
/

返回:

Rowcount: 1
Rowcount: 2
Rowcount: 3

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