一、创建库

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. Linux调整日期时间

    Linux日期不准确,要更改 Linux 系统整个系统范围的时区可以使用如下命令: sudo rm -f /etc/localtime sudo ln -s /usr/share/zoneinfo/A ...

  2. Git学习指北

    learnGitBranching:一个可视化学习 git 的网站 learngitbranching.js.org,虽然项目有些悠久,如果学习 git 的话可以来玩下

  3. CentOS 7 安装Git

    服务器端 1.先从yum安装git yum –y install git 2.在需要的位置创建一个裸仓库(最后以.git结尾) cd /usr/local mkdir git cd git git i ...

  4. Tornado实现多进程/多线程的HTTP服务

    用tornado web服务的基本流程 实现处理请求的Handler,该类继承自tornado.web.RequestHandler,实现用于处理请求的对应方法如:get.post等.返回内容用sel ...

  5. Linux 系统从入门到精通的学习大纲;

    以前没有接触过Linux,生产环境需要,有时候遇到问题,百度一下,问题解决了,在遇到问题,在百度,有时候问题是如何解决的,为什么会解决有点丈二的和尚摸不着头脑, 为此,想用一段时间,系统的学习下Lin ...

  6. python之路day10-命名空间和作用域、函数嵌套,作用域链、闭包

    楔子 假如有一个函数,实现返回两个数中的较大值: def my_max(x,y): m = x if x>y else y return mbigger = my_max(10,20)print ...

  7. Mac下查看node等的安装路径

  8. window.location.href 传参中文乱码问题!!!

    不是所有地方都会用Ajax  当你使用window.location.href 来传中文参数的时候 如何避免乱码问题 js 是这样写的    下面代码中  方式 封装编码  参数 username  ...

  9. cucumber测试项目报错

    [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building th ...

  10. Vue学习笔记三:v-bind,v-on的使用

    目录 v-bind:绑定属性值,内容相当于js,缩写: v-on:绑定方法,缩写@ 总结 v-bind:绑定属性值,内容相当于js,缩写: 我添加了一个input标签,如下 <input typ ...