一、介绍

1、数据库

数据库,通俗的讲,即为存储数据的“仓库”。不过,数据库不仅只是存储,还对所存储的数据做相应的管理,例如,访问权限,安全性,并发操作,数据的备份与恢复,日志等。实际
上,我们所提及的数据库,就是数据库管理系统。( DBMS,Database Management System)

2、数据表

数据表是存储数据的基本单元。数据表是二维的,由多行与多列组成,我们称每一列为一个字段,称每一行为一条记录。
      数据在数据表中就是以多行多列的形式来存储的。
      数据表在表现形式上类似于excel的一张sheet,大家可以通过excel的sheet来辅助理解。

3、sql

SQL,结构化查询语言( Structured Query Language),是一种查询与操作关系型数据库的语言。使用SQL语言可以完成在数据库中查询相关信息,更新信息,权限变更,修改数据库结
构等操作。
       说明: SQL语言是大小写不敏感的。(不区分大小写)

4、安装MySQL绿色版 5.7.x

默认不在含有data数据库文件夹,我们需要进行初始化操作。
        初始化命令为:
        mysqld –-initialize-insecure
        mysqld --initialize

5、配置my.ini文件

解压文件后,我们需要修改my.ini文件内容,如下:
      mysql服务器安装目录
              basedir=E:/mysql-5.6.19-win32
     #mysql数据存储目录
              datadir=E:/mysql-5.6.19-win32/data
其中E:/mysql-5.6.19-win32为MySQL数据库的根目录,根据实际情况进行修改。
说明:如果没有my.ini文件,则一切取默认配置。

6、数据库服务端字符集

MySQL在默认情况下,使用Latin( ISO8859-1)字符集,该字符集不支持中文等字符,我们可以将其修改为更通用的UTF8字符集。
      修改my.ini文件,在[mysqld]中加入:
       character-set-server=utf8

     7、启动与停止MySQL服务

我们要访问MySQL数据库,首先要启动MySQL服务。
    启动服务    start mysqld
    停止服务    mysqladmin –u用户名 -p shutdown
输入密码后,停止服务。

     8、登录与退出MySQL数据库

登录  mysql –u用户名 –p
     登出 quit / exit
说明: MySQL默认存在一个用户名为root,密码为空的管理员用户。 
二、简单操作

查看所有数据库
show databases;
使用某数据库
use 数据库名;
查看指定数据库下的所有表
show tables;
查看指定表的表结构
desc / describe 表名;
说明: MySQL以“;”作为一条命令的结束。

创建数据库
create database 数据库名
删除数据库
drop database 数据库名
说明:使用show查看数据库或表时,使用的是英文单词为复数,而使用create创建数据库或表时,使用的英文单词为单数。 
三、

1、注释

MySQL中可以使用以下三种注释:
       # 从“ #”开始的位置一直到该行的结束。
       -- 从“ --” 开始的位置一直到该行的结束,使用这种注释时需要在“ --”与注释内容之间至少存在一个空格。
       /* */从“ /*”开始,到“ */”之间的内容。

2、数据类型

MySQL中数据类型分为以下几种:数值类型、字符类型、日期与时间类型

(1)数值类型

tinyint( 1个字节)      带符号的范围是-128到127。无符号的范围是0到255。
smallint( 2个字节)     带符号的范围是-32768到32767。无符号的范围是0到65535。
mediumint( 3个字节)  带符号的范围是-8388608到8388607。无符号的范围是0到 16777215。 
int / integer( 4个字节)  带符号的范围是-2147483648到2147483647。无符号的范围是0 到4294967295。
bigint( 8个字节)   带符号的范围是-9223372036854775808到 9223372036854775807。无符号的范围是0到18446744073709551615。 
说明: 默认为有符号类型,无符号类型则在相应类型后面加上 unsigned。 
float[(M,D)] 单精度浮点类型。
double [(M,D)] 双精度浮点类型
M是浮点类型总位数, D是小数点后面的位数,如果M和D被省略,根据硬件允许的限制来保存值。 float大约7位小数位,double大约15位小数位。

(2)日期与时间

date日期类型,支持的范围为'1000-01-01'到'9999-12-31'
time时间类型,支持的范围是'-838:59:59'到'838:59:59'
datetime日期时间类型,支持的范围是'1000-01-01 00:00:00'到 '9999-12-31 23:59:59‘
timestamp时间戳,范围是'1970-01-01 00:00:00'到2037年。
year[(2|4)],两位或四位格式的年。默认是四位格式。

(3)字符串类型

char(M)固定长度字符串,当实际长度不足M时,在右侧填充空格以达到指定的长度。 M表示列长度。 M的范围是0到255 个字符。
varchar(M)可变长字符串。当实际长度不足M时,不进行填 充。 M表示最大长度。 M的范围是0到65,535。
           此外,字符串类型还有binary, varbinary, tinyblob, tinytext,blob, text, mediumblob, mediumtext, longblob, longtext,enum, set。
