我们之前学习如何安装MySQL数据库 以及 navicat 管理数据库可视化工具

那么现在主要来学习一下如何使用,(操作数据库有很多方式,终端操作、可视化工具操作、编程语句操作)

我们首先学习在终端操作数据库(windows+r      cmd)

登录数据库服务器:mysql -u root -p密码    或则  mysql -u root -p回车后再输入密码

退出数据库服务器:exit

如何查询数据库服务器中所有的数据库:show databases;     (一定要带分号 英文状态下的分号)

如何选中一个数据库进行操作:use 数据库名称      如:use test

----------------------------------------------------------------

如何在数据库服务器中创建数据库:create database 数据库名称;    (create database test1;)

查看某个数据库中所有的表:show tables;

如何创建一个数据表:create table user (name varchar(20),owner varchar(20),species varchar(20),sex char(1),birth date,death date);

          上面是一个例子,create table 表名称 (键 数据类型,键 数据类型(num),......);

如何查看某个表的具体结构:describe 表名称;    (describe user);

+---------+-------------+------+-----+---------+-------+
| Field   | Type              | Null   | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name    | varchar(20) | YES  |        | NULL    |         |
| owner   | varchar(20) | YES  |        | NULL    |         |
| species | varchar(20) | YES  |        | NULL    |         |
| sex       | char(1)        | YES  |         | NULL    |        |
| birth     | date             | YES  |         | NULL    |        |
| death   | date             | YES  |         | NULL    |        |
+---------+-------------+------+-----+---------+-------+

field:字段名称;type:字段类型(长度);null:是否可以为空;key:约束类型,default:默认值;extra:额外的信息;

查看表中的数据:select * from 表名称;    (select  * from user);

如何往数据表中添加数据:insert into user values ('dog','me','taidi','f','2019-03-04',null);    按照表结构添加数据,类型,长度,都要符合(INSERT INTO  表名称 VALUES ('值','值',......);)

mySQL中有哪些常用数据类型?

数值:

类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1 字节 (-128,127) (0,255) 小整数值
SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值
MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8 字节 (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4 字节 (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度
浮点数值
DOUBLE 8 字节 (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度
浮点数值
DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值

日期/时间:

类型 大小
(字节)
范围 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 4

1970-01-01 00:00:00/2038

结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07

YYYYMMDD HHMMSS 混合日期和时间值,时间戳

字符串(字符)类型:

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-65535 字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LONGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

数据类型如何选择?

日期  按照格式选择

数值和字符串按照大小 选择

连续增加好多值:

insert into user values ('labuladuo','chenglong','dog','f','2019-04-12',null);
insert into user values ('hashiqi','lilianjie','dog','f','2019-05-12',null);
insert into user values ('douniuquan','zhenzidan','dog','f','2019-06-12',null);

如何删除数据?

delete from(表名称) where 条件;       //delete from user where name='dog';

如何修改数据?

update (表名称) set 键='值' where 条件;

//update user set name='wangwangcai' where owner='zhouxingchi';

小结一下,数据库的常见操作

增加:insert    删除:delete  改动:update    查询:select

MySQL建表时约束条件:主键约束、自增约束;外键约束;唯一约束;非空约束;默认约束;

主键约束:它能够唯一确定一张表中的一条记录。也就是我们通过给某个字段添加约束,就可以使得该字段不重复且不为空。

create table 表名称 (id int primary key,键 类型(长度),......);

//create table user1 (id int primary key,name varchar(20));

查看数据表编码:show create table 表名称;                         //show create table user1;

修改表的某个字段的编码:alter table 表名称 modify 字段名类型(长度) character set 编码;

//alter table user1 modify name varchar(20) character set utf8;

或者

alter table 表名称 change 字段名称 字段名称 varchar(50) character set 编码;

//alter table user1 change name name varchar(50) character set utf8;

修改表的默认的编码:alter table 表名称 DEFAULT character set 编码;

//alter table user1 DEFAULT character set utf8;

查看mysql的字符集:show variables where Variable_name like '%char%';

查看某一个数据库字符集:show create database enterprises;(注:enterprises为数据库);

开启/停止mysql:net start mysql  /  net stop mysql

初步学习MySQL的更多相关文章

  1. mysql存储过程的初步学习及案例示例

    存储过程 几个月前小编开始初步接触学习存储过程,当然是跟着大神的视频学习的,在学习的过程中自己也记录了一下笔记,如今整理一下,接下来我将从概念,优缺点以及语法和实际应用几方面为大家详细讲解一下存储过程 ...

  2. 烂泥:学习mysql数据库主从同步复制原理

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 说明本篇文章部分转载自互联网. MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对 ...

  3. 从零开始学习Mysql的学习记录

    2015/06/18 16:23更新,由于QQ邮件的图片链接失效了,请在云笔记链接查看 http://note.youdao.com/share/?id=f0b2ed30a3fc8e57c381e3d ...

  4. json2.js的初步学习与了解

    json2.js的初步学习与了解,想要学习json的朋友可以参考下. json2.js的初步学习与了解 1.)该js的下载地址是:http://www.json.org/json2.js 2.)在页面 ...

  5. 老周的ABP框架系列教程 -》 一、框架理论初步学习

    老周的ABP框架系列教程 -- 一.框架理论初步学习   1. ABP框架的来源与作用简介 1.1  简介 1.1.1       ABP框架全称为"ASP.NET Boilerplate ...

  6. 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助

    初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助,如果有bug或者更好的优化方案,也请批评与指正,谢谢,代码如下: var fs = require('f ...

  7. EF Codefirst 初步学习(二)—— 程序管理命令 更新数据库

    前提:搭建成功codefirst相关代码,参见EF Codefirst  初步学习(一)--设置codefirst开发模式 具体需要注意点如下: 1.确保实体类库程序生成成功 2.确保实体表类库不缺少 ...

  8. 学习MySQL(上)

    具体实例 1.PHP 服务器组件 对于初学者建议使用集成的服务器组件,它已经包含了 PHP.Apache.Mysql 等服务,免去了开发人员将时间花费在繁琐的配置环境过程. Window 系统可以使用 ...

  9. 学习MySQL(下)

    具体实例 22.MySQL ALTER命令 当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令. 1.如果需要修改数据表的名称,可以在 ALTER TABLE 语句中使 ...

随机推荐

  1. nfs挂载文件

    1. 安装必备插件  以防centos7默认没有启动nfs服务 yum -y install nfs-utils rpcbind # 启动 rpcbind 和配置开机自启动 systemctl sta ...

  2. 题解-CSA Beta Round#1 Number Elimination

    Problem CSA-Beta Round#3 题意概要:给定 \(n\) 个数组成的序列,定义一次操作: 在当前序列中选择两个数,将其中较小的数从序列中删除(若两个数相同,则删除在序列中更靠前的) ...

  3. 稀疏检出-使用git检索出仓库里的某一个目录文件,而不是整个仓库的所有文件

    具体工作意义是从某一个Git仓库 克隆时,只克隆检测出这个仓库里的某些文件夹内容,而不是跟平常那样把整个仓库的内容都克隆下来 从1.7.0版本开始git提供稀疏检出的功能.所谓稀疏检出就是本地版本库检 ...

  4. Android GridView去除自带边框点击效果、去除右侧滚动条、禁止上下滑动

    一.去除自带边框点击效果: <com.example.gridview.MyGridView android:id="@+id/grid_upload_pictures" a ...

  5. 编写Postgres扩展之二:类型和运算符

    原文:http://big-elephants.com/2015-10/writing-postgres-extensions-part-ii/ 编译:Tacey Wong 在上一篇关于编写Postg ...

  6. java中的权限修饰符&关键字

    1.类的权限修饰符default(不写权限修饰符),public 说明:类的权限修饰符只有default(不写权限修饰符)和public.   package world default Y N pu ...

  7. java基础点

    1.eclipse什么时候编译java类文件 2.在同一包中的类可以相互引用,无需用import语句 3.在Java eclipse用ALT输入特殊符号 4.if else等语句,什么时候可以不加括号 ...

  8. pandas 25 式

    英文版 Jupyter Notebook 链接:https://nbviewer.jupyter.org/github/justmarkham/pandas-videos/blob/master/to ...

  9. C++——虚函数表解析

     转自:https://blog.csdn.net/haoel/article/details/1948051 前言 C++中的虚函数的作用主要是实现了多态的机制.关于多态,简而言之就是用父类型指针指 ...

  10. Ubuntu apt-get锁定问题