美文网首页
20210121--MYSQL入门知识

20210121--MYSQL入门知识

作者: 負笈在线 | 来源:发表于2021-01-21 16:25 被阅读0次

1.MYSQL服务的启动、停止、查看

      # systemctl status mysql

      # systemctl start mysql

      # systemctl stop mysql

2.MYSQL登录

      # mysql -uroot -p123456

      # mysql -u用户名 -p用户密码 (-h, --host=name    Connect to host.)

3.创建数据库

      mysql> create database test ;

4.删除数据库

      mysql> drop  database test ;

4.创建数据表

      mysql> create database test ;      //创建数据库

      Query OK, 1 row affected (0.02 sec)

      mysql> use test                  //选择数据库

      Database changed

      mysql> CREATE TABLE runoob_tbl(                //数据表的名字是runoob_tbl

          -> runoob_id INT NOT NULL AUTO_INCREMENT,

          -> runoob_title VARCHAR(100) NOT NULL,

          -> runoob_author VARCHAR(40) NOT NULL,

          -> submission_date DATE,

          -> PRIMARY KEY ( runoob_id )

          -> )ENGINE=InnoDB DEFAULT CHARSET=utf8;

      Query OK, 0 rows affected (0.08 sec)

5.删除数据表

      mysql> use test;

      Database changed

      mysql> DROP TABLE runoob_tbl;              //删除数据表 runoob_tbl

      Query OK, 0 rows affected (0.03 sec)

6.select查询

      mysql> select * from runoob_tbl ;            //查询表 runoob_tbl

      Empty set (0.01 sec)

      mysql> select runoob_id,runoob_title from runoob_tbl ;      //查询runoob_tbl表中runoob_id和runoob_title字段

      Empty set (0.01 sec)

      mysql> select runoob_id,runoob_title from runoob_tbl where    runoob_title="woniu";                        //在runoob_tbl表中查询字段runoob_title=“woniu”的ip

      Empty set (0.00 sec)

      mysql> select runoob_id,runoob_title from runoob_tbl where runoob_title="woniu" order by       runoob_title desc;    //在runoob_tbl表中查询字段runoob_title=“woniu”的runoob_id,runoob_title,按照runoob_title倒序

      Empty set (0.00 sec)

7.切换命令

      mysql> show databases;  //显示所有的库

      mysql> use  test;            //选择数据库,库的ID是test

      mysql> show  tables;      //显示库中所有的表,要先use 选中数据库

      mysql> show create table  runoob_tbl;      //查看表结构

      mysql> show  index  from  runoob_tbl;      //显示数据表的详细索引信息,包括PRIMARY KEY(主键)。

      mysql> quit                    //退出mysql

      mysql> exit                    //退出mysql

8.模糊查询--like

      mysql> select  * from runoob_tbl  where  username like '%wugui';              //在 runoob_tbl 表中获取username字段中以 wugui为结尾的的所有记录

'%a'    //以a结尾的数据

'a%'    //以a开头的数据

'%a%'    //含有a的数据

      mysql> SELECT * FROM runoob_tbl  WHERE name LIKE 'mysql%';              //查询以 mysql字段开头的信息。

      mysql> SELECT * FROM runoob_tbl  WHERE name LIKE '%mysql%';              //查询包含 mysql字段的信息。

      mysql> SELECT * FROM runoob_tbl  WHERE name LIKE '%mysql';              //查询以 mysql字段结尾的信息。

9.从其他导出数据插入新表(导入大数据)

      insert into warn_message(username,strength,ip,port,clienttype,logtime,country,warn_type)       select username,strength,ip,port,clienttype,logtime,country,warn_type from warn_message;

10.修改数据表的默认编码格式

      mysql> alter table runoob_tbl  convert to character set utf8;

11.清空表数据

      mysql> truncate table runoob_tbl;

12.查看MySql版本号

方法一:

# mysql -V

mysql  Ver 14.14 Distrib 5.5.62, for Linux (x86_64) using readline 5.1

方法二:

mysql> status;

--------------

mysql  Ver 14.14 Distrib 5.5.62, for Linux (x86_64) using readline 5.1

Connection id:          1054902

Current database:      test

Current user:          root@localhost

SSL:                    Not in use

Current pager:          stdout

Using outfile:          ''

Using delimiter:        ;

Server version:        5.5.62-log Source distribution

Protocol version:      10

Connection:            Localhost via UNIX socket

Insert id:              2

Server characterset:    utf8mb4

Db    characterset:    utf8mb4

Client characterset:    utf8

Conn.  characterset:    utf8

UNIX socket:            /tmp/mysql.sock

Uptime:                390 days 13 hours 38 min 1 sec

Threads: 2  Questions: 9867825  Slow queries: 5  Opens: 3885  Flush tables: 1  Open tables: 231  Queries per second avg: 0.292

--------------

mysql>

方法三:

mysql> show variables like '%version%';

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

| Variable_name          | Value              |

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

| innodb_version          | 5.5.62              |

| protocol_version        | 10                  |

| slave_type_conversions  |                    |

| version                | 5.5.62-log          |

| version_comment        | Source distribution |

| version_compile_machine | x86_64              |

| version_compile_os      | Linux              |

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

7 rows in set (0.00 sec)

方法四:mysql> select version();

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

| version()  |

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

| 5.5.62-log |

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

1 row in set (0.00 sec)

13.插入数据

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

                      VALUES

                      ( value1, value2,...valueN );

      mysql> insert into runoob_tbl values(1,1,1,1)

14.修改表

(1)修改表类型

语法:ALTER TABLE tablename MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]

例如,修改表emp 的ename 字段定义,将varchar(10)改为varchar(20):

      mysql> alter table emp modify ename varchar(20);

(2)、增加表字段

语法:ALTER TABLE tablename ADD [COLUMN] column_definition [FIRST | AFTER col_name]

例如,表emp 上新增加字段age,类型为int(3):

      mysql> alter table emp add age int(3);

(3)、删除表字段

语法:ALTER TABLE tablename DROP [COLUMN] col_name

例如,将字段age 删除掉:

      mysql> alter table emp drop age;

(4)、字段改名

语法:ALTER TABLE tablename CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name]

例如,将age 改名为age1,同时修改字段类型为int(4):

      mysql> alter table emp change age age1 int(4);

(5)、修改字段排列顺序

前面介绍的的字段增加和修改语法(ADD/CNAHGE/MODIFY)中,都有一个可选项first|after column_name,这个选项可以用来修改字段在表中的位置,默认ADD 增加的新字段是加在表的最后位置,而CHANGE/MODIFY 默认都不会改变字段的位置。

例如,将新增的字段birth date 加在ename 之后:

      mysql> alter table emp add birth date after ename;

修改字段age,将它放在最前面:

      mysql> alter table emp modify age int(3) first;

(6)、表改名

语法:ALTER TABLE tablename RENAME [TO] new_tablename

例如,将表emp 改名为emp1,命令如下:

      mysql> alter table emp rename emp1;

相关文章

网友评论

      本文标题:20210121--MYSQL入门知识

      本文链接:https://www.haomeiwen.com/subject/exldzktx.html