四、表的操作

1、创建表

create table student2 (
name varchar(30) comment '名字',
age int,
height float(5, 2) default 10.2,
weight float(5, 2)
)

增加字段(add后面小括号可以省略)
alter table student2 add temp int;

同时增加多个字段(add后面的小括号不能省略)
alter table student2 add (
temp2 int,
temp3 char(5)
)

查看表结构: desc student2

类型说明包括如下定义:
[not null | null] 不允许为空 | 允许为空
[default default_value] 默认值
[auto_increment] 自动增长
[unique [key] | [primary] key] 唯一 | 主键
[comment ‘string’] 字段注释

2、修改字段(modify不能改变字段的名字)

alter table student2 modify temp3 int;

修改字段(change可以改变字段的名字)
alter table student2 change temp3 temp4 varchar(20);

3、删除字段

alter table student2 drop temp4;

4、修改表名

alter table student2 rename to student;

5、删除表

drop table student;

6、

create table student(
id INT primary key, #主键,
name varchar(10),
age int
);

#查询表中的数据
select id, name from student;
#查询所有列
select * from student;

#有条件的查询,where指定查询条件,条件表达式为真的记录
#才会在结果集中显示。
select * from student where age > 12
#not 对条件表达式取反。true->false, false->true
select * from student where not age > 12

#and 并且
select * from student where age > 12 and age < 18
#or 或者
select * from student where age < 12 or age > 18

#in 是否在指定的集合中(跟集合中的任意一个值相等)
select * from student where age in (1, 10, 20, 30, 50);

#between and 区间(闭)
select * from student where age between 12 and 18;
select * from student where age >= 12 and age <= 18;

#MySQL中,如果没有给一个字段指定具体的值,并且该字段
#没有使用default指定默认值,则字段的默认值为null。(default null)

#错误的写法
#select * from student where age = null;
#select * from student where age <> null;

  

#MySQL中,null是一个特殊值,其不等于任何值,包括其自身。
#正确的写法
select * from student where age is null;
select * from student where age <=> null; #能够比较null值的等于号
select * from student where age is not null;
select * from student where not age <=> null;

#使用distinct可以去掉结果集中重复的记录。当查询多个字段时,
#只有多个字段全部相同,才认为是重复的记录。部分字段相同,不
#认为是重复的。

select distinct name, age from student;

#limit限制结果集中的记录
#取结果集中前count条记录。
#limit count
#从结果集中start位置开始,获取count条记录。(start从0开始)
#limit start, count
#第一种方式也可以使用第二种方式来表示。limit n 等价于 limit 0, n
select * from student limit 3;
select * from student limit 2, 3;

#模糊查询
#两个通配符 % _
#%匹配0个或任意多个字符
#_匹配任意一个字符
select * from student where name like '%三%';
select * from student where name like '张%';
select * from student where name like '%三';
select * from student where name like '张_'

#含有某关键字X like '%X%'
#以关键字X开头 like 'X%'
#以关键字X结尾 like '%X'
#如果关键字含有通配符,则需要对通配符进行转义。
#默认的转义字符是\。
select * from student where name like '%\_%';
#我们也可以自己来指定转义字符,使用escape。
select * from student where name like '%$_%' eacape '$';

#向表中插入数据
#insert into 表名(字段列表) values (值列表)
insert into student(id) values (20);
insert into student(id, name, age) values (21, 'xxx', 30);
#如果要向表中所有的字段插入值,可以省略字段列表。
#此时,按照字段在表声明(创建)时指定的顺序与值列表中
#的值进行对应。
#这种写法不推荐。
insert into student values (22, 'kcs', 33);

#修改数据
update student set name='修改', age=30 where id=1
#删除数据
delete from student where id=1;
#table 可以省略 truncate student;
truncate table student;

/*
delete与truncate
二者都可以删除表中的记录。
delete可以指定where条件,进行有选择的删除。
truncate就是删除表中所有的记录,因此,truncate
不能指定where条件。
当二者都删除表中所有记录时,truncate在性能上要优于
delete from。实际上,truncate就是删除表结构,然后
再重新创建表结构。
*/

#别名 使用as
select student.id as '学号' , student.name as '姓名' from student
#别名也可以省略as
select id '学号', name '姓名' from student
#也可以去掉单引号
select id 学号, name 姓名 from student

#表也可以取别名
select a.id, a.name from student as a
select a.id, a.name from student a

select id from (
select id, name from student
) x

