MYSQL的学习笔记

数据库的基本操作
     1.创建数据库:Crete database 数据库名;
在创建数据库表之前,使用use 数据库名m;之后创建数据库。
      2.创建数据库表:create table 表名(字段名 数据类型 约束条件);
 3.查看数据表结构 :desc 表名; 和show create table 表名 \g
 
 4.约束条件;主键约束   primary key
            非空约束   not null
唯一约束     unique
默认约束       default
设置属性值的自增   auto_increment
 5.修改数据表;修改表名 alter table  表名 rename 新表名
                    修改字段名  alter table  表名 modify 字段名 数据类型
                     修改数据类型  alter table 表名 change 旧字段名  新字段名 数据类型
                    添加字段  alter table 表名 add 字段名 数据类型 约束条件 firsT/after 字段名
                     删除字段  alter table 表名 drop 字段名
                    更改表的存储引擎  alter table 表名 engine=存储引擎
        总结:对表结构的修改:alter table 表名 modify 等等;
数据类型和运算符
数据类型:字符串型,数值型,日期时间型
1.整型;tinyint smallint mediumint int bigint.
2.浮点型;float DOUBLE  decimal.
3.日期时间型;year time date datetime  timestamp.
4.文本字符串;char varchar tinytxet text mediumtext longtext enum set .
mysql函数
abs()  sqrt() ceil() ceiling() floor() rand() round()
 查询数据和插入更新删除
 创建数据库表:create  database 数据库名; 
 打开数据库:use 数据库名; 
 新建数据表:create 表名 (字段名 数据类型 );
 {
 数据类型: 字符串型,数值型,日期时间型
 1.整型;tinyint smallint mediumint int bigint.
 2.浮点型;float DOUBLE  decimal.
 3.日期时间型;year time date datetime  timestamp.
 4.文本字符串;char varchar tinytxet text mediumtext longtext enum set .
 约束条件 :主键  primary key  
            唯一主键   unique 
非空约束  not null 
默认约束 default 默认值
外键   constraint  外键名 foreign key (字段名) references  主键名 主键列;
            属性值自增  auto_increment
查看数据表结构:desc 表名 
                show create table  表名 
修改数据表 :修改表名 alter table 表名 rename 新表名
             修改字段名  alter table 表名 change 字段名 新字段名 数据类型
             修改数据类型  alter table 表名 modify 字段名 数据类型 
添加字段 alter table 表名 add 字段名 数据类型(first /after )
             删除字段 alter table 表名  drop 字段名  
             更改表的存储引擎 alter table 表名 engine =存储引擎             删除外键约束 alter table 表名 drop foreign key 外键约束名
基本查询数据 select 字段名 from 表名 (where
                                      gropy by having  with rollup   
 order by  
 limit 
 distinct
连接查询   内连接   select 字段名 from  表名1 inner join 表名2  on 表名1.字段=表名2.字段;
           左连接   select 字段名 from  表名1 left outer join 表名2  on 表名1.字段=表名2.字段;
  右连接   select 字段名 from  表名1 right outer join 表名2  on 表名1.字段=表名2.字段;
  * 左连接就是所要查询的字段结果包含所有左表的字段
子查询(嵌套查询)   ( any(some)
                     all 
            exists (exists 和条件表达式一起使用,如果exists后面的查询语句返回至少一条记录,
则exists结果为ture 此时外层查询语句将进行查询,not exists 与之相反。)
in )
合并查询结果 select 字段名 from 表名 查询条件 union(all)select 字段名 from 表名 查询条件
注意:两个表对应的列数和字段名必须相等。不使用all,结果删除重复的记录。 
]  
 }
 插入数据表:insert into 表名(字段名)values (所要插入的数据 );
 更新数据:updata 表名 set  字段=值 条件;
 删除数据:delete from 表名 条件;
 
 索引 
 优点:创建唯一索引,保证数据库表的每一行数据的唯一性,大大加快查询速度,在事项数据的参照完整性方面,可以加速表和表之间的连接
 在使用分组和排序字句进行数据查询,也可以减少查询中分组和排序的时间。
 普通索引   index(字段名):最基本的索引类型,没有唯一性的限制,只是为了加快对数据的访问速度
 唯一索引   unique idenx 索引名(字段)索引值必须是唯一的,但允许有空值,减少查询缩影操作的执行时间,尤其是对庞大的数据表。
 单列索引    一个表可以有多个索引
 组合索引    多个字段上创建一个索引,查询时遵循最左前缀,只有查询符合这样的最左前缀时才能使用索引
 全文索引    fulltext 可以用于全文搜索,只用MYISAM存储引擎支持fulltext 索引 并且只为char varchar text 
 空间索引     spatial 必须在MYISAM类型的表中创建,且空间类型的字段必须为空,
 
 在已经存在的表上创建索引
 alter table 表名 add index 索引名 (字段名(索引长度))
 create index 索引名 on 表名(字段名);
 
 alter table 表名 drop index 索引名;

 drop index 索引名 on  表名

