1、查看数据库列表信息

show databases;

2、进入数据库

use mysql(数据库名mysql);

3、查看数据表

show table info(表名info);

4、显示表结构信息(字段)

describe user(表user);

(1)其中PRI为主键(不能为空)

定义——确定表中唯一实体对象的标识

特点——唯一性、非空性

(2)其中Extra为约束条件

mysql 打开ldb_mysql bin指令集

5、创建数据库

create database named(库名named);

SQL语句

SQL语言

●是Structured Query Language的缩写,即结构化查询语言

●是关系型数据库的标准语言

●用于维护管理数据库,如数据查询、数据更新、访问控制、对象管理等功能

SQL分类

●DDL:数据定义语言:DDL语句用于创建数据库对象,如库、表、索引等

●DML:数据操纵语言:

●DQL:数据查询语言

●DCL:数据控制语言

典型数据库索引算法---二分查找

定义:以一个数据为参考,比他小的放左边,比他大的放右边。

DDL操作命令

1、用DDL语句新建库、表

创建数据库auth:

mysql> create database auth;

Query OK, 1 row affected (0.00 sec)

创建数据表:create table 表名 (字段定义........)

mysql> create table info(

-> ID int(4) not null,

-> 姓名 varchar(8) not null,

-> 住址 varchar(10) not null,

-> 成绩 decimal default 0,

-> primary key (ID));

Query OK, 0 rows affected (0.01 sec)

mysql> desc info;

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

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

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

| ID | int(4) | NO | PRI | NULL | |

| 姓名 | varchar(8) | NO | | NULL | |

| 住址 | varchar(10) | NO | | NULL | |

| 成绩 | decimal(10,0) | YES | | 0 | |

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

4 rows in set (0.00 sec)

2、用DDL语句删除库、表

删除指定的数据表:drop database table [数据库名.]表名

删除指定的数据库: drop database (数据库名database)

mysql> drop database auth;

Query OK, 0 rows affected (0.05 sec)

2、DML操作命令

DML语句用于对表中的数据进行管理

包括以下操作.

●inster:插入新数据

●update:更新原有数据

●delete:删除不需要的数据

(1).向数据表中插入新的数据记录

insert into 表名(字段1,字段2, .....) values(字段1的值,字段的值, .....);

mysql> insert into info values (1,'周妹儿','南京',80);

Query OK, 1 row affected (0.00 sec)

mysql> insert into info values (2,'张倩娣','南京',66);

Query OK, 1 row affected (0.00 sec)

mysql> insert into info values (3,'李向阳','上海',default);

Query OK, 1 row affected (0.02 sec)

(2)修改、更新数据表P F的数据记录

update 表名 set 字段名1=值1[,字段名2=值2] where 条件表达式;

mysql> update info set 住址='南京'where ID=3;

Query OK, 1 row affected (0.06 sec)

Rows matched: 1 Changed: 1 Warnings: 0

(3)在数据表中删除指定的数据记录

delete from 表名 where 条件表达式;

不带where条件的语句表示删除表中所有记录(谨慎操作);

#删除表中指定数据记录

mysql> delete from info where ID=2;

Query OK, 1 row affected (0.02 sec)

#删除表

mysql> drop table info;

Query OK, 0 rows affected (0.00 sec)

#删除库

mysql> drop database test;

Query OK, 0 rows affected (0.00 sec)

3、DQL操作命令

DQL是数据查询语句,只有一条: SELECT

用于从数据表中查找符合条件的数据记录

1.查询时可不指定条件

select 字段名1,字段名2..... from 表名;

mysql> select * from info;

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

| ID | 姓名 | 住址 | 成绩 |

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

| 1 | 周妹儿 | 南京 | 80 |

| 3 | 李向阳 | 南京 | 0 |

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

2 rows in set (0.00 sec)

2.查询时指定条件

select 字段名1,字段名2.... from 表名 where 条件表达式;

mysql> select 住址 from info where 住址='南京';

+--------+

| 住址 |

+--------+

| 南京 |

| 南京 |

+--------+

2 rows in set (0.04 sec)

4、DCL操作命令

1.设置用户权限(用户不存在时,则新建用户)

GRANT 权限列表 ON 数据库名.表名 TO 用户名@来源地址 [IDENTIFIED BY '密码']

mysql> grant all privileges on *.* to 'root'@'%' identified by 'abc123';

Query OK, 0 rows affected, 1 warning (0.08 sec)

2、查看用户的权限

SHOW GRANTS FOR 用户名@来源地址

mysql> show grants for 'root'@'%';

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

| Grants for root@% |

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

| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION |

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

1 row in set (0.00 sec)

3.撤销用户的权限

REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址

mysql> revoke all on *.* from 'root'@'%';

Query OK, 0 rows affected (0.00 sec)