Mysql(一) 基本操作的更多相关文章

  1. linux的基本操作(mysql 的基本操作)

    Mysql 的基本操作 在前面两个章节中已经介绍过MySQL的安装了,但是光会安装还不够,还需要会一些基本的相关操作.当然了,关于MySQL的内容也是非常多的,只不过对于linux系统管理员来讲,一些 ...

  2. php基础系列:从用户登录处理程序学习mysql扩展基本操作

    用户注册和登录是网站开发最基本的功能模块之一,现在通过登录处理程序代码来学些下php对mysql的基本操作. 本身没有难点,主要是作为开发人员,应该能做到手写这些基本代码,算是自己加强记忆,同时希望能 ...

  3. mysql 的基本操作总结--增删改查

    本文只是总结一下mysql 的基本操作,增删改查,以便忘记的时候可以查询一下 1.创建数据库 语法:CREATE DATABASES 数据库名; 例子: CREATE DATABASES studen ...

  4. (三)mysql SQL 基本操作

    文章目录 MySQL服务器对象 mysql 的基本操作 SQL的注释 库操作 表(字段)操作 数据操作 MySQL服务器对象 mysql 服务器对象内部分成了 4 层: 系统(DBMS)----> ...

  5. mysql数据库基本操作sql语言

    mysql的启动与关闭 启动 /etc/init.d/mysql start 多实例使用自建脚本启动 2种关闭数据库方法 mysqladmin -uroot -p密码 shutdown #优雅关闭/e ...

  6. 自学 linux——14.mysql的基本操作

    MySQL的基本操作 1.名词介绍 以Excel文件举例: 数据库:可以看作是整个excel文件. 数据表:可以看作是一个excel文件中的工作表. 行(记录):可以看作是一个工作表中的一行 列(字段 ...

  7. mysql 之基本操作

    已经在板子内部把所有的环境都搭好了,现在的要求是对Mysql 进行一些基本的操作. 在这之前,记录几个要点以防以后忘记. 一,准备工作. 1. 将usr/share/mysql 目录下的 my-lag ...

  8. 数据库(MySQL)表基本操作

                                    数据库表基本操作 思前想后,最终还是把博客的名字改成了数据库表基本操作,以前叫SQL语句大全,感觉用"大全"这个名词 ...

  9. 数据库MySQL的基本操作

    1.MySQL数据库的安装: CentOS6上mysql服务端和客户端的安装和启动: #使用yum安装mysql数据库的服务端和客户端 yum install -y mysql mysql-serve ...

  10. 【Linux】-- 在linux上安装mysql及基本操作

    1.MySQL的安装 1.删除mariadb数据库 yum remove mariadb-libs.x86_64 CentOS7默认安装mariadb数据库,所以要先删除 2.下载mysql源 进入m ...

随机推荐

  1. ffmpeg 踩坑实录 近期使用总结(三)

    一.背景介绍 将ffmpeg运用到项目上已经有一段时间了,趁现在有空赶紧记下来. 二.技术点总结    2.1 实现方式 项目里面主要运用的形式是,在java端,调用操作系统的方法,并执行切片命令. ...

  2. Python爬虫与反爬虫(7)

    [Python基础知识]Python爬虫与反爬虫(7) 很久没有补爬虫了,相信在白蚁二周年庆的活动大厅比赛中遇到了关于反爬虫的问题吧 这节我会做个基本分享. 从功能上来讲,爬虫一般分为数据采集,处理, ...

  3. 学习笔记之ubuntu修改固定IP脚本

    一.shell脚本编程 二.正则表达式 三.linux修改IP的方法 #!/bin/bash cd /etc/network/ stty erase '^?' write_interfaces() { ...

  4. 算法笔记(c++)--回文

    算法笔记(c++)--回文 #include<iostream> #include<algorithm> #include<vector> using namesp ...

  5. 如何更改Arcmap里经纬度小数点后面的位数?

    customize>arcmap option>data view >round coordinate to 改成想要显示的小数位数

  6. [笔记] FreeBSD使用小技巧

    非交互式添加用户 sed直接修改文件 sed -i '' 's/a/b/' file sed添加一行 sed '1a\ newline' file sed '1s/.*/&\'$'\nnewl ...

  7. 3. IP地址转换函数

    一.字符串表示的IP地址需要被转化为整数(二进制数)方能使用 IPv4地址:点分十进制字符串 IPv6地址:十六进制字符串 有时(如记录日志),我们则要把整数(二进制数)表示的IP地址转化为可读的字符 ...

  8. Factorials 阶乘(思维)

    Description N 的阶乘写作N!表示小于等于N的所有正整数的乘积.阶乘会很快的变大,如13!就必须用32位整数类型来存储,70!即使用浮点数也存不下了.你的任务是 找到阶乘最后面的非零位.举 ...

  9. 利用p4实现ipv6转发实验

    写在前面 只是作为一个入门p4的实验尝试,借用了一些即成的运行代码. p4代码 /**p4_16,v1_model**/ #include<core.p4> #include<v1m ...

  10. 不要USB数据线调试Android开发

    不管是过去Eclipse还是现在的Android Studio开发Android,运行或者调试时都会利用USB数据线连接电脑和手机,特别是当现在的手机只有一个Type-c接口,意味着,插上后,啥也干不 ...