数据库的操作

一、navicat连接本地MySQL
1.1.MySQL与navicat的安装
MySQL的安装见博文
链接: MySQL的安装
navicat的安装可以根据软件安装管家。

1.2.navicat连接本地数据库
在这里插入图片描述
点击页面左上角的连接,选择MySQL。
在这里插入图片描述
连接名随便取,主机、端口、用户名是默认的无需更改,密码是MySQL的密码。
输入上述信息后,测试连接
在这里插入图片描述
测试连接显示成功之后
在这里插入图片描述
点击确定。
在左边就有连接成功的数据库
在这里插入图片描述
至此,navicat就成功连接到了MySQL
二、建立数据库
在数据库里面添加表
点击local,右键,选择新建数据库。
数据库名称任取,这里作为演示,取名为test在这里插入图片描述
字符集选择为
在这里插入图片描述
排序规则选择
在这里插入图片描述
新建数据库成功
在这里插入图片描述
接下来在数据库里面新建一个表,点击表,右键新建表。在这里插入图片描述
然后根据自己需要,新建表。
下面是一个新建表的例子。
在这里插入图片描述
根据需要选择添加字段,插入字段和删除字段。
在这里插入图片描述
点击保存
在这里插入图片描述
按需取名并保存
在这里插入图片描述
点击对象
在这里插入图片描述
点击自己新建的表
在这里插入图片描述
可以手动给表添加数据
在这里插入图片描述
如果想继续添加,先点击对号,保存这一条
在这里插入图片描述
再点击加号,进行新增操作
在这里插入图片描述
在这里插入图片描述
同理添加完一条数据就要保存一次,否则无法进行新增或删除操作。
这里在点击对号保存之后,点击减号,可以进行删除操作。
在这里插入图片描述
手动对数据库进行增、删、改操作大概是这个样子,下面继续学习利用pycharm对数据库进行增、删、改操作。

三、利用pycharm对表进行增、删、改操作
pycharm的安装见博文
链接: pycharm安装
接下来新建一个工程项目,
点击file
在这里插入图片描述
选择new project,之后选择基本编译器,也就是安装的Python。并点击create进行创建。
在这里插入图片描述
连接MySQL需要添加pymysql这个包。具体的添加步骤为
点击settings
在这里插入图片描述
点击python解释器
在这里插入图片描述
点击左上角的小加号
在这里插入图片描述
搜索栏里面搜索pymysql
在这里插入图片描述
选中pymysql之后,点击左下角的安装包,然后等待一分钟以内。
该窗口的最下方会显示安装成功
在这里插入图片描述
至此,基本环境搭建成功。
在main.py里面写程序,完成对数据库的增、删、改操作。
首先定义一个类,初始化实例变量,并确定一些参数,用于连接到数据库。

import pymysql #导入包

#定义一个类
class TestClass():
    def __init__(self, host='localhost', user='root', password='123456ZYZzyz', database='test'):
        self.host = host
        self.user = user
        self.password = password
        self.database = database
# 这部分的host和user如果在navicat连接MySQL的过程中没有更改,那么这里也无需更改
# password和database根据自己的实际来

之后连接数据库

#连接数据库
def ConnectMysql(self):
    self.conn=pymysql.connect(
        host='localhost',
        user='root',
        password='*******',
        database='****'
    )

**部分仍然是根据自己的实际情况

创建游标对象执行SQL语句

#创建游标对象
self.cursor=self.conn.cursor()

self.conn.cursor() 是用于创建一个游标对象的方法调用。游标对象是与数据库交互的主要方式之一,有了游标对象可以执行 SQL 查询和操作数据库中的数据。在前面已经连接到数据库之后,则需要创建一个游标对象来执行SQL语句。游标对象提供了执行查询、插入、更新、删除等操作的方法,以及获取查询结果的能力。

创建表格,如果表格不存在的话创建一个表格

#创建表格
def CreateTable(self):
    self.cursor.execute('''
       CREATE TABLE IF NOT EXISTS users(
       id INTEGER PRIMARY KEY,
       name CHAR(255),
       age INTEGER(11)
       )
       )
    '''
    )

数据库操作之插入

#插入
def Insert(self):
    command = "insert into users(id,name,age) values (%d,%s,%d)"%(2,'B',28)
    print(command)
    self.cursor
    execute(command)
    #提交更改(事务)
    self.conn.commit()

