MySQL数据库服务配置好后,系统会有4个默认的数据库.

information_schema:虚拟对象,其对象都保存在内存中

performance_schema:服务器性能指标库

mysql:记录用户权限,帮助,日志等信息

test:测试库

MySQL数据库及表的管理

1.查询所有数据库

mysql> show databases;

2.创建数据库

语法:CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name

默认指定编码格式为utf-8

mysql> create database if not exist db_name;

自定义编码格式

mysql> create database db_name default character set utf8;

删除数据库

mysql> drop database if exists db_name;

3.修改数据库

查询编码格式

mysql> show create database db_name;

修改编码格式

alter database db_name default character set gbk;

4.管理表

1.创建表及查看表

查看表

USE db_name;

show tables;

查看表结构

desc tbl_name;

查看表中的列

SHOW COLUMNS FROM tbl_name;

查看表的状态信息

show table status like 'tbl_name';

创建表语法:

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (

... 字段定义 ...,

model VARCHAR(20) NOT NULL,

... 字段定义 ...

);

创建表:

mysql> create table tbl_name(

-> id int(11) not null auto_increment,

-> name char(16) not null,

-> age int default null,

-> address char(50) not null,

-> primary key(id)

-> )engine=innodb default charset=utf8

-> ;

Query OK, 0 rows affected (0.02 sec)

表中插入数据:

向MySQL数据表插入数据通用的INSERT INTOSQL语法:

INSERT INTO table_name ( field1, field2,...fieldN )

VALUES

( value1, value2,...valueN );

5.添加,删除或重新定义列,使用ALTER命令.

给表中添加字段

alter table tbl_name add column 字段名 varchar(5);

在表中删除字段

alter table tbl_name drop column 字段名;

在表中添加id字段

alter table tbl_name add id int not null

primary key auto_increment first;

更改列定义或名称

要改变列的定义,使用MODIFY 或CHANGE 子句以及ALTER命令。 例如, 要改变字段 c 从 CHAR(1) 修改为 CHAR(10), 那么可以这样做:

mysql> ALTER TABLE tbl_name MODIFY c CHAR(10);

CHANGE语法可能有点不同。CHANGE关键字后的名称是要修改的列,然后指定新的定义,其中包括新的名称。试试下面的例子:

#其中i为旧字段,j为新字段.

mysql> ALTER TABLE tbl_name CHANGE i j int;

更改列的默认值

可以使用ALTER命令更改任何列的默认值。尝试下面的例子.

mysql>ALTER TABLE tbl_name ALTER d SET DEFAULT 1000;

mysql> SHOW COLUMNS FROM tbl_name;

+-------+---------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+-------+---------+------+-----+---------+-------+

| c | char(1) | YES | | NULL | |

| d | int(11) | YES | | 1000 | |

+-------+---------+------+-----+---------+-------+

2 rows in set (0.00 sec)

从任何一列删除默认的约束,可以使用ALTER命令以及DROP子句

mysql> ALTER TABLE tbl_name ALTER i DROP DEFAULT;

mysql> SHOW COLUMNS FROM tbl_name;

+-------+---------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+-------+---------+------+-----+---------+-------+

| c | char(1) | YES | | NULL | |

| d | int(11) | YES | | NULL | |

+-------+---------+------+-----+---------+-------+

2 rows in set (0.00 sec)

更改表类型

可以通过使用ALTER命令以及TYPE子句修改表的类型。试试下面的例子,将 tbl_name 的类型更改为MyISAM 表类型。

若想要知道一个表的当前类型,那么可使用 SHOW TABLE STATUS 语句。

mysql> ALTER TABLE tbl_name TYPE = MYISAM;

mysql> SHOW TABLE STATUS LIKE 'tbl_name'\G

*************************** 1. row ****************

Name: tbl_name

Type: MyISAM

Row_format: Fixed

Rows: 0

Avg_row_length: 0

Data_length: 0

Max_data_length: 25769803775

Index_length: 1024

Data_free: 0

Auto_increment: NULL

Create_time: 2017-04-03 18:35:36

Update_time: 2017-04-03 18:35:36

Check_time: NULL

Create_options:

Comment:

1 row in set (0.00 sec)

删除数据表:

mysql> DROP TABLE tbl_name;

将表中记录清空:

mysql> DELETE FROM tbl_name;

mysql>truncate table tbl_name;

重命名表:

mysql> rename table tbl_name to tb2_name;

或者

mysql> ALTER TABLE tbl_name RENAME TO tb2_name;

复制表数据(数据一样结构不同)

create table t2 select * from t1;

复制表结构

CREATE TABLE 新表 SELECT * FROM 旧表WHERE 1=2

或者

CREATE TABLE 新表 LIKE 旧表

