MySQL SELECT 语句详解(基础篇)
MySQL SELECT 语句详解(基础篇)
在数据库操作语句中,使用最频繁,也被认为最重要的是 SELECT 查询语句。之前的实验中,我们已经在不少地方用到了 SELECT * FROM table_name; 这条语句用于查看一张表中的所有内容。
而 SELECT 与各种限制条件关键词搭配使用,具有各种丰富的功能,这次实验就进行详细介绍。
基本的SELECT语句SELECT 语句的基本格式为:
1SELECT 要查询的列名 FROM 表名字 WHERE 限制条件;
如果要查询表的所有内容,则把 要查询的列名 用一个星号 * 号表示(实验2、3中都已经使用过),代表要查询表中所有的列。
而大多数情况,我们只需要查看某个表的指定的列,比如要查看employee 表的 name 和 age:
1SELECT name,age FROM employee;
数学符号条件SELECT 语句常常会有 WHERE 限制条件,用于达到更加精确的查询。WHERE限制条件可以有数学符号 (=,<,>,>=,<=) ,刚才我们查询了 name 和 age,现在稍作修改:
1SE ...
MySQL 挑战:搭建一个简易的成绩管理系统的数据库
MySQL 挑战:搭建一个简易的成绩管理系统的数据库
介绍现需要构建一个简易的成绩管理系统的数据库,来记录几门课程的学生成绩。数据库中有三张表分别用于记录学生信息、课程信息和成绩信息。
数据库表的数据如下:
学生表(student):学生 id 、学生姓名和性别
课程表:课程 id 和课程名
成绩表:成绩 id 、学生 id 、课程 id 和分数
服务器中的 MySQL 还没有启动,请注意 MySQL 的 root 账户默认密码为空。
目标1.MySQL 服务处于运行状态
2.新建数据库的名称为 gradesystem
3.gradesystem 包含三个表:student、course、mark;
student 表包含3列:sid(主键)、sname、gender;
course 表包含2列:cid(主键)、cname;
mark 表包含4列:mid(主键)、sid、cid、score ,注意与其他两个表主键之间的关系。
4.将上述表中的数据分别插入到各个表中
提示
建立表时注意 id 自增和键约束
每个表插入语句可通过一条语句完成
练习脚本内容
12345678910 ...
MySQL SQL 的约束(基础篇)
MySQL SQL 的约束(基础篇)
约束分类听名字就知道,约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。
在MySQL中,通常有这几种约束:
约束类型:
主键
默认值
唯一
外键
非空
关键字:
PRIMARY KEY
DEFAULT
UNIQUE
FOREIGN KEY
NOT NULL
建立含约束的表为了方便介绍这几种约束,我们先建立一个数据库。
注:如果你是从上一节直接进入本节进行学习的,请先删除上一节建立的数据库mysql_shiyan,删除语句为DROP DATABASE mysql_shiyan;。
当然不用你一行一行地输入命令搭建这个数据库,实验楼已经为你准备好了。首先打开 Xfce 终端,输入命令进入 /home/shiyanlou/Desktop 目录:
1cd Desktop
使用 git 命令将需要的数据文件下载到本地文件夹:
1git clone https://github.com/shiyanlou/SQL3
下载完成后,输入命令开启 MySQL 服务并使用 r ...
MySQL 创建数据库并插入数据(基础篇)
MySQL 创建数据库并插入数据(基础篇)
在使用实验楼 Linux 环境进行本次实验之前,先用以下两条命令打开MySQL 服务并使用 root 登录:
12345# 打开 MySQL 服务sudo service mysql start #使用 root 用户登录,密码为空mysql -u root
后续的实验都在 MySQL 的控制台输入命令进行操作。
新建数据库首先,我们创建一个数据库,给它一个名字,比如 mysql_shiyan,以后的几次实验也是对 mysql_shiyan 这个数据库进行操作。
语句格式为 CREATE DATABASE <数据库名字>;,(注意不要漏掉分号 ;),前面的 CREATE DATABASE 也可以使用小写,具体命令为:
1CREATE DATABASE mysql_shiyan;
创建成功后输入命令 show databases; (注意不要漏掉;)检查一下:
在大多数系统中,SQL 语句都是不区分大小写的,因此以下语句都是合法的:
1234CREATE DATABASE name1;create database ...
MySQL SQL 介绍及 MySQL 安装(基础篇)
MySQL SQL 介绍及 MySQL 安装(基础篇)
数据库和 SQL 概念数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它的产生距今已有六十多年。随着信息技术和市场的发展,数据库变得无处不在:它在电子商务、银行系统等众多领域都被广泛使用,且成为其系统的重要组成部分。
数据库用于记录数据,使用数据库记录数据可以表现出各种数据间的联系,也可以很方便地对所记录的数据进行增、删、改、查等操作。
结构化查询语言(Structured Query Language)简称 SQL,是上世纪 70 年代由 IBM 公司开发,用于对数据库进行操作的语言。更详细地说,SQL 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库脚本文件的扩展名。
MySQL 介绍MySQL 是一个 DBMS(数据库管理系统),由瑞典 MySQLAB 公司开发,目前属于 Oracle 公司,MySQL 是最流行的关系型数据库管理系统(关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据)。由于其体积小、速度快、总 ...
Django 表单
Django 表单
上手表单处理实例有时候我们需要在前端用 get 或 post 方法提交一些表单数据。在后端处理数据时,我们需要接受这些数据。本章就来介绍 Django 如何对表单数据进行接收操作的。
为了完成实验,我们先来写一个网页,其中用到 html 表单的知识。首先我们来写一个计算 a 和 b 之和的简单应用。在 learn 的 templates 目录之下,保存一个名为 index.html 的模板:
1234567891011121314<!DOCTYPE html><html><body><p>Please input 2 numbers:</p><form action="/add/" method="get"> a: <input type="text" name="a"> <br> b: <input ty ...
Django 模型(model)与数据库
Django 模型(model)与数据库
初步使用模型Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 Sqlite3、MySQL、PostgreSQL 等数据库,只需要在 settings.py 中配置即可,不用更改 models.py 中的代码,丰富的 API 极大的方便了使用。
我们继续沿用之前创建的 learn 这个 app 进行实验。修改 learn 中的 models.py 如下所示:
12345from django.db import modelsclass Person(models.Model): name = models.CharField(max_length=30) age = models.IntegerField()
这段代码中,我们新建了一个 Person 类,继承自 models.Model,一个人有年龄和姓名。这里用到了两种 Field,更多的可以查看本教程最后的链接处。
然后来执行同步数据库操作(我们使用默认的 sqlite3数据库,无需任何其他配 ...
Django 模板(template)
Django 模板(template)
添加模板文件继续使用之前的 dj4 项目,我们在 learn 这个 app 中添加功能。开始编辑其 views.py 文件,增加一个 home 方法:
123456789$ vim learn/views.pyfrom django.shortcuts import renderfrom django.http import HttpResponsedef index(request): return HttpResponse(u'Hello Shiyanlou!')def home(request): return render(request, 'home.html')
然后我们在 learn 目录下增加一个 templates 目录,用来放置模板文件。在 Django 的默认配置中,模板文件放在对应 app 的 templates 的目录中。所以我们新建的这个目录中存放的模板文件,Django 会自动在此查询文件。
新建 templates 目录,创建 home.html 文件:
123 ...
Django 视图与链接路由
Django 视图与链接路由
创建新项目使用之前已经安装的 Django 1.8.13 建立一个新的 Django 项目,并命名为 dj4。
1$ django-admin.py startproject dj4
运行后成功的话,可以看到如下的目录结构:
1234567.├── dj4│ ├── __init__.py│ ├── settings.py│ ├── urls.py│ └── wsgi.py└── manage.py
我们会发现,在新建的 dj4 目录中,其中还有一个 dj4 目录,这个子目录是 dj4 中的一些项目配置 settings.py 文件、总的链接路由 urls.py 以及部署服务器时用到的 wsgi.py 文件,init.py 是 Python 包的目录结构基础文件,与包的调用有关。
在当前的 dj4 目录下,新建一个应用,并命名为 learn。
1$ python3 manage.py startapp learn
成功后观察一下新创建的 learn 目录结构。
12345678.├── admin.py├── __init__.py├── ...
Django 基本命令
Django 基本命令
新建一个 Django Project这个命令我们在第一章中已经使用,可以翻看之前 HelloWorld 项目建立来实践:
1$ django-admin.py startproject project-name
注意,在 Windows 系统下,如果报错,尝试用 django-admin 代替 django-admin.py。
在输入完该条指令后,系统会在当前目录增加一个项目名目录,并且其中存有最基础的 Django 项目文件。
新建 app同样,在第一章中已经使用,可以翻看之前建立 Hello app 的操作流程来实践:
1$ python3 manage.py startapp app-name
另有一种写法:
1$ django-admin.py startapp app-name
一般一个项目会存有多个 app ,当然通用的 app 也可以在多个 Django 项目中通用这个 app。
同步数据库12$ python manage.py makemigrations$ python manage.py migrate
这种方法可以创建表,当你在 mod ...