sql游标

Pymysql的常见使用方法

故事扮演 提交于 2019-12-04 07:57:58
cursor.fetchone()与cursor.fetchall()的区别: cursor.fetchone():只能显示一个数据 cursor.fetchall():才能显示查出来的所有数据 Pymsql的其他常用方法 import pymysql #连接数据库 db = pymysql.connect("localhost","admin","Cesare@qq","dbpymysql") #使用cursor()方法创建一个游标对象 cursor = db.cursor() #使用execute()方法执行SQL语句 cursor.execute("SELECT * FROM order_info") # 使用fetchone() 获取一条结果数据 result = cursor.fetchone() # 只显示一行结果 #使用fetall()获取全部结果数据 data = cursor.fetchall() #关闭游标和数据库的连接 cursor.close() db.close() # 更新SQL cursor.execute(sql) db.commit() 来源: https://www.cnblogs.com/CesareZhang/p/11846883.html

在python操作数据库中游标的使用方法

倾然丶 夕夏残阳落幕 提交于 2019-12-04 06:32:18
cursor就是一个Cursor对象,这个cursor是一个实现了迭代器(def__iter__())和生成器(yield)的MySQLdb对象,这个时候cursor中还没有数据,只有等到fetchone()或fetchall()的时候才返回一个元组tuple,才支持len()和index()操作,这也是它是迭代器的原因。但同时为什么说它是生成器呢?因为cursor只能用一次,即每用完一次之后记录其位置,等到下次再取的时候是从游标处再取而不是从头再来,而且fetch完所有的数据之后,这个cursor将不再有使用价值了,即不再能fetch到数据了。 数据库支持 使用简单的纯文本只能实现有退限的功能,所需要引入数据库,完成更强大的功能,本节使用的简单数据库SQLite 。 SQLite 和PySQLite sqlite是非常著名的开源嵌入式数据库软件,它可以嵌入到其他程序中使用,并且提供SQL接口用来查询,非常方便。它的官方站点为http://www.sqlite.org。 而pysqlite 则是一个sqlite 为 python 提供的 api 接口,它让一切对于 sqlite 的操作都变得异常简单 在python2.5版本这后,SQLite的优势在于它的一个包装(PySQLite)已经被包括在标准库内,所以我们可以直接使用。 入门操作

游标删除表

我的梦境 提交于 2019-12-04 01:03:09
本地测试数据库临时表太多无用,用循环删除表 1 declare 2 3 --i integer; 4 v_tablename varchar2(20); 5 v_sql varchar2(200); --定义表名 6 CURSOR emp_cursor IS select TABLE_NAME from user_tab_comments ;--游标 7 begin 8 --select TABLE_NAME from user_tab_comments --查询当前用户下表名 9 open emp_cursor ; --打开游标 10 loop --打开循环 11 FETCH emp_cursor into v_tablename ; --取值 12 EXIT WHEN emp_cursor%NOTFOUND; --判断游标循环 13 --dbms_output.put_line(v_tablename); --dbsm输出打印表名 14 v_sql:='drop table '|| v_tablename; --拼接删除表语句 drop 删除表空间,无需commit 15 dbms_output.put_line(v_sql); 16 execute immediate v_sql; --执行 sql语句 17 end loop; --标记循环结束 18 CLOSE emp

pymysql增删改查操作

