MySQL基础知识精华汇总_3(mysql基础命令操作)

时间:2022-09-16 21:22:10

 

登录 MySQL

当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:

mysql -h 主机名 -u 用户名 -p

参数说明:

  • -h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
  • -u : 登录的用户名;
  • -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。

如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:

mysql -u root -p

按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:

Enter password:

若密码存在, 输入密码登录, 不存在则直接按回车登录。登录成功后你将会看到 Welcome to the MySQL monitor... 的提示语。

然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。

MySQL 创建数据库

第一种方法:
CREATE DATABASE 数据库名;

操作如下:

MySQL基础知识精华汇总_3(mysql基础命令操作)

第二种方法创建:

使用 mysqladmin 创建数据库

 

 

MySQL基础知识精华汇总_3(mysql基础命令操作)

 

MySQL 删除数据库

drop 命令删除数据库

drop database <数据库名>;

MySQL基础知识精华汇总_3(mysql基础命令操作)

 

 

使用 mysqladmin 删除数据库

mysqladmin -u root -p drop 数据库名
MySQL基础知识精华汇总_3(mysql基础命令操作)

MySQL 选择数据库

通过上面例子知道怎么创建数据库了,那么就自己创建几个数据库,然后在让我们尝试选择数据库。

在 登录mysql数据库中后,使用use 数据库名,即可选择我们需要使用的数据库

MySQL基础知识精华汇总_3(mysql基础命令操作)

执行以上命令后,你就已经成功选择了 RUNOOB 数据库,在后续的操作中都会在 RUNOOB 数据库中执行。

注意:所有的数据库名,表名,表字段都是区分大小写的。所以你在使用SQL命令时需要输入正确的名称。

MySQL 数据类型

MySQL中定义数据字段的类型对你数据库的优化是非常重要的。

MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。

数值类型

MySQL基础知识精华汇总_3(mysql基础命令操作)

 

日期和时间类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。

每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。

TIMESTAMP类型有专有的自动更新特性,将在后面描述。

MySQL基础知识精华汇总_3(mysql基础命令操作)

字符串类型

字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节描述了这些类型如何工作以及如何在查询中使用这些类型。

MySQL基础知识精华汇总_3(mysql基础命令操作)

 

MySQL 创建数据表

创建MySQL数据表需要以下信息:

  • 表名
  • 表字段名
  • 定义每个表字段

语法

以下为创建MySQL数据表的SQL通用语法:

CREATE TABLE table_name (column_name column_type);
例子:

mysql> create table if not exists bokeyuan_student(
-> bky_id int unsigned auto_increment,
-> bky_title varchar(200) not null,
-> bky_author varchar(40) not null,
-> bky_date date,
-> primary key (bky_id)
-> )engine=InnoDB default charset=utf8;
Query OK, 0 rows affected (0.04 sec)

MySQL 删除数据表

DROP TABLE table_name ; (太简单了不举例说明了)

删除表内数据,用 delete。格式为:

delete from 表名 where 删除条件;

实例:删除学生表内姓名为张三的记录。

delete from student where T_name = "张三";

清除表内数据,保存表结构,用 truncate。格式为:

truncate table 表名;

实例:清除学生表内的所有数据。

truncate  table  student;

删除表用 drop,就是啥都没了。格式为:

drop  table  表名;

实例:删除学生表。

drop table student;

1、当你不再需要该表时, 用 drop;

2、当你仍要保留该表,但要删除所有记录时, 用 truncate;

3、当你要删除部分记录时, 用 delete。

 

1、drop table table_name : 删除表全部数据和表结构,立刻释放磁盘空间,不管是 Innodb 和 MyISAM;

实例,删除学生表:

drop table student;

2、truncate table table_name : 删除表全部数据,保留表结构,立刻释放磁盘空间 ,不管是 Innodb 和 MyISAM;

实例,删除学生表:

truncate table student;

3、delete from table_name : 删除表全部数据,表结构不变,对于 MyISAM 会立刻释放磁盘空间,InnoDB 不会释放磁盘空间;

实例,删除学生表:

delete from student;

4、delete from table_name where xxx : 带条件的删除,表结构不变,不管是 innodb 还是 MyISAM 都不会释放磁盘空间;

实例,删除学生表中姓名为 "张三" 的数据:

delete from student where T_name = "张三";

5、delete 操作以后,使用 optimize table table_name 会立刻释放磁盘空间,不管是 innodb 还是 myisam;

实例,删除学生表中姓名为 "张三" 的数据:

delete from student where T_name = "张三";

实例,释放学生表的表空间:

optimize table student;

6、delete from 表以后虽然未释放磁盘空间,但是下次插入数据的时候,仍然可以使用这部分空间。