创建存储过程和函数
 create procedure 存储过程的名称()begin 存储过程体 end;
 每次调用都会执行存储过程体。
 
 创建存储函数
 create 存储函数名称 (参数列表)
 returns 返回值类型
 return (函数体);
 
 变量的使用
 定义变量:declare 变量名 变量类型 default 默认值;
 为变量赋值:set 变量名=值;
 
 光标的使用
 声明光标:declare 名称 cursor for for 查询语句;
 打开光标:open 名称;
 使用光标:fetch 名称 into 将光标中查询出的结果存入改参数中;
 关闭光标;close 名称;
 
 流程控制的使用(case loop leave iterate repeat while )
 
 调用存储过程:call 名称(参数);
 调用存储函数:select名称(参数);
 
 
 视图
 视图的含义:视图是虚拟表,是从数据库中一个或多个表中导出的表,
 create [or replace] view 视图名 as select语句
 create view 视图名(自己所定义的列名) as select 语句
 
 desc 视图名;
 show create view 视图名 \G
 show table status like ‘视图名’\G
 
 修改视图和创建视图是一样的。
 alter view 视图名 as select语句
 
 updata 视图名 set 字段=值;
 
 删除视图 drop view if exists  视图名;
 
 
 MYSQL触发器
 和存储过程一样,都是嵌入到mysql的一段程序,触发器是由时间来触发某个操作,这些事件包括insert update delete 
 创建触发器 
 
 创建只有一个执行语句的触发器
 create trigger 触发器名称 标识触发时机(before/after )标识触发事件(insert update delete)on标识触发器的表名 for each 触发器执行语句;

本文讲解了mysql的相关内容,更多内容请关注创想鸟。

相关推荐:

MySQL数据库多表操作

MySQL数据库单表查询

Oracle数据库输出输入

以上就是MYSQL的学习笔记的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/384160.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月6日 12:43:37
下一篇 2025年11月6日 12:45:35

