游标

navicat工具 pymysql模块

怎甘沉沦 提交于 2019-11-29 05:01:31
目录 一 IDE工具介绍(Navicat) 二 ymysql模块 一 IDE工具介绍(Navicat)   生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接mysql服务端的一个工具,并且他是图形界面版的。我们使用它和直接使用命令行的区别就类似linux和windows系统操作起来的一个区别。 下载链接:https://pan.baidu.com/s/1bpo5mqj   Navicat的安装教程看这篇博客: 点击 掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新建查询 #6. 备份库/表 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 ymysql模块   我们要学的pymysql就是用来在python程序中如何操作mysql,它和mysql自带的那个客户端还有navicat是一样的,本质上就是一个套接字客户端,只不过这个套接字客户端是在python程序中用的,既然是客户端套接字,应该怎么用,是不是要连接服务端,并且和服务端进行通信啊,让我们来学习一下pymysql这个模块 #安装 pip3 install pymysql    一 链接、执行sql、关闭(游标)

pymysql 模块

丶灬走出姿态 提交于 2019-11-29 04:46:21
目录 一 IDE工具介绍(Navicat) 二 ymysql模块 一 IDE工具介绍(Navicat)   生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接mysql服务端的一个工具,并且他是图形界面版的。我们使用它和直接使用命令行的区别就类似linux和windows系统操作起来的一个区别。 ​ 下载链接: https://pan.baidu.com/s/1bpo5mqj   Navicat的安装教程看这篇博客:点击 掌握: 1. 测试+链接数据库 2. 新建库 3. 新建表,新增字段+类型+约束 4. 设计表:外键 5. 新建查询 6. 备份库/表 注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 ymysql模块   我们要学的pymysql就是用来在python程序中如何操作mysql,它和mysql自带的那个客户端还有navicat是一样的,本质上就是一个套接字客户端,只不过这个套接字客户端是在python程序中用的,既然是客户端套接字,应该怎么用,是不是要连接服务端,并且和服务端进行通信啊,让我们来学习一下pymysql这个模块 安装 pip3 install pymysql   一 链接、执行sql、关闭(游标)     

Sql sever 执行顺序

匆匆过客 提交于 2019-11-29 03:27:46
衍申考察S ql sever 执行顺序 Sqlsever 代码不按 编码顺序被处理,第一个被处理的子句是FROM子句最后处理第一个出现的SELECT语句,每个步骤都会产生一个虚拟表,这个虚拟表被用作下一个步骤的输入。 (8)SELECT (9)DISTINCT (11)<Top Num> <select list> (1)FROM [left_table] (3)<join_type> JOIN <right_table> (2)ON <join_condition> (4)WHERE <where_condition> (5)GROUP BY <group_by_list> (6)WITH <CUBE | RollUP> (7)HAVING <having_condition> (10)ORDER BY <order_by_list> 逻辑查询处理阶段简介 1.FROM: 对 FROM子句中的前两个表执行笛卡尔积(Cartesian product)(交叉联接), 生成虚拟表 VT1 2.ON: 对 VT1应用ON筛选器。只有那些使<join_condition> 为真的行才被插入 VT2。 3.OUTER(JOIN):如 果指定了 OUTER JOIN( 相对于 CROSS JOIN 或(INNER JOIN),保留表(preserved table

python程序中使用MySQL数据库

不想你离开。 提交于 2019-11-29 00:52:27
目录 python程序中使用MySQL数据库 1 pymysql连接数据库 2 sql 注入 3 增删改查操作 4 pymysql使用总结 python程序中使用MySQL数据库 1、python中使用MySQL数据库需要借助第三方模块 pymysql(pip install pymysql) 2、pymysql本质是一个套接字客户端软件,在python 程序中使用pymysql对象链接服务器端 1 pymysql连接数据库 #方式1: import pymysql #step1 链接 conn = pymysql.connect( host="localhost", user="root", password="123", db="myschool", charset="utf8") cursor = conn.cursor() #step2 拿游标 sql = "select * from class;" #step3 拼接sql语句 res1 = cursor.execute(sql) #step4 调用execute()执行sql语句 print(res1) #res不是查询的数据结果,而是查到数据的行数 #step5 得到查询数据 res2 = cursor.fetchone() #fetchone返回查到第一行数据,以元组的形式返回 res3 = cursor

Oracle数据库的常用对象(三)----PL/SQL 语法、存储过程

﹥>﹥吖頭↗ 提交于 2019-11-29 00:48:01
(三)PL/SQL Procedure Language / SQL 存储过程 命名程序:存储过程,函数,触发器 --------------------------------------基础语法-------------------------------------------- 1. 语句块: begin dbms_output.put_line('HelloWorld'); end; 2. 定义变量 declare num number(4); name varchar2(10); begin num := 1001; name := 'amui'; -- :=是赋值操作 dbms_output.put_line(num || ':' || name); -- ||连接字符串,相当于+ end; 3. if语句 a) 示例1: declare age number(2); begin age := 19; if age > 20 then dbms_output.put_line('A'); else dbms_output.put_line('B'); end if; --要记得 end if end; b) 示例2: 4. case结构 5. 循环 a) loop 循环语法实例: b) while 循环语法实例 c) for 循环语法实例 6.

游标本次循环,跳过某些语句

