返回顶部
首页 > 资讯 > 数据库 >MySQL第三天
  • 537
分享到

MySQL第三天

2024-04-02 19:04:59 537人浏览 八月长安
摘要

Mysql第二天 关键词:分组聚合 自关联 物理上一张表,逻辑上是两张表 create table areas( id int primary key, atitle varchar(20)

Mysql第二天

关键词:分组聚合

自关联

物理上一张表,逻辑上是两张表
MySQL第三天

create table areas(
id int primary key,
atitle varchar(20),
pid int,
foreign key(pid) references areas(id)
);  

导入sql文件

source areas.sql;  

示例图

示例语句

select sheng.id as sid,sheng.title as stile,shi.id as shiid,shi.title as shititle from areas as sheng
inner join areas as shi on sheng.id=shi.pid
where sheng.pid is null and sheng.title='山西省'
limit 0,100;

视图

create view stuscore as + 查询语句

事务

四个特性(ACID)

  • 原子性(Atomicity):事务不可分割
  • 一致性(Consistency):事务间执行顺序不影响结果
  • 隔离性(Isolation):不受干扰
  • 持久性(Durability):对数据库的更改不丢失

引擎类型:engine=innodb/bdb 支持事务,默认innodb
查看表创建的语句: show create table students;
修改表类型 : alter table students engine=innodb;

事务语句

begin; //开启
commit; //提交
rollback; // 回滚操作

索引

查看索引

show index from 表名;

创建索引

create index indexName on areas(title(20));  

删除索引

drop index [indexName] on 表名;  

执行时间

  • 开启执行时间监测: set profiling=1;
  • 执行语句
  • 显示监测结果 : show profiles;

python数据库操作

每一个python会话都是一次事务

常用类

Connec类

connection = connect(host,port,db,user,passwd,charset)

connection对象的方法

close() 关闭连接
commit() 事务提交,所以需要提交才会生效
rollback() 事务回滚,放弃之前的操作
cursor() 返回Cursor对象,用于执行sql语句并获得结果  

Cursor

执行SQL语句

cursor1=connection.cursor()   // 调用cursor方法 返回一个cursor对象    

cursor对象的常用方法

execute(operation ,[ parameters ]) //执行语句,返回受影响的行数
fetchone() //获取查询结果集的第一个行数据,返回一个元组
fetchall()  //获取查询结果集的所有行,一行构成一个元组,返回一个大元组

增删改查

import mysqldb
try:
    connection=MySQLdb.connect(host='localhost',port=3306,db='python3',user='root',passwd='***',charset='utf8')
    cursor1=connection.cursor()
    sql='SQL语句增删查改'
    count=cs1.execute(sql)
    connection.commit()
    cursor1.close()
    connection.close()
except Exception,e:
    print (e.message)

参数化

防止SQL注入

from MySQLdb import *
try:
    name = raw_input('请输入一个名字')
    connection = connect(host='localhost',port=3306,db='Python3',user='root',passwd='***',charset='utf8')

    #sql = 'insert into students(name) values("小乖巧")'
    #sql = 'update students set name='乖巧' where id=3'
    #sql = 'delete from students where id = 3'

    sql = 'insert into students(name) values(%s)'
    cursor1.execute(sql,[name])  
    connection.commit()
    cursor1.close()
    connection.close()
except Exception,e:
    print (e.message)

封装

class MYSQL:
    def __init__(self,host,port=3306,db,user,passwd,charset='uft8'):
        self.host = host
        self.port = port
        self.db = db
        self.user = user
        self.passwd = passwd
        self.charset = charset
    def open(self):
        self.connection = connect(host=self.host,port=self.port,db=self.db,user=self.user,passwd=self.passwd,charset=self.charset)
        self.cursor = self.connection.cursor()
    def close(self):
        self.cursor.close()
        self.connection.close()
    def curd(self):
        try:
            self.open()
            self.cursor(sql,param)
            self.commit()

            self.close()
        except Exception,e:
            print(e.message)
    def all(self,sql,param=[]):
        try:
            self.open()
            self.cursor(sql,param)
            result = self.cursor.fetchall()
            self.commit()

            self.close()
            return result
        except Exception,e:
            print(e.message)

5/13/2018 9:57:42 PM

您可能感兴趣的文档:

--结束END--

本文标题: MySQL第三天

本文链接: https://lsjlt.com/news/43149.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 第三天MYSQL
    第三天MySQL学习 :分组函数、分组查询、连接查询(等值连接、非等值连接、自连接) 2020/5/6 分组函数:(分组函数用作统计使用,又称聚合函数、统计函数或组函数)  #sum(求和)、avg(平...
    99+
    2021-10-26
    第三天MYSQL
  • MySQL第三天
    MySQL第二天 关键词:分组聚合 自关联 物理上一张表,逻辑上是两张表 create table areas( id int primary key, atitle varchar(20)...
    99+
    2024-04-02
  • Python第三天
    python操作文件之读 打开后如何关闭 python操作文件默认动作是读 在打开文件时有时候需要转义 打开文件时文件绝对路径转义方法 相对路径打开文件 非文字类型的文件读操作rb 按行读取 将每一行当成列表的每一个元素 大...
    99+
    2023-01-31
    Python
  • Flask入门第三天
      一、数据库操作   1,orm orm(object-Relation Mapping),对象-关系映射,主要实现模型对象到关系数据库数据的映射。 优点: - 只需要面向对象编程, 不需要面向数据库编写代码. - 对数据库的操作...
    99+
    2023-01-31
    门第 Flask
  • python-selenum3 第三天基
    打开网页并验证 #验证网页 #打开火狐 driver = webdriver.Firefox(executable_path = "d:\\geckodriver") #将地址赋值给变量fURL fURL = "https://www.ba...
    99+
    2023-01-31
    天基 python
  • python3第三天(运算符)
    python直接以下运算符:    算术运算符    比较(关系)运算符    赋值运算符    逻辑运算符    位运算符    成员运算符    身份运算符    运算符优先级算术运算符:    + 加    - 减    * 乘   ...
    99+
    2023-01-31
    运算符
  • 第六天MySQL
    DDL语言库与表的管理(创建、修改、删除)、一些常见的数据类型(整形、浮点|定点、日期,字符)   2020 5/9   二十二、DDL(数据定义语言)->用于库和表的管理 一、 库的管理 a)    ...
    99+
    2021-10-26
    第六天MySQL
  • 第一天MySQL
    MySQL学习笔记   2020/5/4 一、 数据库的相关概念 数据库的好处 1   能够永久性的保存数据,实现数据持久化 2   可以实现结构化查询,方便管理   2.数据库相关概念 1数据库(DB->database):...
    99+
    2020-05-20
    第一天MySQL
  • 第二天MySQL
    SQL条件查询、排序查询、一些常见函数 2020/5/5 一、 DQL条件查询 语法:(执行顺序已标出) SELECT      查询列表                      3 FORM...
    99+
    2021-02-10
    第二天MySQL
  • 第五天MYSQL
    分页查询、联合查询、DML(修改、删除、插入语句) 2020 5/9   十九、分页查询 应用场景:当要显示的数据,一页显示不全,需要分页提交sql请求 语法:(执行顺序已标出)          SE...
    99+
    2021-11-05
    第五天MYSQL
  • 第四天MySQL
    第四天MySQL 连接查询(内连接、外连接、交叉连接)(sql99版本下) 子查询: select 后面(标量子查询) from 后面(表子查询) where 或having后面(标量子查询...
    99+
    2020-08-04
    第四天MySQL
  • 第22天 常用模块三
    介绍的模块 logginghashlib  模块一:logging 人生三问 什么是日志  对每天所发生的事情做的记录就是日志。 为什么要用日志  日志记录了我们程序每天发生了什么事情,这个对于我们程序的维护有很大的帮助。例如每天都...
    99+
    2023-01-30
    模块 常用
  • python第三天(list,元组,di
    1.list 列表 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。 列表的数据项不需要具有相同的类型 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示: list1 = ['phy...
    99+
    2023-01-30
    python list di
  • 我的python学习--第三天
    第三天  1:列表及Python基础回顾  2:字典 列表字典生成式及应用场景  3:字符串 字典字符串转换及应用场景  4:文件操作 文件字典转换及应用场景  5:总结基础数据结构的知识脑图 -- 增删查改1、列表的操作:  help(l...
    99+
    2023-01-31
    python
  • MySQL第三课
    首先创建一个数据库: CREATE DATABASE ku; Query OK, 1 row affected 查看一下是否有此数据库: SHOW DATABASES; +--------------------+| Database   ...
    99+
    2018-10-18
    MySQL第三课
  • 【C++笔试强训】第三十天
    🎇C++笔试强训 博客主页:一起去看日落吗分享博主的C++刷题日常,大家一起学习博主的能力有限,出现错误希望大家不吝赐教分享给大家一句我很喜欢的话:夜色难免微凉,前方必有曙光...
    99+
    2023-09-03
    c++ java 数据库
  • 学习python的第三天(变量)
    一.关于python 1.交互式 说一句解释一句 2.命令行式 1.编写文件并且保存 2.打开python解释器,在pyrhon中打开文本,读入内存(python打开的时候,翻译不是瞬间) 3.python解释文本 注意:第二阶段相当于...
    99+
    2023-01-31
    变量 python
  • 我的python学习--第十三天
    nginx + uwsgi + flask一、安装1、安装uwsgi[root@yaoliang day_13]# wget http://projects.unbit.it/downloads/uwsgi-2.0.4.tar.gz [ro...
    99+
    2023-01-31
    第十三天 python
  • 使用sysbench压力测试MySQL(三)(r12笔记第6天)
      昨天使用gdb调试MySQL中事务临界状态的时候,发现其实有些场景可能比我想得还要复杂一些,所以我在昨天的测试中结尾也是快快扫过,但是表明了意思即可。这一点上我在后面会把Oracle的临界...
    99+
    2024-04-02
  • Python 学习 第三天 课后总结:
    PYTHON学习第三天课后总结: 1,注释:就是对代码起到说明注解的作用。      注释分为单行注释与多行注释。       单行注释:只注释一行代码在需要注释的所在行的行首使用#号来注释此行,注意#与代码之间需要加一个空格    ...
    99+
    2023-01-31
    课后 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作