相关推荐

  • Python中如何使用MySQL连接器?

    在python中使用mysql连接器可以通过以下步骤实现:1. 安装mysql连接器:pip install mysql-connector-python。2. 编写代码连接数据库,使用import mysql.connector,并设置连接参数。3. 创建游标对象,执行sql查询,并处理结果。4.…

    2025年12月14日
    000
  • Python中如何定义异步上下文管理器类?

    在python中定义异步上下文管理器类需要实现__aenter__和__aexit__两个方法。1.__aenter__方法在进入上下文时被调用,用于异步操作的初始化。2.__aexit__方法在退出上下文时被调用,用于资源释放和异常处理。使用异步上下文管理器可以确保资源在异步环境下被正确管理和释放…

    2025年12月14日
    000
  • 如何在Python中使用Pandas读取数据?

    pandas是读取数据的首选工具,因为它能高效处理大数据并提供丰富的操作功能。1)读取csv文件:使用pd.read_csv(‘data.csv’)。2)读取excel文件:使用pd.read_excel(‘data.xlsx’, sheet_name…

    2025年12月14日
    000
  • 怎样在Python中创建Django项目?

    要在python中创建一个django项目,按照以下步骤操作:安装django:使用命令pip install django,建议使用虚拟环境。创建项目:运行django-admin startproject myproject。创建应用:进入项目文件夹后,运行python manage.py st…

    2025年12月14日
    000
  • Python中如何更新数据库记录?

    在python中更新数据库记录的方法包括使用sql的update语句和python的数据库连接库。具体步骤如下:1. 连接到数据库,使用sqlite3.connect()方法。2. 执行update语句,使用cursor.execute()方法。3. 提交事务,使用conn.commit()方法。4…

    2025年12月13日
    000
  • 怎样在Python中插入数据到数据库?

    在python中插入数据到数据库的步骤包括:1. 选择数据库系统(如sqlite)并连接;2. 创建表;3. 插入数据。高效插入数据的方法有:1. 使用批量插入(executemany)提高性能;2. 合理使用事务管理确保数据一致性;3. 通过try-except块处理错误;4. 使用参数化查询防止…

    2025年12月13日
    000
  • Python在数据库操作方面有哪些应用?如何连接数据库?

    python在数据库操作方面的应用包括数据分析和处理、web应用的后端开发、数据科学与机器学习、自动化任务。连接数据库的方法包括:1. 连接mysql数据库,使用mysql-connector-python库。2. 连接postgresql数据库,使用psycopg2库。3. 连接sqlite数据库…

    2025年12月13日
    000
  • Python中数据存储的形式有哪些

    本文将为您深入探讨python中数据存储的各种形式,内容实用,值得参考,希望能帮助您在阅读后有所收获。 Python 数据存储形式 Python提供了多种数据存储方式,以满足不同应用场景的需求。以下是主要类型及其应用场合: 内存数据存储 变量:用于临时存储数据,适用于程序运行期间的数据操作。列表:一…

    2025年12月13日
    000
  • 怎么用python爬取网站

    本文将详细介绍如何使用python来抓取网站内容,希望能给大家带来实用的参考,助您在学习后有所收获。 Python抓取网站的步骤指南 1. 选用合适的工具库 BeautifulSoup:用于解析HTML和XML文档Requests:用于发送HTTP请求Selenium:用于控制浏览器并进行交互操作 …

    2025年12月13日
    000
  • Python爬取数据存入MySQL的方法是什么

    本文将详细介绍如何使用Python从网络中获取数据并将其存储到MySQL数据库中。希望通过本文的分享,能为大家提供有用的参考,帮助大家在数据处理方面有所收获。 Python爬取数据并存储到MySQL数据库 引言 在数据分析和挖掘领域,从各种在线资源中提取和存储数据是至关重要的任务。Python凭借其…

    2025年12月13日
    000
  • python中SQLAlchemy框架有哪些功能

    本文将为您全面介绍python中sqlalchemy框架的多种功能,希望这些信息对您有所帮助,助您在编程学习中更上一层楼。 SQLAlchemy框架的功能概览 SQLAlchemy是一款功能强大且灵活的Python ORM(对象关系映射)框架,提供了一系列全面的功能,用于与关系型数据库进行交互。 数…

    2025年12月13日
    000
  • python怎么存储和读取数据

    本文将为您详细介绍如何在python中存储和读取数据,希望这些内容对您有所帮助。 数据存储方法 文件存储: 通过Python内置的open()函数可以打开文件并进行写入操作。例如:with open(“myfile.txt”, “w”) as f: f.write(“Hello world!”) 关…

    2025年12月13日
    000
  • python爬虫的结果存储不到MySQL中怎么办

    本文将为您详细解读python爬虫数据无法存储到mysql数据库的解决方法。希望通过本文的指导,您能够找到有效的解决方案。 问题:Python爬虫数据无法存储到MySQL数据库 原因分析: 数据库连接错误:请核对数据库连接参数的准确性,包括主机名、端口号、用户名和密码。表不存在:确认目标表已在MyS…

    2025年12月13日
    000
  • Python数据存储的方法有哪些

    本文将深入探讨Python数据存储的多种方法,这些方法对于开发者来说非常实用,希望通过本文的分享,大家能有所收获。 Python数据存储方法概述 概述 Python提供了多种数据存储方法,适用于不同类型的数据和应用需求。从基本的数据结构到NoSQL和关系型数据库,Python提供了多种选择,以高效且…

    2025年12月13日
    000
  • python怎么读取oracle数据库数据

    本文将详细介绍如何使用python读取oracle数据库数据,提供多种实用方法,希望能帮助大家更好地处理数据。 使用 Python 读取 Oracle 数据库数据 概述 在数据科学和分析领域,利用Python访问Oracle数据库并处理数据是一项常见的任务。本文将探讨使用Python读取Oracle…

    2025年12月13日
    000
  • 在Django项目中,数据量达到几十万到一两百万条时,4核8G内存的服务器应选择什么样的缓存策略?

    Django+MySQL:百万级数据缓存策略优化 面对Django项目中几十万到百万级MySQL数据的访问压力,尤其在4核8G服务器环境下,选择合适的缓存策略至关重要。本文分析几种缓存方案,并推荐最佳实践。 缓存方案对比 几种常见的缓存方式及其在该场景下的适用性分析如下: 数据库缓存: 直接利用数据…

    2025年12月13日
    000
  • 在Django和MySQL处理大数据量时,如何选择最合适的缓存策略?

    优化Django+MySQL大数据应用的缓存策略 在Django与MySQL数据库结合的应用中,处理几十万到上百万条数据时,高效的缓存策略至关重要。本文将分析不同缓存方案,并推荐针对4核8G服务器环境下的最佳实践。 挑战与目标 项目环境:4核8G服务器,MySQL数据库,数据量几十万到百万级。目标:…

    2025年12月13日
    000
  • 如何高效处理定时抓取数据:去重和数据填充的最佳策略?

    定时抓取数据:巧妙解决去重和数据填充难题 本文探讨如何高效处理定时抓取数据,特别是如何确保数据完整性,即在每隔两小时的抓取任务中,每个时间点都有数据,并有效处理重复数据。 假设爬虫每两小时抓取一次数据,例如1点开始抓取。如果在1点03分获取数据,则将其归入1点的数据,方便后续图表制作。 关键在于处理…

    2025年12月13日
    000
  • MongoDB能否胜任企业级报表开发?

    MongoDB:企业级报表开发的理想选择吗? 近期,有开发团队计划使用Python和MongoDB构建原型系统,但在数据库选择上犹豫不决。他们的项目需求包括快速迭代、多字段和复杂的业务场景,因此倾向于MongoDB的灵活性。然而,他们担忧MongoDB在处理复杂的关联查询(例如生成企业报表)时的性能…

    2025年12月13日
    000
  • 为什么Sqlalchemy数据库连接无法正确关闭?如何解决这个问题?

    SQLAlchemy数据库连接的正确关闭方法及问题排查 在使用Python的SQLAlchemy库进行数据库操作时,确保数据库连接的正确关闭至关重要,以避免资源泄漏和性能问题。本文将分析一个常见的SQLAlchemy连接关闭问题,并提供解决方案。 以下代码片段展示了一个可能存在连接关闭问题的示例: …

    2025年12月13日
    000

发表回复

登录后才能评论
关注微信