MySQL指令

数据库管理:

  • 查看已有数据库

    show databases;
    
  • 创建数据库

    create database 数据库名字 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    
  • 删除数据库

    drop database 数据库名字;
    
  • 进入数据库

    use 数据库名字;
    
  • 查看当前数据库中所有的数据表

    show tables;
    

数据表管理:

  • 创建表

    create table 表名称(列名称 类型,列名称 类型,列名称 类型,
    )default chartset=utf8;例子:create table tb1(id int auto_increment primary key,                name varchar(16) not null,     age int default 3
    )default charset=utf8;-- primary ket:主键(不允许为空,不允许重复),一般用于表示当前行的数据的编号-- auto_increment:内部维护自增-- not null:不允许为空、null:允许为空-- default 3:插入数据时设置默认值为3
    
  • 删除表

    drop table 表名称;
    
  • 查看表结构详细信息

    desc 表名称;
    

数据行操作

  • 新增数据

    insert into 表名(属性1,属性2) values(值1,值2);insert into 表名(属性1,属性2) values(值1,值2),(值,值),(值,值); -- 批量插入 行数据
    
  • 删除数据

    delete from 表名;delete from 表名 where 条件;
    
  • 修改数据

    update 表名 set 列=值;update 表名 set 列=值, 列=值;update 表名 set 列=值 where 条件;
    
  • 查询数据

    select * from 表名;select 列名,列名 from 表名 where 条件;
    
    create table tb3(id int not null auto_increment primary key,   username varchar(64) not null,password char(64) not null,email varchar(64) not null,    age tinyint ,salary decimal(10.2),ctime datetime)default charset=utf8;
    insert into tb3(name,password,email,age,salary,ctime)values("申晨哲","123","xxx@xx.com",19,1000.99,"2022-02-22 09:29:33");
    insert into tb3(name,password,email,age,salary,ctime)values("张三","123","xxx@xx.com",19,1000.99,"2022-02-22 09:29:33");
    insert into tb3(name,password,email,age,salary,ctime)values("李四","123","xxx@xx.com",19,1000.99,"2022-02-22 09:29:33");
    insert into tb3(name,password,email,age,salary,ctime)values("王五","123","xxx@xx.com",19,1000.99,"2022-02-22 09:29:33");
    insert into tb3(name,password,email,age,salary,ctime)values("赵六","123","xxx@xx.com",19,1000.99,"2022-02-22 09:29:33");create table admin(id int not null auto_increment primary key,   username varchar(64) not null,password varchar(64) not null,mobile varchar(64) not null
    )default charset=utf8;
    

常用数据类型

  • 整数

    • tinyint

      tinyint               -- 默认为有符号,-128 ~ 127
      tinyint unsigned     -- 无符号,0 ~ 255
      
    • int

    • bigint

  • 浮点数

    • float

    • double

    • decimal

      decimal(m,d)       -- m是数字总位数(负号不算),d是小数点后位数。最多位数 65 = ? + 30 ,存储会四舍五入
      
  • 字符串

    • char 定长字符串:只按固定长度存储(最大为255个字节),数据太长会报错(优点:查询速度更快)
    • varchar 变长字符串:数据多长就按多长存储(最大65535字节,/3=21844个汉字)
    • text 用于保存变长的大字符串,最多2**16-1=65535个字节。一般用于文章、新闻等长文本
    • mediumtext 2**24-1
    • longtext 2**32-1
  • 时间

    • datetime:YYYY-MM-DD HH:MM:SS
    • date:YYYY-MM-DD

利用Python操作数据库

创建数据:

import pymysqlwhile True:user = input("用户名:")if user.upper == 'Q':breakpwd = input("密码:")mobile = input("手机号:")# 1. 连接MySQLconn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd="123456", charset='utf8',db='mydb')cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)# 2.1 发送指令cursor.execute("insert into user(username,password,mobile) values('zhangsan','qwe123','16887988')")conn.commit()# 3. 关闭连接cursor.close()conn.close()——————————————————————————————————————————————————————————————————————# 2.2 发送指令sql = "insert into user(username,password,mobile) values(%s,%s,%s)"cursor.execute(sql,[user, pwd, mobile])conn.commit()# 2.3 发送指令sql = "insert into user(username,password,mobile) values(%(n1)s,(n2)%s,(n3)%s)"cursor.execute(sql,{"n1":user, "n2":pwd, "n3":mobile})conn.commit()

查询数据:

# 2. 发送查询指令
cursor.execute("select * from user where id > %s",[2, ])
data_list = cursor.fetchall()      // fetchall()获取的是 [字典,字典],无数据是空列表
for row_dict in data_list:          // fetchone()只获取符合条件的的第一条数据,是个字典,无数据是None
print(row_dict)

删除数据

# 2. 发送删除数据指令
cursor.execute("delete from user where id = %s",[3, ])
conn.commit()

修改数据

# 2. 发送修改数据指令
cursor.execute("update user set mobile = %s where id = %s",["18888888", 4,  ])
conn.commit()

注意:新增、删除、修改数据时,一定要记得conn.commit(),不然数据库没有数据

