mysql的入门使用
既然我们要使用mysql就要知道为什么要使用mysql
持久化把数据保到可掉电式存储设备中以供之后使用,数据持久化意味着将内存中的数据保存到硬盘上加以“固化”,而持久化的实现过程大多通过各种关系数据库来完成。
持久化的主要作用是将内存中数据存储在关系型数据库中,当然也可以直接存储在磁盘文件,XML数据文件中。
数据库的概念
数据库就是字面意思数据的存储仓库本质是文件系统保存了一系列有组织的数据
一般我们会创建一个数据库存储相关数据
数据库又分为关系型数据库和非关系型数据库
关系型数据库有oracle sqlserver mysql sqlite
非关系型数据库又有MongoDB redis(内存键值对)
指令(所有的操作后面要加";")
作为新手我们应该掌握的就是一些基础指令
show databases;
展示所有的数据库
create database 数据库名 charset=utf8;
创建数据库
drop database 数据名;
删除数据库
select database();
查看当前使用的数据库
use 数据库名;
使用数据库
在数据库中又有一系列的数据表
对表又有一些增删改查的操作
show tables;
显示所有表
create table 表名( 列名 类型 约束1 约束2 约束3, 列名 类型 约束1 约束2, 列名 类型 约束1 );
desc 表名
查看表结构
drop table 表名
删除数据表
修改表
alter table 表名
drop 列名;
add 列名 类型 约束1 约束2;
change 原列名 新列名 类型 约束1 约束2;
这些数据类型的约束又有好多选项
主键不是必须的但是一般都有
某些临时表或中间表,只用于存储临时数据或在数据处理过程中使用,可能不需要主键。这些表的数据可能是短暂的,并且在特定的操作完成后就可以被删除。
非常小的表,其中的数据量非常少,并且可以通过其他方式确保数据的唯一性,可能不需要主键。例如,一个只包含两个固定值的表,可能不需要主键来区分不同的行。
没有主键的影响
如果一个表没有主键,可能会带来以下一些问题:
数据的唯一性难以保证,可能会出现重复的数据行。
在与其他表建立关系时,可能会比较困难,因为没有明确的标识来关联其他表的外键。
数据检索的效率可能会降低,特别是在没有合适的索引的情况下。
对于数据库来说最主要的操作就是CURD(增删改查)
where的用法
以上便是数据库的基本操作
还有些函数
我们需要下载可视化工具Navicat Premium
我下载的是Navicat Premium 15
这个没有什么安装教程一直点击next就好了完成后我们打开连接
选择创建自己的数据库
右键创建数据库
输入数据库名字选择utf8编码字符
然后双击使用数据表
再右键新建表
这就是你所创建的数据表了
对表右键有设计表
选择设计表可以添加字段以及更改数据类型选择索引和外键设置完之后点击保存
这样我们的数据表就建好了
然后打开我们的pycharm
再pycharm的终端中下载pymysql
import pymysql
# 1.链接数据库
con = pymysql.connect(user='gyh', password='123456')
cur = con.cursor()
row = cur.execute('show databases')
for data in cur.fetchall():
print(data)
print(row)
cur.execute('use python2407')
cur.execute('show tables')
for i in cur.fetchall():
print(i)
cur.scroll(0, mode="absolute")
cur.execute('show tables')
for j in cur.fetchall():
print(j)
# 关闭连接
cur.close()
con.close()
con = pymysql.connect 连接数据库
cur = con.cursor() 创建游标
cur.execute()执行方法(括号内为sql语句)
cur.executemany()执行多条
con.commit()保存数据
这些执行的前提是数据库中有表和数据库