一、创建库

1、创建一个库:

create database 数据库名;
create database 库名 character set 编码;

mysql> create database mydatabase01;
Query OK, 1 row affected (0.34 sec) mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydatabase01 |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.03 sec) mysql> create database mydatabase02 character set gbk;
Query OK, 1 row affected (0.22 sec) mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydatabase01 |
| mydatabase02 |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0.00 sec)

查看编码:show create database mydatabase02;

mysql> show create database mydatabase01;
+--------------+-----------------------------------------------------------------------+
| Database | Create Database |
+--------------+-----------------------------------------------------------------------+
| mydatabase01 | CREATE DATABASE `mydatabase01` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+--------------+-----------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show create database mydatabase02;
+--------------+----------------------------------------------------------------------+
| Database | Create Database |
+--------------+----------------------------------------------------------------------+
| mydatabase02 | CREATE DATABASE `mydatabase02` /*!40100 DEFAULT CHARACTER SET gbk */ |
+--------------+----------------------------------------------------------------------+
1 row in set (0.00 sec)

2、删除一个库: drop database 库名;

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydatabase01 |
| mydatabase02 |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0.00 sec) mysql> drop database mydatabase02;
Query OK, 0 rows affected (0.54 sec) mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mydatabase01 |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)

3、使用库;use 库名;

mysql> use mydatabase01;
Database changed

4、查看当前正在使用的库;

mysql> select database();
+--------------+
| database() |
+--------------+
| mydatabase01 |
+--------------+
1 row in set (0.00 sec)

二、对数据库表的操作;

1、创建表

create table 表名(
字段名 类型(长度) [约束],
字段名 类型(长度) [约束]
);
字符类型:varchar(n)
单表约束:
* 主键约束:primary key,要求被修饰的字段:唯一 和 非空
* 唯一约束: unique,要求被修饰的字段:唯一
* 非空约束: not null,要求被修饰的字段:非空约束
mysql> create table user(
-> uid int(32) primary key auto_increment,
-> uname varchar(32),
-> upassword varchar(32)
-> );
Query OK, 0 rows affected (0.94 sec)

2、查看数据库表:

mysql> show tables;
+------------------------+
| Tables_in_mydatabase01 |
+------------------------+
| user |
+------------------------+
1 row in set (0.03 sec)

3、查看表的结构

mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
3 rows in set (0.05 sec)

4、删除表;

mysql> drop table user;
Query OK, 0 rows affected (0.43 sec) mysql> show tables;
Empty set (0.00 sec)

5、修改表:

5.1、添加一列:alter table 表名 add 字段名 类型(长度) [约束]

mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
3 rows in set (0.01 sec) mysql> alter table user add uinfo varchar(32) not null;
Query OK, 0 rows affected (0.58 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
| uinfo | varchar(32) | NO | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

5.2 、修改列的类型(长度\约束):alter table 表名 modify 要修改的字段名 类型(长度)[约束]

mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
| uinfo | varchar(32) | NO | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec) mysql> alter table user modify uinfo varchar(64) null;
Query OK, 0 rows affected (1.39 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
| uinfo | varchar(64) | YES | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

5.3 、修改列的列名:alter table 表名 change 旧列名 新列名 类型(长度)[约束]

mysql> alter table user change uinfo info varchar(32) not null;
Query OK, 0 rows affected (1.26 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
| info | varchar(32) | NO | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

5.4、删除表的列:alter table 表名 drop 列名

mysql> alter table user drop info;
Query OK, 0 rows affected (0.95 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> desc user;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| uid | int(32) | NO | PRI | NULL | auto_increment |
| uname | varchar(32) | YES | | NULL | |
| upassword | varchar(32) | YES | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

5.5 、修改表名:rename table 表名 to 新表名

mysql> show tables;
+------------------------+
| Tables_in_mydatabase01 |
+------------------------+
| user |
+------------------------+
1 row in set (0.00 sec) mysql> rename table user to tbl_user;
Query OK, 0 rows affected (0.42 sec) mysql> show tables;
+------------------------+
| Tables_in_mydatabase01 |
+------------------------+
| tbl_user |
+------------------------+
1 row in set (0.00 sec)

5.6 、修改表的字符集: alter table 表名 character set 编码

查看表当前的编码:
mysql> show create table tbl_user;
+----------+------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------+
| Table | Create Table
|
+----------+------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------+
| tbl_user | CREATE TABLE `tbl_user` (
`uid` int(32) NOT NULL AUTO_INCREMENT,
`uname` varchar(32) DEFAULT NULL,
`upassword` varchar(32) DEFAULT NULL,
PRIMARY KEY (`uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+----------+------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)
mysql> alter table tbl_user character set gbk;
Query OK, 0 rows affected (0.23 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> show create table tbl_user;
+----------+------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------+
| Table | Create Table |
+----------+------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------+
| tbl_user | CREATE TABLE `tbl_user` (
`uid` int(32) NOT NULL AUTO_INCREMENT,
`uname` varchar(32) CHARACTER SET utf8 DEFAULT NULL,
`upassword` varchar(32) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`uid`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk |
+----------+------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------+
1 row in set (0.00 sec)

待续.....

MySQL(三)的更多相关文章

  1. MySQL(三)

    MYSQL(三) 上一章给大家说的是数据库的视图,存储过程等等操作,这章主要讲索引,以及索引注意事项,如果想看前面的文章,url如下: MYSQL入门全套(第一部) MYSQL入门全套(第二部) 索引 ...

  2. mysql(三) 数据表的基本操作操作

    mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...

  3. MySQL三种存储引擎总结

    MySQL三种存储引擎 MyISAM.InnoDB.MEMORY 1.MyISAM MyISAM,3.23.34a前的默认存储引擎. 优缺点 优点 在于占用空间小,处理速度快. 缺点 不支持事务的完整 ...

  4. mysql三种带事务批量插入

    原文:mysql三种带事务批量插入 c#之mysql三种带事务批量插入 前言 对于像我这样的业务程序员开发一些表单内容是家常便饭的事情,说道表单 我们都避免不了多行内容的提交,多行内容保存,自然要用到 ...

  5. 确保数据零丢失!阿里云数据库RDS for MySQL 三节点企业版正式商用

    2019年10月23号,阿里云数据库RDS for MySQL 三节点企业版正式商用,RDS for MySQL三节点企业版基于Paxos协议实现数据库复制,每个事务日志确保至少同步两个节点,实现任意 ...

  6. [mysql]三种方法为root账户指定密码

    前言:前段时间把mysql安装后一直没管它,当时就在奇怪为什么mysql登陆不要密码,原来一直用的超用户账户登陆的(简称超级用户) 其实只怪自己太无知,之前一直用的phpbydamin进行的数据库的可 ...

  7. MySQL(三) 数据库表的查询操作【重要】

    序言 1.MySQL表操作(创建表,查询表结构,更改表字段等), 2.MySQL的数据类型(CHAR.VARCHAR.BLOB,等), 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对 ...

  8. mysql 三种恢复方式

    为了保障数据的安全,需要定期对数据进行备份.备份的方式有很多种,效果也不一样.一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复.从而将损失降到最低.下面我们来了解一下MySQL常见的有 ...

  9. 【转】Mysql三种备份详解

    一.备份的目的 做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 二.备份需要考虑的问题 可以容忍丢失多长时间的数据:恢复数据要在多长时间内 ...

  10. mysql三个应用场景

    场景一,数据表自动备份(多个数据表字段同步等),使用触发器.如updatelog记录对资源的所有操作日志,reslastlog记录资源最后操作的日志信息.同步方式实现如下: //创建表 DROP TA ...

随机推荐

  1. mysql join用法简介

    为什么需要join 为什么需要join?join中文意思为连接,连接意味着关联即将一个表和多个表之间关联起来.在处理数据库表的时候,我们经常会发现,需要从多个表中获取信息,将多个表的多个字段数据组装起 ...

  2. [NOI 2018] 归程

    Description 传送门 Solution 65分做法 先求出每个点到\(1\)号点的最短路,记为\(d[i]\).然后按照海拔从大到小依次加边,并查集维护每个连通块中\(d[i]\)的最小值, ...

  3. 【BZOJ2721】樱花(数论)

    [BZOJ2721]樱花(数论) 题面 BZOJ 题解 先化简一下式子,得到:\(\displaystyle n!(x+y)=xy\),不难从这个式子中得到\(x,y\gt n!\). 然后通过\(x ...

  4. Linux-高可用Keepalived概念篇

    keepalived 高可用 Keepalived介绍 Keepalived 软件起初是专为 LVS 负载均衡软件设计的,用来管理并监控 LVS 集群系统中各个服务节点的状态,后来又加入了可以实现高可 ...

  5. SpringBoot+thymeleaf+security+vue搭建后台框架 基础篇(一)

    刚刚接触SpringBoot,说说踩过的坑,主要的还是要记录下来,供以后反省反省! 今天主要讲讲 thymeleaf+security 的搭建,SpringBoot的项目搭建应该比较简单,这里就不多说 ...

  6. 【CH2401】送礼物

    题目大意:NPC 子集和问题. 题解:先搜索一半的物品重量和,记录在一个数组中,并将该数组排序并去重.再搜索另一半物品,到达目标状态后,在前一半物品记录的重量中查找小于当前剩余重量的最大值,更新答案即 ...

  7. 编写高质量的Python代码系列(七)之协作开发

    如果多个人要开发同一个Python程序,那就得仔细商量代码的写法了.即使你是一个人开发,也需要理解其他人所写的模块.本节讲解多人协作开发Python程序时所用的标准工具及最佳做法. 第四十九条:为每个 ...

  8. python--协程之特别篇

    Python通过yield提供了对协程的基本支持,但是不完全.而第三方的gevent为Python提供了比较完善的协程支持. gevent是第三方库,通过greenlet实现协程,其基本思想是: 当一 ...

  9. mix-blend-mode

    mix-blend-mode是一个css3新增的混合color与背景元素颜色的样式,同一个元素的两个颜色不影响. mix-blend-mode: normal;          //正常mix-bl ...

  10. mysqldump 备份数据和恢复

    命令行下具体用法如下:  mysqldump -u用戶名 -p密码 -d 数据库名 表名 > 脚本名; 一.导出数据: 导出整个数据库结构和数据mysqldump -h localhost -u ...