MYSQL二级表的管理_MySQL库和表的管理相关推荐

  1. MySQL数据库之DDL语言:库和表的创建CREATE、修改ALTER、删除DROP

    文章目录 @[TOC] MySQL数据库之DDL语言:库和表的创建.修改.删除 1.DDL 数据定义语言 2.库的管理 2.1 库的创建 2.2 库的修改(能修改的不多,如修改字符集) 2.3 库的删 ...

  2. Mysql 引擎 表还是库_mysql 库、表、引擎

    innoDB和myisam的区别 InnoDB支持事物,而MyISAM不支持事物 InnoDB支持行级锁,而MyISAM支持表级锁 InnoDB支持MVCC, 而MyISAM不支持 InnoDB支持外 ...

  3. mysql 创建表字段长度范围_Mysql的建表规范与注意事项

    一. 表设计规范 库名.表名.字段名必须使用小写字母,"_"分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 建议使用Inno ...

  4. mysql 共享表空间存储_MySQL InnoDB共享表空间

    简介ibdata1 ibdata1文件是InnoDB存储引擎的共享表空间文件,存放位置my.ini 中的 datadir="D:\phpStudy\MySQL\data",目录下. ...

  5. mysql分片库分页查询_Mysql分库分表

    一.数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值.在业务Service来看就是,可用数据库连接少甚至无连接可用.接下来就 ...

  6. mysql pdo 插入没效果_MySQL分库分表后用PHP如何来完美操作

    当单表达到几千万时,查询一次要很久,如果有联合查询,有可能会死在那 分库分表主要就是解决这个问题,减小数据库的负担,缩短查询时间分库 1)按功能分 用户类库.商品类库.订单类库.日志类.统计类库... ...

  7. mysql如何查看表的大小_mysql 如何查看表的大小

    mysql 查看表的大小方法:1.查看所有数据库各表容量大小,代码为[truncate(data_length/1024/1024, 2) as '数据容量(MB)']:2.查看指定数据库各表容量大小 ...

  8. mysql查看数据库表大小语句_MySQL查看数据库表容量大小的命令语句讲解

    MySQL查看数据库表容量大小的命令语句讲解 发布时间:2020-04-27 14:17:23 来源:亿速云 阅读:180 作者:三月 本文主要给大家介绍MySQL查看数据库表容量大小的命令语句讲解, ...

  9. mysql 修改表结构方案_MySQL中修改表结构时需要注意的一些地方

    MySql 在修改表结构的时候可能会中断产品的正常运行影响用户体验,甚至更坏的结果,丢失数据.不是所有的数据库管理员.程序员.系统管理员都非常了解Mysql能避免这种情况.DBA会经常碰到这种生产中断 ...

最新文章

  1. 曾被ICLR拒稿,字节跳动今斩获最佳论文,ACL 2021各大奖项揭晓
  2. 关于盒子塌陷的几种解决方法
  3. 清空数据库错误:因为该表正由 FOREIGN KEY 约束引用 解决办法
  4. BZOJ 2442: [Usaco2011 Open]修剪草坪 单调队列
  5. ftp 断点续传 Android,Android使用FTP实现断点续传
  6. ListString^^ 引用空间
  7. 究竟哪种取数据的方式最快?
  8. 金融评分卡项目—9.违约预测模型的后续工作
  9. 360笔试题-字符置换
  10. Excel数据透视表制作
  11. 浅谈机顶盒破解之修改开机画面 修改开机动画 修改系统app 去掉认证app
  12. 关于ATM机的JAVA实验报告书,Java实习报告(ATM自动柜员机)
  13. 高级计量经济学及stata应用 学习笔记③ 长面板
  14. java调用dll 指针参数_java调用c dll,指针参数和结构体参数搞定
  15. 【算法java版01】:键盘录入一个字符串,将字符串中的大写改成小写,小写改成大写,数字改成*
  16. BUUCTF 从娃娃抓起
  17. php 考试座位编排系统,具才考场座次编排系统
  18. 面试题-评价一下你之前公司的领导、同事或之前学校中的导师、同学
  19. ccna网络工程师考试_PrepAway提供的Cisco CCNA无线认证考试问题-建立成功的网络工程师的职业
  20. 用户管理和文件权限部分练习题

热门文章

  1. HaProxy介绍,安装及配置
  2. 二十八、layui的日历组件使用
  3. 微服务部署:蓝绿部署、滚动部署、灰度发布等部署方案对比与总结
  4. oracle之 11g RAC R2 体系结构---Grid
  5. 电脑svchost进程占用内存
  6. Android开发_如何调用系统默认浏览器访问
  7. BCGControlBar菜单编程方法详解
  8. 关于微机开操作票的研究22437
  9. SpringBoot使用Redis和MyBatis完成缓存数据的增删改查
  10. java map输出中括号,从地图检索数据时获取双方括号