我们之前学习如何安装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. MyBatis Generator 自动生成的POJO对象的使用(一)

    MyBatis Generator 会自动生成以下几种类型的对象(除非你使用MyBatis3DynamicSql 的运行环境): Java Model Objects(总是生成) SQL Map Fi ...

  2. 查询慢SQL

      可以查看当前时间访问库的所有请求SQL SELECT COUNT(*) AS c,state,info  FROM `information_schema`.processlist GROUP B ...

  3. jenkins pipeline中获取shell命令的标准输出或者状态

    //获取标准输出//第一种 result = sh returnStdout: true ,script: "<shell command>" result = res ...

  4. JavaScript,遍历,for

    (for循环,for...in ,for...of ,forEach)(:for in总是得到数组,字符串的下标,而for of和forEach一样,是直接得到值) (forEach() 方法用于调用 ...

  5. jquery sortable的拖动方法示例详解1

    转自:https://www.jb51.net/article/45803.htm 所有的事件回调函数都有两个参数:event和ui,浏览器自有event对象,和经过封装的ui对象 ui.helper ...

  6. STM8 内部flash

    举例 typedef enum { FLASH_MEMTYPE_PROG = (u8)0x00, /*!< Program memory */ FLASH_MEMTYPE_DATA = (u8) ...

  7. 只需五分钟-用Maven快速搭建Spring Cloud微服务

    Maven安装手册 1.准备安装包 安装包: apache-maven-3.5.4-bin.zip  (最好JDK 1.7及以上版本) 集成包: eclipse-maven3-plugin.zip 2 ...

  8. Spark学习笔记3——RDD(下)

    目录 Spark学习笔记3--RDD(下) 向Spark传递函数 通过匿名内部类 通过具名类传递 通过带参数的 Java 函数类传递 通过 lambda 表达式传递(仅限于 Java 8 及以上) 常 ...

  9. python urllib应用

    urlopen 爬取网页 爬取网页 read() 读取内容 read() , readline() ,readlines() , fileno() , close() :这些方法的使用方式与文件对象完 ...

  10. CentOS7安装CDH 第九章:CDH中安装Kafka

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...