守給你的承諾、 提交于 2019-11-29 00:19:53
DECLARE @Name NVARCHAR(50),@NRIC NVARCHAR(15),@PersonID INT DECLARE CUR_Test1 CURSOR FOR SELECT [Name],NRIC,PersonID FROM tblCtcPersonTest1 OPEN CUR_Test1 FETCH NEXT FROM CUR_Test1 INTO @Name,@NRIC,@PersonID; WHILE @@FETCH_STATUS =0 BEGIN IF EXISTS(SELECT * FROM tblCtcPersonTest WHERE NRIC=@NRIC ) BEGIN GOTO UPDATE_IMPORT_RESULT; END UPDATE tblCtcPersonTest SET Flag='not Go To' WHERE PersonID=@PersonID IF CHARINDEX('*',@NRIC)>0 BEGIN INSERT INTO tblCtcPersonTest([Name],[PersonID],NRIC)VALUES(@Name,@PersonID,@NRIC) END ELSE BEGIN UPDATE tblCtcPersonTest1 SET Remarks='cant insert' WHERE PersonID

游标循环跳过本次循环,循环下一行

≯℡__Kan透↙ 提交于 2019-11-29 00:19:49
DECLARE @Name NVARCHAR(50),@NRIC NVARCHAR(15),@PersonID INT DECLARE CUR_Test CURSOR FOR SELECT [Name],NRIC,PersonID FROM tblCtcPersonTest1 OPEN CUR_Test FETCH NEXT FROM CUR_Test INTO @Name,@NRIC,@PersonID; WHILE @@FETCH_STATUS =0 BEGIN IF CHARINDEX('*',@NRIC)>0 BEGIN INSERT INTO tblCtcPersonTest([Name],[PersonID],NRIC)VALUES(@Name,@PersonID,@NRIC) END ELSE BEGIN UPDATE tblCtcPersonTest1 SET Remarks='cant insert' WHERE PersonID=@PersonID GOTO FORNEXT; END UPDATE tblCtcPersonTest1 SET Flag='success' WHERE PersonID=@PersonID FORNEXT: FETCH NEXT FROM CUR_Test INTO @Name,@NRIC,@PersonID; END CLOSE

Oracle - 游标的使用

醉酒当歌 提交于 2019-11-29 00:07:52
游标的使用小结 应用场景 在数据库函数或者过程中实现某个业务逻辑时,有时候需要进行循环操作,此时我们可以定义一个游标来实现。 实际意义 游标类似一个数据容器,可以暂时存储数据的查询结果,使用游标里的数据时,可以通过一个游标变量直接取出。 优点 游标的使用可以让编程看起来更加的规整,提高代码的复用性、避免代码的冗余,提高二次开发或者Debug的效率。 使用方法如下: 1 -- Created on 2019-08-30 by JEREMYWU 2 declare 3 -- Local variables here 4 i integer; 5 --定义游标 6 CURSOR Q IS 7 SELECT T.Params1, T.Params2, T.Params3 FROM TableName/ViewName T 8 WHERE 条件; 9 begin 10 -- Test statements here 11 --使用游标 12 FOR Rec IN Q LOOP 13 --业务逻辑 14 --可以使用游标中的字段 Rec.Params1, Rec.Params2, Rec.Params3 15 END LOOP; 16 end; 来源: https://www.cnblogs.com/jeremywucnblog/p/11433985.html

Python连接mysql数据库

懵懂的女人 提交于 2019-11-28 22:58:10
  尽管很多 NoSQL 数据库近几年大放异彩,但是像 MySQL 这样的关系型数据库依然是互联网的主流数据库之一,每个学 Python 的都有必要学好一门数据库,不管你是做数据分析,还是网络爬虫,Web 开发、亦或是机器学习,你都离不开要和数据库打交道,而 MySQL 又是最流行的一种数据库,这篇文章介绍 Python 操作 MySQL 的几种方式。 方法一、通过pymysql进行连接 数据库的访问无非是" 建立数据库连接–>>执行操作–>>关闭连接 "这样的过程,用pymysql也是如此。 1、建立连接 import pymsql conn = pymysql.connect(host="47.92.118.81",port=3306,user="tblauopr",passwd="tblauopr",db="tableau",charset="utf8") 其中参数: host是主机名或者IP地址; port是端口号,一般为3306, user为用户名,passwd为连接密码, db为该连接下的数据库,charset为字符编码。 这些字段都可以在MySQL的连接信息中找到,如下图: 2、对数据库进行操作 2.1、数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块,只需先通过 cur = conn.cursor()

存储过程和函数

不想你离开。 提交于 2019-11-28 22:02:42
存储过程和函数的引入   存储过程和函数是在数据库中定义一些 SQL 语句的集合,然后直接调用这些存储过程和函数来执行已经定义好   的SQL语句。 存储过程和函数可以避免开发人员重复的编写相同的SQL语句。 而且, 存储过程和函数是在MySQL   服务器中存储和执行的,可以减少客户端和服务器端的数据传输;、 创建存储过程和函数 创建存储过程 CREATE PROCEDURE sp_name([proc_parameter[,...]]) [characteristic...] routine_body sp_name 参数是存储过程的名称; proc_parameter 表示存储过程的参数列表; characteristic 参数指定存储过程的特性; routine_body 参数是 SQL 代码的内容,可以用 BEGIN...END 来标志 SQL 代码的开始和结束。 proc_parameter 中的每个参数由 3 部分组成。这 3 部分分别是输入输出类型、参数名称和参数类型。 [ IN | OUT | INOUT ] param_name type 其中,IN 表示输入参数;OUT 表示输出参数;INOUT 表示既可以是输入,也可以是输出;param_name 参数是 存储过程的参数名称;type 参数指定存储过程的参数类型,该类型可以是 MySQL 数据库的任意数据类型