查询

#查询
    def Find(self):

        sql = "select*from users WHERE name = 'B' "

        self.cursor.execute(sql)
        rest=self.cursor.fetchall()

        for i in rest:
          print(i)

更新

#更改
    def Update(self):
        sql = "UPDATE users SET age = %d WHERE name = '%s'" % (18, 'A')
        print(sql)
        self.cursor.execute(sql)
        self.conn.commit()

删除

#删除
    def Delete(self):
        sql="DELETE FROM users WHERE age = %d "%(28,)
        print(sql)
        self.cursor.execute(sql)
        self.conn.commit()

关闭游标和连接

#关闭游标和连接
def CloseMysql(self):
    self.cursor.close()
    self.conn.close()

主函数部分

if __name__ =='__main__':
    #类,创建实例化对象
    t = TestClass()
    #连接数据库
    t.ConnectMysql()

    # t.CreateTable()
    # t.Insert()
    # t.Find()
    # t.Update()
    # t.Delete()
    # t.CloseMysql()

接下来依次取消注释进行演示
Ctrl+?添加或者取消注释,然后手动去#时,要注意缩进问题,否则会导致程序报错。
创建一个新的表格。
取消对创建表格函数的注释

    t.CreateTable()
    # t.Insert()
    # t.Find()
    # t.Update()
    # t.Delete()
    t.CloseMysql()

未运行程序之前在这里插入图片描述
点击运行程序,在运行不报错的情况下,在navicat中进行刷新。(空白处,点击右键,最后一项刷新)
在这里插入图片描述
由pycharm中程序运行成功建立表格。
双击users打开表格
在这里插入图片描述
在这里插入图片描述
插入

    # t.CreateTable()
    t.Insert()
    # t.Find()
    # t.Update()
    # t.Delete()
    t.CloseMysql()

首先是按照前面的程序插入一条,也就是添加id为2,名字为B,年龄为28的
在这里插入图片描述
运行程序
在这里插入图片描述
未报错
对表格进行刷新
在这里插入图片描述
如果是一次添加多条数据
可以通过列表的方式进行添加

 #一次插入多条,那么可以采用列表的方法,下面定义insertduo
    def Insertduo(self):
        data_list = [
            [1, 'A', 5],
            [3, 'C', 18],
            [4, 'D', 32],
        ]

        for data in data_list:
            command = "insert into users (id, name, age) values (%d, '%s', %d)" % (data[0], data[1], data[2])
            print(command)
            self.cursor.execute(command)

        # 提交更改(事务)
        self.conn.commit()
 # t.CreateTable()
    # t.Insert()
    t.Insertduo()
    # t.Find()
    # t.Update()
    # t.Delete()
    t.CloseMysql()

点击运行并在表中刷新
在这里插入图片描述
在这里插入图片描述
查询
尝试把年芳18的找出来

 sql = 'select*from users WHERE age=18'
    # t.CreateTable()
    # t.Insert()
    # t.Insertduo()
    t.Find()
    # t.Update()
    # t.Delete()
    t.CloseMysql()

运行结果
在这里插入图片描述
同理,也可以根据id或名字进行查询
根据id进行查找
在这里插入图片描述
运行结果在这里插入图片描述
根据名字进行查找
在这里插入图片描述
运行结果
在这里插入图片描述
替换
比如说这里把A的年龄改为18(谁都想永远18)
在这里插入图片描述

   def Update(self):
        sql = "UPDATE users SET age = %d WHERE name = '%s'" % (18,'A')
        print(sql)
        self.cursor.execute(sql)
        self.conn.commit()
    # t.CreateTable()
    # t.Insert()
    # t.Insertduo()
    # t.Find()
    t.Update()
    # t.Delete()
    t.CloseMysql()

运行结果
在这里插入图片描述
在表格里面进行刷新
在这里插入图片描述
经过一番操作,A终于从81岁重返18岁。(开个玩笑,重点是了解数据库更改数据的操作)
删除
这里演示删除名字为D的
在这里插入图片描述
运行,并刷新表
在这里插入图片描述
在这里插入图片描述
同理,我们也可以根据年龄进行删除
在这里插入图片描述
运行并刷新
在这里插入图片描述
在这里插入图片描述
至此,数据库的增、改、删等基本操作已经演示完毕。恭喜各位从大白进阶为小白。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值