ぐ巨炮叔叔 提交于 2019-12-03 20:49:02
表结构 CREATE TABLE `students` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT '', `age` tinyint(3) unsigned DEFAULT '0', `height` decimal(5,2) DEFAULT NULL, `gender` enum('男','女','中性','保密') DEFAULT '保密', `cls_id` int(10) unsigned DEFAULT '0', `is_delete` int(11) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO students VALUES (0,'小明',18,180.00,2,1,0), (0,'小月月',18,180.00,2,2,1), (0,'彭于晏',29,185.00,1,1,0), (0,'刘德华',59,175.00,1,2,1), (0,'黄蓉',38,160.00,2,1,0), (0,'凤姐',28,150.00,4,2,1), (0,'王祖贤',18,172.00,2,1,1), (0,'周杰伦',36,170,1,1,0), (0,

Python - MySQL 数据库连接 - PyMySQL 驱动 - 第二十五天

情到浓时终转凉″ 提交于 2019-12-03 17:22:52
序言 本文我们为大家介绍 Python3 使用 PyMySQL 连接数据库,并实现简单的增删改查。 什么是 PyMySQL? PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。 PyMySQL 安装 在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装。 PyMySQL 下载地址:https://github.com/PyMySQL/PyMySQL。 如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL: pip install pymysql 数据库连接 连接数据库前,请先确认以下事项: 您已经创建了数据库 TESTDB. 在TESTDB数据库中您已经创建了表 EMPLOYEE EMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。 连接数据库TESTDB使用的用户名为 "testuser" ,密码为 "test123",你也可以自己设定或者直接使用root用户名及其密码,Mysql数据库用户授权请使用Grant命令。 在你的机子上已经安装了 Python MySQLdb 模块。 实例: import

Oracle面试题(基础篇)(转)

大城市里の小女人 提交于 2019-12-03 14:37:39
1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windows平台的稳定性和安全性影响了sql server的稳定性和安全性 2). oracle使用的脚本语言为PL-SQL,而sql server使用的脚本为T-SQL 微观上: 从数据类型, 数据库 的结构等等回答 2. 如何使用Oracle的游标? 1). oracle中的游标分为显示游标和隐式游标 2). 显示游标是用cursor...is命令定义的游标,它可以对查询语句(select)返回的多条记录进行处理;隐式游标是在执行插入 (insert)、删除(delete)、修改(update)和返回单条记录的查询(select)语句时由PL/SQL自动定义的。 3). 显式游标的操作:打开游标、操作游标、关闭游标;PL/SQL隐式地打开SQL游标,并在它内部处理SQL语句,然后关闭它 3. Oracle中function和procedure的区别? 1). 可以理解函数是存储过程的一种 2). 函数可以没有参数,但是一定需要一个返回值,存储过程可以没有参数,不需要返回值 3). 函数return返回值没有返回参数模式,存储过程通过out参数返回值, 如果需要返回多个参数则建议使用存储过程

数据库整理(五)数据库编程 触发器 事务 过程

白昼怎懂夜的黑 提交于 2019-12-03 08:07:05
数据库整理(五)数据库编程 嵌入式SQL 交互式SQL和嵌入式SQL是SQL的两种使用方法。将SQL语言嵌入到宿主语言程序中, 将SQL语言访问数据库的功能和宿主语言的数据处理功能相结合 ,这种使用SQL的方法称为嵌入式SQL。 SQL查询数据库的能力强,高级语言对复杂应用和复杂逻辑处理能力强 类似断言、触发器等操作需要对数据进行处理,原生SQL能力不强 数据库服务器只识别SQL语句,用SQL可以提高效率 如何实现嵌入式SQL? 宿主语言(简称 主语言 )的编译器不能识别SQL,如何将嵌有SQL语句的宿主语言编译成可执行代码? 宿主语言与DBMS之间如何传递数据和信息? 如何解决元组集合数据对宿主语言变量的赋值? 识别与处理SQL 数据库管理系统一般采用预编译方法处理,即由数据库管理系统的预处理程序对源程序进行扫描,识别出嵌入式SQL语句,把它们转换成主语言调用语句,以使主语言编译程序能识别它们,然后由主语言的编译程序将纯的主语言程序编译成目标码 为了调用,将SQL语言转变为函数调用 用EXEC SQL前缀来标识SQL语句 ,以区分宿主语言与SQL语言。 EXEC SQL <SQL语句>; 嵌入式SQL语句与主语言的通信 SQL负责操纵数据库,高级语言语句负责控制逻辑流程 数据库工作单元与源程序工作单元之间的通信主要包括: (1) 向主语言传递SOL语句的执行状态信息

