Mysql数据库操作复习,增删改查
Mysql数据库
Apache(服务员) php(大厨) mysql(冰柜)

Mysql是瑞典的mysqlAB公司开发的一款中小型关系型数据库管理系统。
MysqlAB公司在2008年被Sun(java公司)给收购了
2009年Sun(java公司)被Oracle收购。
Mysql是一款免费数据库,体积小,运行速度快。
主流数据库(SQLserver微软 Oracle甲骨文 DB2(IBM) mysql)
Mysql数据库数据库量一般保持在1000万以内,速度活性可以保持。
Mysql是一款数据库软件,需要被安装在服务器里边。
【数据存储及与mysql数据库系统的关系】
数据如何存放到数据库里边
图书管理信息(图书、借还信息、作者信息)
有一本图书,图书的名字是“php入门”,价格是“45元”,出版社“铁道出版社”,作者“孙书华”,该信息需要被存放到我们的数据库里边。
Php入门 45元 铁道出版社 孙书华(类似在记事本里边存放内容)
在记事本里边存放图书,图书的查询、修改、删除、增加都不容易操作


【访问数据库】

Php流程控制、函数
Mysql基本操作(数据库和数据表的创建和删除)
【mysql操作回顾】
1. 登陆数据库
mysql -h主机名 -u用户名 -p密码
2. 查询当前数据库管理系统有多少数据库存在
show databases;
3. 进入具体数据库/使用具体数据库
use 数据库名字;
4. 查询当前数据库数据表的情况信息
show tables;
5. 创建数据库
create database 库名;
6. 删除数据库
drop database 库名;
7. 创建数据表book
书名name 价格price 出版社publish 作者author
create table book(
字段
类型,
字段 类型,
)
数据类型:int整型 varchar(长度)
create table book(
name
varchar(32),
price
int,
publish
varchar(64),
author varchar(16)
);
create table author(
name
varchar(32),
age
int
);
8. 删除数据表
drop table 表名;
mysql> #查看数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| library |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> #查看数据表
mysql> show tables;
+-------------------+
| Tables_in_library |
+-------------------+
| author |
| book |
+-------------------+
2 rows in set (0.00 sec)
mysql> #创建数据库
mysql> create database shop;
Query OK, 1 row affected (0.00 sec)
ü Mysql -h主机名 -u用户名
-p密码 (登陆mysql数据库)
ü Show databases; (查看有多少数据库可供使用)
ü Use 数据库名字; (进入数据库、使用数据库)
ü Create database 数据库名字; (创建数据库)
ü Drop database 库名; (删除数据库)
ü Create table (
字段
类型,
字段 类型
。。。
ü ) (创建数据表)
Drop table 表名; (删除数据表
ü Mysql -h主机名 -u用户名
-p密码 (登陆mysql数据库)
ü Show databases; (查看有多少数据库可供使用)
ü Use 数据库名字; (进入数据库、使用数据库)
ü Create database 数据库名字; (创建数据库)
ü Drop database 库名; (删除数据库)
ü Create table (
字段
类型,
字段 类型
。。。
ü ) (创建数据表)
ü Drop table 表名; (删除数据表)
登录mysql数据库
启动服务

说明mysql命令的没有找到,有相应的程序文件需要被执行。
解决:
①

②

设置环境变量,让系统自动帮组我们找到mysql命令所对应的执行文件。
注意:
① 我们在对数据库进行操作的时候,像创建表、删除表等操作,需要进入指定的数据库,才可以执行操作,否则提示“没有选择数据库”

如果出现以上提示,说明没有选择数据库(use 库名;)
② 每条sql语句后边都使用”;”分号结束。(use 选择数据库除外)
【为数据表添加新的记录信息】
一般数据库操作有4种基本操作:数据的增insert、删delete、改update、查select
为“图书”表添加新的数据信息
有一个问题:现在还不知道图书表有什么字段可以供操作。
Insert into 表名 values (单域值,单域值,单域值,……);
有几个字段,就写几个单域值,并且它们是一一匹配的。
数据表所有字段信息都要补全
Php入门 60 清华出版社 韩顺平
Insert
into book values
(‘Php入门’,’60’,’ 清华出版社’,’ 韩顺平’);
Insert
into book values
(‘javascript巧妙用法’,’89’,’ 北大出版社’,’ 古龙’);
有的时候我们添加数据信息,有的字段不知道是什么值,这就要求我们可以为指定的字符添加数据信息
Insert into 表名 (字段,字段,字段) values (单域值,单域值,单域值);
注意:字段与单域值 一一匹配。
Insert
into book (name,publish,author) values
(‘css3.0特性介绍’,’铁道出版社’,’琼瑶’);
可以针对具体字段添加数据信息
( 为什么把代码复制到editplus里边
因为sql语句的标点符号都要求英文输入法的标点符号 逗号、引号
在word文档里边输入的标点符号,像单引号 是中文输入法的单引号。)

Sql语句有报语法错误:你的sql语句有语法错误,请检查手册看看你的sql语句版本是否支持你的sql语句这样的用法。
【查看数据表的数据】
数据的增insert、删delete、改update、查select
Select *
from 表名; //注意
from 不要写成
form
l * 会查询数据表全部字段信息
有的时候我们需要查询指定字段的信息
比如,我们只查询作者的信息 或者是
书名的信息
Select 字段,字段,字段 from 表名;

【删除数据表信息】
数据的增insert、删delete、改update、查select
Delete from 表名;
上边的删除类似“清空”式的删除。
一般我们删除数据,需要指定具体的条件,否则会清空数据表,造成数据库事故。
一般数据库管理员还会使用一种方法,使得数据表的数据被清空
Truncate
表名; #清空数据表
比如:我们只删除“php入门”这本书,其他的图书都保留。这时候sql语句需要有限制条件。
Delete
from 表名
where 数据记录限制条件;
限制条件:图书的名字等于“php入门”
Delete from
book where name=’Php入门’;
价格> 具体值
价格< 具体值
根据删除,我们知道在做“查询”的时候也可以做限制条件。
比如:我想要查询价格大于70元图书的信息。
注意:
在sql语句里边,一般“值”的数据都使用引号给括起来,字段无需引号。
删除数据的时候,要有where条件,否则是清空数据表,造成数据库事故。
【多条件记录操作】
mysql> # 查询图书价格大于50元并且是北大出版社出版
mysql> select * from book where
price>50 and publish='北大出版社';
+--------------------+-------+------------+--------+
| name | price | publish | author |
+--------------------+-------+------------+--------+
| javascript巧妙用法 | 89 | 北大出版社 | 古龙 |
| linux常用命令 | 95 | 北大出版社 | 古龙
|
+--------------------+-------+------------+--------+
2 rows in set (0.00 sec)
Sql语句有多种条件做限制,条件间使用“and”连接。
【记录信息修改】
数据的增insert、删delete、改update、查select
Update 表名 set 字段=’单域值’ where
条件; //只修改指定条件的单个字段信息
Update 表名 set 字段=’单域值’, 字段=’单域值’, 字段=’单域值’ where 条件; //同时会修改多个字段的信息
Update 表名 set 字段=’单域值’;
//该用法会把全部信息记录都修改,要小心使用

没有识别字段”pulish”


修改总结:
我们可以修改一个字段,也可以修改多个字段,中间使用”,”逗号分隔。
修改的时候语句有where条件限制,如果没有,则会修改全部信息记录。
【主键使用】
原则上讲每个数据表都应该有主键。
主键就是数据表里边的一个字段。字段里边的信息都是不同,可以唯一确定每条记录。
一般主键的信息我们使用自动自动增长的数字来表示。
主键作用:可以设定数据表里边的每条记录都是唯一的。
生活中也有主键的存在:一个人,名字是“张楚生”,‘男’,‘北京’,‘海淀’,如果一个公司里边有许多“张楚生”存在,并且它们的数据又极为相似,那么如何能区分出来不同的“张楚生”,我么可以通过“身份证号码”来区分不同的人。
一般习惯上使用”id”代表主键,identify 确认、标识。
真正的主键无需我们关心具体的值,它会自动网上增长。
现在我们创建数据表,并且表里边有主键字段。
CREATE TABLE `book` (
`id` int(11) primary key
auto_increment,
`name` varchar(32) default NULL,
`price` int(11) default NULL,
`publish` varchar(64) default NULL,
`author`
varchar(16) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Primary key: 表示当前字段是主键
Auto_increment: 主键值会自动增长

Insert
into book values
(null, 'Php入门','60','清华出版社',' 韩顺平');
//匹配数据表全部字段,包括主键(null表示)
//单域值
的顺序是数据表 字段的顺序,不要写乱了。
Insert
into book values
(null, 'javascript巧妙用法','89','北大出版社',' 古龙');
Insert
into book (publish,author ,name) values
('铁道出版社','琼瑶', 'css3.0特性介绍');
//设置具体字段信息,可以不用考虑主键
//字段顺序可以自定义安排
Insert
into book values
(null, 'html精通','30','清华出版社',' 韩顺平');
Insert
into book values
(null, 'linux常用命令','95','北大出版社',' 古龙');
Insert
into book (name,publish,author) values
('jquery高级用法','铁道出版社','琼瑶');

主键是唯一的,不允许重复

我们使用未被占用的主键,后边的主键值在此自动增长。

添加信息记录的“单域值”没有全部匹配上“字段”的数目。
注意:
如果一个数据表有主键,我们不用关心它的值,主键的值会自动增长并赋予。
主键是唯一的,不允许重复主键值存在
我们可以使用未被占用的主键。之后的主键值会在此基础上自定增长。
原则上每个数据表都有一个主键。
总结:
Mysql数据库记录的“增”、“删”、“改”、“查”
增加insert
删除delete
修改update
查询select
修改、查询、删除: 可以使用where限制条件
增加:可以增加全部字段信息、也可以增加指定字段信息。
Where
条件设置 多个条件使用and进行连接
Update修改:如果同时修改多个字段信息,中间使用”,”逗号连接
主键使用。
1. 登陆数据库
mysql -h主机名 -u用户名 -p密码
2. 查询当前数据库管理系统有多少数据库存在
show databases;
3. 进入具体数据库/使用具体数据库
use 数据库名字;
4. 查询当前数据库数据表的情况信息
show tables;
5. 创建数据库
create database 库名;
6. 删除数据库
drop database 库名;
7. 创建数据表book
书名name 价格price 出版社publish 作者author
create table book(
字段
类型,
字段 类型,
)
数据类型:int整型 varchar(长度)
create table book(
name
varchar(32),
price
int,
publish
varchar(64),
author varchar(16)
);
create table author(
name
varchar(32),
age
int
);
8. 删除数据表
drop table 表名;
mysql> #查看数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| library |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> #查看数据表
mysql> show tables;
+-------------------+
| Tables_in_library |
+-------------------+
| author |
| book |
+-------------------+
2 rows in set (0.00 sec)
mysql> #创建数据库
mysql> create database shop;
Query OK, 1 row affected (0.00 sec)
ü Mysql -h主机名 -u用户名
-p密码 (登陆mysql数据库)
ü Show databases; (查看有多少数据库可供使用)
ü Use 数据库名字; (进入数据库、使用数据库)
ü Create database 数据库名字; (创建数据库)
ü Drop database 库名; (删除数据库)
ü Create table (
字段
类型,
字段 类型
。。。
ü ) (创建数据表)
Drop table 表名; (删除数据表
Mysql数据库操作复习,增删改查的更多相关文章
- MySQL数据库操作:“增删改查”,忘记密码重置等。
[注] 数据库的“增删查改”,参考原作者Wid:http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html#d11.感谢大佬们的技术分享 ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- Vc数据库编程基础MySql数据库的表增删改查数据
Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...
- 【Python + Mysql】之用pymysql库连接Mysql数据库并进行增删改查操作
用pip下载pymysql并引用 具体请参考文章: <Python之MySQL数据库增删改查操作> <python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删 ...
- 48.Python中ORM模型实现mysql数据库基本的增删改查操作
首先需要配置settings.py文件中的DATABASES与数据库的连接信息, DATABASES = { 'default': { 'ENGINE': 'django.db.backends.my ...
- mysql数据库单表增删改查命令
数据库DB-database-mysql 课程安排 第一天: 1.数据库定义以及设计 2.mysql服务端的安装 3.mysql-dos操作 库的操作 表的操作 4.mysql客户端navicate工 ...
- 02 . Mysql基础操作及增删改查
SQL简介 SQL(Structured Query Language 即结构化查询语言) SQL语言主要用于存取数据.查询数据.更新数据和管理关系数据库系统,SQL语言由IBM开发. SQL语句四大 ...
- Linq 数据库操作(增删改查)
Linq数据库增删改查 Linq是一种查询语言,集成包含在formwork中,包含在C#语言中,它的作用是降低查询的门槛,提高开发效率,是我们必须掌握的技术之一,下面是我自己对linq数据库操作的方法 ...
- spring boot快速入门 4: jpa数据库操作 实现增删改查
spring boot jpa逆向生成表 简单实例: 第一步:pom文件: <?xml version="1.0" encoding="UTF-8"?&g ...
- 初次尝试PHP——一个简单的对数据库操作的增删改查例子
第一次学习PHP,很多人说PHP是最好的语言,学习了一点点,还不敢说这样的话,不过确实蛮好用的. 做了一个简单的对数据库的增删改查的操作,主要是将四种操作写成了独立的函数,之后直接调用函数.以下是代码 ...
随机推荐
- 【scala】 scala 基础(一)
至于什么是scala,摘录一段 维基百科的解释: scala 下载 安装 省略 1.环境变量配置完成后 命令行报错,因为scala 的安装路径里边包含空格 修改后即可.由于我的本地包含空格,此处CLI ...
- MTK 预置apk
一.如何将带源码的APK预置进系统? 1) 在 packages/apps 下面以需要预置的 APK的 名字创建一个新文件夹,以预置一个名为Test的APK 为例 2) 将 Test ...
- aspose导出excel文件
using Aspose.Cells; using System; using System.Collections.Generic; using System.Data; using System. ...
- MAC下Android的Eclipse开发环境的搭建 转自MacroCheng
原文地址: http://www.cnblogs.com/macro-cheng/archive/2011/09/30/android-001.html 一.Eclipse的下载 到网站:http: ...
- 给树莓派安装看门狗的两种方法,二代B
树莓派的CPU是保护有硬件看门狗的,可以通过安装模块和值守程序来实现看门狗防止树莓派死机. 安装方法一:watchdog.sh的源码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- ios开发之--编码及命名规范
做了几年的开发工作,因为是半路出的家,所以对这块一直都没怎么重视,所以在工作中,出现了很多的尴尬场景,编码和命名的规范是一定得有的,最起码一个团队之间的规范也是很有必要的.面向对象的编程,其实很好理解 ...
- osgExp只能将3dmax中的动画导出为路径动画osg::AnimationPath,而不能导出osgAnimation::Animation。osg播放骨骼动画应该使用FBX格式
通过实际的模型测试,导出为.osg文本格式,搜索animation,只能搜索到AnimationPathCallback,而搜索不到osgAnimation相关类 在OSGExp1.5.0源代码中搜索 ...
- 【译】Kafka学习之路
一直在思考写一些什么东西作为2017年开篇博客.突然看到一篇<Kafka学习之路>的博文,觉得十分应景,于是决定搬来这“他山之石”.虽然对于Kafka博客我一向坚持原创,不过这篇来自Con ...
- pyinstaller 将.py生成.exe ----报错 “IndexError: tuple index out of range”
pyinstaller将py打包为exe文件,用pysintaller居然报错 File "c:\anaconda3\lib\site-packages\PyInstaller\depend ...
- myeclipse环境优化
在项目右键打开Project > Properties > BUILDERS,打开source的tab,选择你的目录,删之~重启myeclipse 以下转载自百度知道 优化一下,下面内容都 ...