Python----操作MySql数据库1

不想你离开。 提交于 2020-02-26 18:06:26

Python学习之路,点击有全套Python笔记

数据库简介

数据库分类:

-关系型数据库:指采用了关系模型来组织数据的数据库。关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

非关系型数据库:指非关系型的,分布式的,且一般不保证遵循ACID原则的数据存储系统。

  • 非关系型数据库以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,不局限于固定的结构,可以减少一些时间和空间的开销。
  • 有四种类型
  1. 文档型:类似Jason
  2. key-value型:这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。
  3. 列存储数据库:这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。
  4. 图形数据库:图形结构的数据库同其他行列以及刚性结构的SQL数据库不同,它是使用灵活的图形模型,并且能够扩展到多个服务器上。
MySQL简介

关系型数据库

MySQL安装及配置

下载网址https://downloads.mysql.com/archives/installer/
也可以下载一些集成的环境,我使用的是phpstudy,里面随便点点玩玩,然后配合NAVICAT可视化一起玩耍
在这里插入图片描述

语法基础
-- 新建数据库
CREATE DATABASE `school`;

-- 使用数据库
USE `school`;

-- 创建表
-- id:学生的ID
-- name:学生的姓名
-- nickname:学生的昵称
-- sex:性别
-- in_time:入学时间
CREATE TABLE `students` (
	`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`name` VARCHAR (20) NOT NULL,
	`nickname` VARCHAR (20) NULL,
	`sex` CHAR (1) NULL,
	`in_time` DATETIME NULL
);
-- 插入 
INSERT INTO `students` (`name`, `nickname`, `sex`, `in_time`) VALUES( '张三', '三哥', '男', NOW());
INSERT INTO `students` (`name`, `nickname`, `sex`, `in_time`) VALUES( '张三', '三哥', '男', NOW());
INSERT INTO `students` (`name`, `nickname`, `sex`, `in_time`) VALUES( '张三', '三哥', '女', NOW());
-- 查询
-- ORDER BY `表头` DESC(降序) ASC(升序) 
-- LIMIT 从哪开始查,查几条
SELECT * FROM `students` WHERE `sex`='男' ORDER BY `id` DESC LIMIT 1,1;
SELECT * FROM `students` WHERE `sex`='女';
-- 修改
UPDATE `students` SET `sex` = '女', `nickname` = '没有昵称' WHERE `sex` = '男';
UPDATE `students` SET `sex` = '男'  WHERE `id`>6;
-- 删除数据
DELETE FROM `students` WHERE `sex` = '男';
实战,新闻表设计
CREATE DATABASE `news`;
USE `news`;
-- ID:新闻的唯一标识
-- title:新闻的标题
-- content:新闻的内容
-- created_at:新闻添加的时间
-- types:新闻的类型
-- images:新的缩略图
-- author:作者
-- view_count:浏览量
-- is_valid:删除标记
CREATE TABLE `news`(
	`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`title` VARCHAR(200) NOT NULL,
	`content` VARCHAR(200) NOT NULL,
	`created_at` DATETIME NULL,
	`types` VARCHAR(200) NOT NULL,
	`images` VARCHAR(300) NOT NULL,
	`author` VARCHAR(200) NOT NULL,
	`view_count` INT DEFAULT 0,
	`is_valid` SMALLINT DEFAULT 1
);
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!