2018-5-8 mysql基础

本节笔记参考引用自

https://rosinelan.coding.me/2018/05/09/python%E8%AE%BF%E9%97%AEmysql-%E4%BA%8C/

游标

curosr()

游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。
用户可以用SQL 语句逐一从游标中获取记录,并赋值给主变量,交由python
进一步处理,一组主变量一次只能存放一条记录。
仅使用主变量并不能完全满足SQL 语句向应用程序输出数据的要求

cursor游标是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。可以将游标当做一个指针,它可以指定结果中的任何位置,然后允许用户对指定位置的数据进行处理。
建立数据库连接之后,使用cursor提供的方法执行命令或者返回结果。

执行命令

execute(self, query, args=None)
执行一个数据库sql命令。
executemany(self, query, args)
执行多个数据库sql命令。
callproc(self, procname, args=())
执行存储过程。
上述方法返回结果为受影响的行数。

返回结果

fetchall(self)
接受全部的返回结果行。
fetchmany(self, size=None)
接受size条返回结果行。如果size值大于结果行的数量则返回cursor.arraysize条数据。
fetchone(self)
返回结果行的下一行。
上述方法返回结果为元组tuple。

常见的mysql操作

查看所有的库 show databases;
切换数据库 use test
查看库中所有的表 show tables;
查看数据库连接数 show processlist
授权超级用户 grant all privileges on . to ‘user’@’%’ identified by ‘password’ with grant option;
查询建表语句 show create table student;
查询表结构 desc student;

授权超级用户 grant all privileges on *.* to 'user'@'%' identified by 'password' with grant option;  
创建普通用户并授权 grant all on *.* to db1.user1 identified by '123456';   
grant all on db1.* to 'user2'@'10.0.2.100' identified by '111222'; 
grant all on db1.* to 'user3'@'%' identified by '231222';
更改密码 UPDATE mysql.user SET password=PASSWORD("newpwd") WHERE user='username' ;

查看库 show databases;
查看都有哪些库  show databases;
查看某个库的表 use db; show tables \G; 
查看表的字段 desc tb;
查看建表语句 show create table tb;
当前是哪个用户 select user();
当前库 select database();
创建库 create database db1; 
创建表 create table t1 (id int, name char(40) adress varchar(30));  
查看数据库版本 select version(); 
查看mysql状态 show status;
修改mysql参数 show variables like 'max_connect%'; set global max_connect_errors = 1000; 
查看mysql队列 show processlist; 
select * from information_schema.processlist where info is not null;
sleep的可以忽略,qurey查询的才有

查询 select count(*) from mysql.user; select * from mysql.db; select * from mysql.db where host like '10.0.%'; 
插入 update db1.t1 set name='aaa' where id=1;  
清空表 truncate table db1.t1; 
删除表 drop table db1.t1; 
删除数据库 drop database db1; 
修复表 repair table tb1 [use frm];
查看权限show grants for root@'localhost';

执行sql mysql -uroot -p1234556 -e "select user,host,password into outfile '/home/mysql/1.txt' from mysql.user;";

参考引用

https://www.cnblogs.com/chenxiaohei/p/6909652.html
https://rosinelan.coding.me/2018/05/06/python%E8%AE%BF%E9%97%AEmysql/


Mysql增删改查语句

增加:INSERT INTO 表名(字段名1,字段名2) VALUE(字段值1,字段值2)

例:INSERT INTO a(id,name) VALUE(2,’李四’);

删除:DELETE FROM 表名 WHERE 条件

例:DELETE FROM a WHERE id=1;

修改:UPDATE 表名 SET 字段名=字段值 WHERE 条件

例:UPDATE a SET id=1,name=’2’ WHERE id=3;

查询:SELECT (字段名,*代表全部) FROM 表名 WHERE 条件

例:SELECT id,name FROM a WHERE id=1;

正则还没有消化完,又来了MySQL,半路出家的我没有一点基础,真的好难理解,四处借鉴资料笔记,慢慢啃吧。
谁有mysql好入门教程可以推荐一下

你可能感兴趣的:(学习,python,pycharm)