Linux Mysql基础操作
1). 打开MySQL
使用如下两条命令,打开MySQL服务并使用root用户登录:
# 启动 MySQL 服务
sudo service mysql start
# 使用 root 用户登录,实验楼环境的密码为空,直接回车就可以登录
mysql -u root
2). 查看数据库
使用命令 show databases;,查看有哪些数据库(注意不要漏掉分号 ;):
3). 连接数据库
选择连接其中一个数据库,语句格式为 use <数据库名>,这里可以不用加分号,这里我们选择 information_schema 数据库:
4). 查看表
使用命令 show tables; 查看数据库中有哪些表(注意不要漏掉“;”):
5). 退出使用命令 quit 或者 exit 退出 MySQL。
首先,我们创建一个数据库,给它一个名字,比如 mysql_shiyan,以后的几次实验也是对 mysql_shiyan 这个数据库进行操作。 语句格式为 CREATE DATABASE <数据库名字>;,(注意不要漏掉分号 ;),前面的 CREATE DATABASE 也可以使用小写,具体命令为:
CREATE DATABASE mysql_shiyan;
接下来的操作,就在刚才创建的 mysql_shiyan 中进行,首先要连接数据库,使用语句 use <数据库名字>:
use mysql_shiyan;
删除语句为DROP DATABASE mysql_shiyan;。
数据表(table)简称表,它是数据库最重要的组成部分之一。数据库只是一个框架,表才是实质内容。
而一个数据库中一般会有多张表,这些各自独立的表通过建立关系被联接起来,才成为可以交叉查阅、一目了然的数据库。
在数据库中新建一张表的语句格式为:
CREATE TABLE 表的名字
(
列名a 数据类型(数据长度),
列名b 数据类型(数据长度),
列名c 数据类型(数据长度)
);
我们尝试在 mysql_shiyan 中新建一张表 employee,包含姓名,ID 和电话信息,所以语句为:
CREATE TABLE employee (id int(10),name char(20),phone int(12));
MySQL 的数据类型和其他编程语言大同小异,下表是一些 MySQL 常用数据类型:
| 数据类型 | 大小(字节) | 用途 | 格式 |
|---|---|---|---|
| INT | 4 | 整数 | |
| FLOAT | 4 | 单精度浮点数 | |
| DOUBLE | 8 | 双精度浮点数 | |
| | | | | ||
| ENUM | | 单选,比如性别 | ENUM('a','b','c') | |
| SET | | 多选 | SET('1','2','3') | |
| | | | | ||
| DATE | 3 | 日期 | YYYY-MM-DD |
| TIME | 3 | 时间点或持续时间 | HH:MM:SS |
| YEAR | 1 | 年份值 | YYYY |
| | | | | ||
| CHAR | 0~255 | 定长字符串 | |
| VARCHAR | 0~255 | 变长字符串 | |
| TEXT | 0~65535 | 长文本数据 |
整数除了 INT 外,还有 TINYINT、SMALLINT、MEDIUMINT、BIGINT。
CHAR 和 VARCHAR 的区别: CHAR 的长度是固定的,而 VARCHAR 的长度是可以变化的,比如,存储字符串 “abc",对于 CHAR(10),表示存储的字符将占 10 个字节(包括 7 个空字符),而同样的 VARCHAR(12) 则只占用4个字节的长度,增加一个额外字节来存储字符串本身的长度,12 只是最大值,当你存储的字符小于 12 时,按实际长度存储。
ENUM和SET的区别: ENUM 类型的数据的值,必须是定义时枚举的值的其中之一,即单选,而 SET 类型的值则可以多选。
我们通过 INSERT 语句向表中插入数据,语句格式为:
INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);
约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。
在MySQL中,通常有这几种约束:
| 约束类型: | 主键 | 默认值 | 唯一 | 外键 | 非空 |
|---|---|---|---|---|---|
| 关键字: | PRIMARY KEY | DEFAULT | UNIQUE | FOREIGN KEY | NOT NULL |
Linux Mysql基础操作的更多相关文章
- Linux mysql 基础操作
命令 #查看版本 mysql --version #进入mysql 命令 mysql -u root -p mysql -u root@localhost (没有密码的情况) #创建数据库 ...
- MYSQL 基础操作
1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样 ...
- MySQL基础操作&&常用的SQL技巧&&SQL语句优化
基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t ...
- mysql数据库优化课程---13、mysql基础操作
mysql数据库优化课程---13.mysql基础操作 一.总结 一句话总结:mysql复制表,索引,视图 1.mysql如何复制表? like select * 1.复制表结构 create tab ...
- MYSQL基础操作
MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...
- 【MySQL】MySQL基础操作语句
mysql基础操作语句,包括数据库的增.删.切换,以及表的增.删.改.查.复制. 创建数据库 mysql> create database tem; 使用数据库 mysql> use te ...
- MySQL基础操作(二)
MySQL基础操作 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用.注意:使用视图时 ...
- linux mysql 数据库操作导入导出 数据表导出导入
linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...
- 前端笔记之服务器&Ajax(中)MySQL基础操作&PHP操作数据库&Ajax
一.数据库基础 1.1什么是数据库? 什么是数据库? 答:就是一个很大的一个文件,只不过这个文件可以通过一些‘命令’操作数据: 增.删.改.查数据: 数据库等于持久数据和数据操作的一个统称. 数据库是 ...
随机推荐
- SpringCloud 设置多个运行实例的端口号
使用SpringCloud做集群,开发.测试阶段,经常要运行一个模块的多个实例,要修改端口号. 有3种方式. 方式一:配置文件 server.port=9001 方式二.修改引导类,控制台输入参数值 ...
- 在mac上进行JAVA开发
一. JDK 的下载与安装 终端输入java看看有没有安装java: 见到此弹窗,说明没有安装呀! 点击oracle官网链接: http://www.oracle.com/technetwork/j ...
- Flask的基本使用
最基本的一个Flask模板,实现本地9898端口访问,页面返回hello world from flask import Flask app = Flask(__name__) @app.route( ...
- CGMH:Constrained Sentence Generation by Metropolis-Hastings Sampling解读
根据关键字生成句子: 读进关键字,随机选择处理手段(增删改)以及待处理word的位置,然后计算接受/拒绝概率,根据概率生成一个新的序列,再循环这一过程,循环次数是500,每次都将困惑度最低的生成句子放 ...
- const和defin区别
(1)类型的安全性检查:const常量有数据类型,而define定义宏常量没有数据类型.则编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查(字符替换时可能会产生意料不到的错误 ...
- samba对外开放的端口
前言搭建samba的时候,如果是在内网\测试环境中,可以直接关闭防火墙,但是如果是在外网情况下,需要对防火墙开放某些端口.开放的具体步骤,下面我们来看. 操作步骤1.添加端口 firewall-cmd ...
- 普通的javaweb项目和用maven管理的javaweb project的目录结构的区别
图一,图二 这种就是单独的建立普通的(也就是没有用maven管理包)javaweb项目的结构目录,这种需要将普通的jar依赖放到lib目录下,之后通过bulid 图一
- win api 音频可视化
暂时记录,改天有时间再完善...其实写好好久了,但以前的代码丢了,重新写一遍.. 原理和 python 的一样,获取输入设备,然后把数据读取到 buffer 中,在绘制出来. 这里要注意两点: 1. ...
- bootstrap创建带遮罩层的进度条
<div class="modal fade" id="loadingModal"> <div style="width: 200p ...
- Springmvc-crud-01错误
错误:无法显示图书列表内容 原因:获取存储域对象中的名字写错了 controller层: 前端页面: 解决方案:前后端的代码要保持一致(名字自己定义),写代码要细心 修改成功后的界面