​ 查询时不需要,但是要fetchall()/fetchone()

​ 对SQL语句不要用Python的字符串格式化进行拼接(会被SQL注入),一定要用 execute + 参数

梅科尔工作室-MySQL学习笔记相关推荐

  1. 梅科尔工作室-Django学习笔记(二次学习)(3)

    本次学习的是如何用django实现前端鸿蒙OS登录 下面介绍一下本次的操作过程. 1.首先创立MySQL数据并将数据库导入到django当中 其中:导入数据库的操作: 2.配置urls 对应新建的pe ...

  2. 梅科尔工作室-Django学习笔记(二次学习)(1)

    学习网址: Django小白入门到实战教程(2021)_哔哩哔哩_bilibili 配置路由urls 创建app:在终端里输入python manage.py startapp web python ...

  3. 梅科尔工作室-深度学习第五讲 CNN-卷积神经网络

    目录 前言 1.计算机视觉 1.1. 计算机视觉分类 2. CNN 3. 卷积层 3.1. 什么是卷积 3.2. 动态卷积操作 4. 池化层 5.激活函数的作用 前言 本文记录梅科尔工作室深度学习培训 ...

  4. 梅科尔工作室——深度学习第五课

    CNN(卷积神经网络:Convolutional neural network) 一.计算机视觉的应用 cnn非常普遍地运用在计算机视觉当中(工作室也涉及了很多小牧,在医疗上更多一点) 二.计算机视觉 ...

  5. 梅科尔工作室深度学习第五课-CNN

    CNN解决了什么问题 在 CNN 出现之前,图像对于人工智能来说是一个难题,有2个原因: 图像需要处理的数据量太大,导致成本很高,效率很低 图像在数字化的过程中很难保留原有的特征,导致图像处理的准确率 ...

  6. 梅科尔工作室-深度学习-CNN

    目录 1.基本概念 2.cnn常见任务 3.cnn组成 3.1.输入层 3.2.卷积层 3.3.激活层 3.4.池化层 3.5.全连接层 4.AI Studio公开项目的展示 1.基本概念 卷积神经网 ...

  7. 梅科尔工作室-深度学习-SVM

    目录 1.svm介绍 1.1.svm概念 1.2.svm与knn的对比 2.svm算法原理 2.1.距离计算 2.2.目标函数 2.3.软间隔优化 2.4.核函数 3.百度飞桨已有公开项目的展示 1. ...

  8. 梅科尔工作室-深度学习第五节-CNN学习

    目录 1.什么是CNN(卷积神经网络) 2.卷积层与池化层 2.1卷积层 2.2池化层 3.卷积神经网络的输入与输出 4.卷积神经网络之层级结构 5.激活函数 6.计算公式 1.什么是CNN(卷积神经 ...

  9. 梅科尔工作室——深度学习第四课

    SVM第一阶段学习 一.SVM与KUN的对比 1.KUN 回顾上一节:kun叫做邻近算法(又叫分类算法),首先要有k值,因为k值决定了虚线圆圈的大小,即以要算的未知值为圆心,k的值为半径,画一个虚线圆 ...

最新文章

  1. c++17(6)-数学 函数
  2. 再译《A *路径搜索入门》之四
  3. Java开发面试高频考点学习笔记(每日更新)
  4. Bailian1182 POJ1182 食物链【并查集】
  5. 静态内容负载均衡的具体实现-续《几百元搞定大型网站》
  6. iOS开发基础 - UIDataDetectorTypes
  7. vc6.0怎么新建c语言项目
  8. w ndows7安不上HP1020,惠普1020打印机驱动程序
  9. 局域网桌面共享会议该如何实现屏幕共享?
  10. 大一c语言大作业实验报告,大一c语言实验报告
  11. 苹果电脑上堪称神器的几款软件
  12. java wmic_强大的命令行工具wmic
  13. 计算机分盘介质受写入保护,“介质受写入保护”的解决(适用于U盘或移动硬盘)...
  14. NLP之NLG入门理解
  15. 测试sd卡读写速度与判断是否是扩容的假货
  16. Windows10安装Golang环境
  17. “被骗”的1600万,QQ飞车多久能赚回来?
  18. vga分屏2个显示器_VGA多分屏聚合器和有趣的问题
  19. 【字节日常实习-前端凉经】
  20. vscode配置tpl文件关联html语言

热门文章

  1. vue项目全局配置微信分享_Vue 项目实现微信自定义分享
  2. 获取图片的创建修改时间
  3. 苹果手机专用蓝牙耳机有哪些?与iphone兼容性好的蓝牙耳机
  4. 苹果a13_苹果A13跑分出炉,今年依旧秒安卓
  5. Python绘制正二十面体
  6. Windows资源管理器连接 FTP 跳转到浏览器的解决方法
  7. python爬虫之微信公众号关注度排行榜
  8. linux手写涂鸦代码,canvas实现图片涂鸦功能(附代码)
  9. Python 细聊可以媲美 PS 的 PIL 图片处理库
  10. UE4 项目优化经验(性能、资源管理、打包等优化)