使用mysql数据库

使用mysql数据库

一、查看数据库结构

1.1查看当前服务器中包含的库

SHOW DATABASES;

mark

1.2查看当前使用的库中包含的表

MYSQL数据库的数据文件存放于/usr/local/mysql/data目录下,每个数据库对应一个子目录,用于存储数据表文件。每一个数据表文件对应三个文件,后缀名分别为.“frm” ".myd " “.myi”。

少数以opt、csm 、csv、ibd结尾的。

USE mysql; 切换到所使用的库
SHOW TABLES;

mark

1.3有几个用户

select user from user;

mark

1.4查看表的结构(字段)

DESCRIBE 数据库名. 表名

mark

1.5SQL语言概述

  • SQL语言

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

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

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

  • SQL分类

    DDL:数据定义语言

    DML:数据操纵语言

    DQL:数据查询语言

    DCL:数据控制语言

二、创建及删除库和表

2.1创建新的库

CREATE DATABASES 库名;

mark

2.2创建新的表

CREATE TABLE表名(字段01名称字段01类型字段01约束,字段02名字段02类型字段02约束……)存储引擎,字符集

字段01名称∶属性名称,自定义
字段01类型∶
int(5)整型 00000-99999 

double 浮点型8字节
decimal(5,2)有效数字是5位,小数点后面保留2位 100.00 099.50 

float 单精度浮点4字节char(10)固定长度字符串

varchar(50)可变长度字符串

char 字符

字段01约束∶

非空约束∶内容不允许为空

主键约束∶非空且唯一 标识

默认值∶假如没有填数据,默认预先设定的值填写

自增特性∶id 1234 auto_increment

存储引擎∶myisam innodb 

字符集∶UTF-8




示例

use school

create table info (id int(3) not null primary key auto_increment,name varchar(10) not null,score decimal(5,2),address varchar(50) default’ 未知’);

mark

2.3 drop table 表名;删除表

示例

drop table tmp;

mark

2.4删除一个数据库

DROP DATABASE score;

mark

三、管理表中数据记录

3.1插入数据记录

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

insert into info (id,name,score,address) values (1,‘张三’ ,‘75.5’, ‘南京’ );

mark

不加字段,默认所有字段(必须写全)

insert into info values (2,‘李四’,‘78’,‘上海’);

mark

insert into info (name,score,address) values (‘王五’,88,‘苏州’),(‘王二麻子’,60,default);

mark

default 默认字段为之前创建表时设置的约束字段

3.2查询数据记录

SELECT字段名1,字段名2…FROM表名 where 条件表达式

'*'可以表示筛选所有字段,若显示所有数据记录可以省略WHERE条件语句

示例

select * from school.info;

mark

若依据特定条件查找记录时,WHERE条件语句必不可少。

示例

select * from info where score >80;

mark

把筛选出的内容创建成一张新表

create table tmp as select * from info where score >75;

mark

3.3修改、更新数据表中的数据记录

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

示例

将info表中address对应的"未知"改为常州

update info set address=‘常州’ where name=‘王二麻子’;

mark

3.4设置用户权限

  • 若用户已存在,则更改用户密码
  • 若用户不存在,则新建用户
  • GRANT 权限列表 ON 数据库名.表名 TO 用户名@来源地址 [IDENTIFIED BY ‘密码′ ]
mysql> grant all privileges on *.* to 'tom'@'%' identified by 'abc123' with grant option;
'//all privileges:所有权限,%:所有终端'
Query OK, 0 rows affected, 1 warning (0.00 sec)

flush privileges;

3.5跳过密码登录

vim /etc/my.cnf

skip-grant-tables 跳过表的加载

mark

mark

3.6修改登录密码

update mysql.user set authentication_string =password(‘1234567’) where user=‘tom’;

mark

3.7删除数据记录

delete from 表名 where条件表达式

示例 删除school库中tmp表中分数大于80的记录

delete from school.tmp where score >80;

mark

注:不带where 条件情况下,删除整个表,慎用!!!!

3.8清空表

truncate table 表名  清空表内数据

示例

truncate table info;
mark

delect from 表名 删除表

示例

drop table tmp;

[外链图片转存中…(img-oU3mFzDN-1597752357957)]

注:不带where 条件情况下,删除整个表,慎用!!!!

3.8清空表

truncate table 表名  清空表内数据

示例

truncate table info;
[外链图片转存中…(img-qo4zQOnO-1597752357958)]

delect from 表名 删除表

示例

drop table tmp;

mark

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值