sqlserver 动态游标

匿名 (未验证) 提交于 2019-12-03 00:34:01
--创建动态游标 set @sql = 'declare rowCursor cursor For select aimg,aname,aprice from ( select *, ROW_NUMBER() over('+ @order +') as rn from (select id,aimg,aname,aprice from F_Anli where '+ @where +') t ) a where rn>='+@start+' and rn<='+@end; EXEC(@sql) --打开游标 --ȡֵ fetch next from rowCursor into @aimg,@aname,@aprice; --循环 while(@@FETCH_STATUS=0) begin set @eachjson = @eachjson+'<row><aimg>'+@aimg+'</aimg>'+'<aname>'+@aname+'</aname>'+'<aprice>'+@aprice+'</aprice></row>'; fetch next from rowCursor into @aimg,@aname,@aprice; --关闭游标 close rowCursor; --释放游标控件 deallocate rowCursor; 文章来源: sqlserver 动态游标

【SQL开发】PLSQL游标

匿名 (未验证) 提交于 2019-12-03 00:22:01
游标提供了一种从表中检索数据并进行操作的灵活手段,游标主要用在服务器上,处理由客户端发送给服务器端的SQL语句,或是批处理、存储过程、触发器中的数据处理请求。游标的作用相当于指针,通过游标PL/SQL程序可以一次处理查询结果集中的一行,并可以对该行数据执行特定操作,从而为用户在处理数据的过程中提供了很大方便。 在Oracle中,通过游标操作数据主要使用显式游标和隐式游标,另外,还有具有引用类型的ref游标,下面将分别介绍。 一 显式游标 1 显式游标介绍 显式游标由用户自己定义和操作游标,通常所说的游标都是指显式游标。 游标的使用分成以下4个步骤: 1)声明游标 在DECLARE部分按以下格式声明游标: 参数是可选部分,所定义的参数可以出现在SELECT语句的WHERE子句中。如果定义了参数,则必须在打开游标时传递相应的实际参数。 2)打开游标 在可执行部分,按以下格式打开游标: 打开游标时,SELECT语句的查询结果就被传送到了游标工作区。 3)提取数据 在可执行部分,按以下格式将游标工作区中的数据提取到变量中。提取操作必须在打开游标之后进行。 或 游标打开后有一个指针指向数据区,FETCH语句一次返回指针所指的一样数据,要返回多行需重复执行,可以使用循环语句来实现。控制循环可以通过判断游标的属性来进行。 对以上两种格式进行说明: 第一种格式中的变量是用来从游标中接收数据的变量

PLSQL开发笔记和小结

匿名 (未验证) 提交于 2019-12-03 00:01:01
PLSQL开发笔记和小结 ***************************************** PLSQL基本结构 ***************************************** 基本数据类型变量 1. 基本数据类型 Number 数字型 Int 整数型 Pls_integer 整数型,产生溢出时出现错误 Binary_integer 整数型,表示带符号的整数 Char 定长字符型,最大255个字符 Varchar2 变长字符型,最大2000个字符 Long 变长字符型,最长2GB Date 日期型 Boolean 布尔型(TRUE、FALSE、NULL三者取一) 在PL/SQL中使用的数据类型和Oracle数据库中使用的数据类型,有的含义是完全一致的,有的是有不同的含义的。 2. 基本数据类型变量的定义方法 变量名 类型标识符[not null]:=值; declare begin end; 其中,定义常量的语法格式: 常量名 constant 类型标识符 [not null]:=值; declare begin end; 表达式 变量、常量经常需要组成各种表达式来进行运算,下面介绍在PL/SQL中常见表达式的运算规则。 1. 数值表达式 PL/SQL程序中的数值表达式是由数值型常数、变量、函数和算术运算符组成的, 可以使用的算术运算符包括+