mysql数据库栏目_MySQL数据库简单操作 - mysql数据库栏目 - 自学php

对于想要从事或爱好mysql相关工作的童鞋们,有必要掌握在命令行下对mysql实现一些简单的操作。本文从描述了如何登录到mysql数据库服务器,如何在mysql提示符下发布命令,创建数据库,以及执行一些简单的DML操作。

1、连接到与退出mysql

为了连接mysql数据库服务器,当调用mysql时,通常需要提供一个MySQL用户名并且很可能需要一个密码。如果服务器

运行在登录服务器之外的其它机器上,还需要指定主机名。联系管理员以找出进行连接所使用的参数 (即,连接的主机

、用户名和使用的密码)。知道正确的参数后,可以按照以下方式进行连接:

shell> mysql -h host -u user -p

mysql> select version(),current_date;

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

| version() | current_date |

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

| 5.6.17-enterprise-commercial-advanced | 2014-04-28 |

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

1 row in set (0.03 sec)

--在允许匿名登录到本地服务器的情下可以直接在shell提示符下直接输入mysql即可实现登录

mysql> #提示符告诉你mysql准备为你输入命令。

shell> mysql

--输入分号表示结束命令输入并执行该命令

--成功地连接后,可以在mysql>提示下输入QUIT (或\q ,exit)随时退出

mysql> QUIT

Bye

--在Unix中,也可以按control-D键断开服务器。

mysql执行命令可分为非交互与交互模式

a) 非交互模式

非交互模式,也叫批模式,也就是将想要运行的命令放在一个文件中,然后告诉mysql从文件读取它的输入。

通常用于返回数据量较大,以及批量管理,执行特殊脚本运行的情形。

shell> mysql

[root@linux1 ~]# more query.sql

show databases;

use cnfo

select * from tb_tmp;

[root@linux1 ~]# mysql -u root -pmysql

Warning: Using a password on the command line interface can be insecure.

Database

information_schema

cnfo

mysql

performance_schema

test

name sex birth

Jack F 2014-04-28

John M 2013-04-28

--也可以使用下面的2种方式来执行批

mysql > source /

mysql > \./

--如下面的演示

[root@linux1 ~]# mysql -u root -pmysql

mysql> source query.sql

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

| Database |

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

| information_schema |

| cnfo |

| mysql |

| performance_schema |

| test |

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

5 rows in set (0.00 sec)

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

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

| name | sex | birth |

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

| Jack | F | 2014-04-28 |

| John | M | 2013-04-28 |

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

2 rows in set (0.00 sec)

也可以在shell模式下直接执行SQL,如下面的方法:

-e or --execution=option

shell>mysql -e "SQL cmd1;SQL cmd2;.."

shell>mysql --execute="SQL cmd1;SQL cmd2;.."

b) 交互模式

交互模式就是直接在mysql提示符下发布命令并执行命令。

如下操作,不区分大小写,输入回车后会得到命令执行的结果,即为交互模式。

mysql> SELECT VERSION(), CURRENT_DATE;

mysql> select version(), current_date;

mysql> SeLeCt vErSiOn(), current_DATE;

--简单计算

mysql> select power(2,3),(5-1)*4;

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

| power(2,3) | (5-1)*4 |

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

| 8 | 16 |

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

1 row in set (0.00 sec)

--分号分割多行

mysql> select version();select current_date;

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

| version() |

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

| 5.6.17-enterprise-commercial-advanced |

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

1 row in set (0.01 sec)

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

| current_date |

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

| 2014-04-28 |

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

1 row in set (0.00 sec)

--换行输入命令

--注,可以输入空行

mysql> select user(),

-> current_date;

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

| user() | current_date |

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

| root@localhost | 2014-04-28 |

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

1 row in set (0.00 sec)

--取消执行当前命令

mysql> select current_date()\c

4、mysql常用提示符的含义

5、日常操作

--创建数据库

mysql> create database cnfo;

Query OK, 1 row affected (0.00 sec)

--切换数据库

mysql> use cnfo

Database changed

--查看当前数据库

mysql> select database();

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

| database() |

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

| cnfo |

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

1 row in set (0.00 sec)

--启动mysql时连接到指定数据库

[root@linux1 ~]# mysql -u root -p cnfo

Enter password:

mysql> select database();

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

| database() |

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

| cnfo |

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

1 row in set (0.01 sec)

--在当前库创建表

mysql> create table tb_tmp(name varchar(20),

-> sex char(1),birth date);

Query OK, 0 rows affected (0.09 sec)

--显示当前库所有的表

mysql> show tables;

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

| Tables_in_cnfo |

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

| tb_tmp |

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

1 row in set (0.00 sec)

--查看表的定义信息

mysql> desc tb_tmp

-> ;

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

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

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

| name | varchar(20) | YES | | NULL | |

| sex | char(1) | YES | | NULL | |

| birth | date | YES | | NULL | |

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

3 rows in set (0.02 sec)

-- Author : Leshami

-- Blog : http://blog.csdn.net/leshami

--为表插入记录

mysql> insert into tb_tmp values('Jcack','F','20140428');

Query OK, 1 row affected (0.08 sec)

mysql> insert into tb_tmp values('John','M','20130428');

Query OK, 1 row affected (0.02 sec)

--查看表上的记录

mysql> select * from tb_tmp;

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

| name | sex | birth |

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

| Jcack | F | 2014-04-28 |

| John | M | 2013-04-28 |

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

2 rows in set (0.00 sec)

--更新表上的记录

mysql> update tb_tmp set name='Jack' where name='Jcack';

Query OK, 1 row affected (0.01 sec)

Rows matched: 1 Changed: 1 Warnings: 0

--过滤查询

mysql> select * from tb_tmp where sex='F';

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

| name | sex | birth |

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

| Jack | F | 2014-04-28 |

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

1 row in set (0.00 sec)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值