我们之前学习如何安装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. Ubuntu下添加定时任务执行php文件

    //添加自动下载定时任务1. vim /etc/crontab2. 添加 #每5分钟执行一次*/5 * * * * root /usr/bin/php /home/wwwroot/123.php3. ...

  2. js入门之内置对象Date

    一. Date对象 Math和Date对象的区别 Math对象和Date对象的区别 Math不是一个构造函数,里面提供的是静态成员 Date是一个构造函数 首先要通过new Date() 来创建日期实 ...

  3. Java 之 打印流

    打印流 1.概述 平常在控制台打印输出,是调用 print 方法和 println 方法完成的,这两个方法都来自于 java.io.PrintStream 类,该类能够方便地打印各种数据类型的值,是一 ...

  4. Windows Server 2012 R2上安装.Net4.6.1出错

    在Windows Server 2012 R2上安装.Net4.6.1时提示“你需要先安装对应于 KB2919355 的更新,然后才可在……”解决方式: 在官网下载更新包,下载地址:https://w ...

  5. Haddop完全分布式集群搭建

    hadoop完全分布式搭建 建议(遇到的坑): 如果自己用的操作系统就是linux,我本身是deepin系统,装了两台虚拟机,结果,用户名没有配置,导致启动不了,因为hadoop的master节点启动 ...

  6. L ==> E · L · K

    三剑客:Elastic Stack 在学习ELK前,先对 Lucene作基本了解. 今天才知道关系型数据库的索引是 B-Tree,罪过... 减少磁盘寻道次数 ---> 提高查询性能 Lucen ...

  7. Python函数Day2

    一.函数补充 只有一个参数时,变量用argv 二.动态参数 为了拓展,对于传入的实参数量不固定,需要万能参数,即动态参数 *args **kwargs 在函数定义时,在 *args为位置参数,起聚合的 ...

  8. 昨天521表白失败,我想用Python分析一下...表白记录和聊天记录

    昨天跟喜欢的妹子表白了. 失败了!.下面是表白的聊天记录: (跟妹子已经认识一段时间) 我:灭嘤嘤,我喜欢你. 妹子:你干嘛? 我:今天520,跟你表白鸭. 妹子:那....有多喜欢? 我: 有很多很 ...

  9. CEIWEI CommMonitor 串口监控精灵v11.0 串口过滤 串口监控

    CEIWEI CommMonitor   串行端口监控精灵是用于 RS232 / RS422 / RS485 端口监控的专业 强大的系统实用程序软件.CEIWEI  CommMonitor 监控显示, ...

  10. JS获取当前月份的最后一天

    <button onclick="function_name()">获取当前月份的最后一天</button> <script type="t ...