数据库,库和表

数据库(database/DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。

数据库管理系统(database management system/DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中的数据。

  • 登录mysql

    • 使用命令行登录 mysql -uroot -p123456

    • Navicat连接

  • 退出

    • exit

DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;

DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据-增删改);

DQL(*)(Data Query Language):数据查询语言,用来查询记录(数据)。

DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别;

注意: sql语句以;结尾(偶尔见到有\g结尾 , \G 也可以...)

查询数据库

show databases; 

创建数据库

create database 库名;

修改

创建数据库时,默认字符集是utf8.
修改命令只能修改字符集,不能修改数据库名.
alter database ....

删除数据库

drop database 库名;

操作表的前提是,得先进入某个数据库,才能操作数据库内部的表

选择/进入数据库

use 库名;

查询当前所在库

select database();

查询当前库下所有表

show tables;

创建表

create table 表名(
字段1 数据类型(长度),
字段2 数据类型(长度),
...
);

常用数据类型

数据类型解释长度
int整型11,可以不写,默认11
varchar字符串0-255
char字符串0-255
double浮点型(5,2)总长5位,其中包含两位小数,999.99
date日期没有长度
datetime日期时间没有长度
timestamp时间戳没有长度

数据库中,字符串不分单字符,所有字符串都是==单引号括==.使用char和varchar都可以代表字符串

varchar和char的区别

var是variable的缩写,就是可变化的字符串,例如varchar(10), 存入'张三'

char是定长,例如char(10),存入'张三 '

修改表名

rename table 旧名 to 新名;

修改列名

alter table 表名 change 旧名 新名 数据类型(长度)

查看表结构

desc 表名;

加一列

alter table 表名 add 新列名 数据类型(长度);

删列(就是定义的元素或者值)

alter table 表名 drop 列名;

删表

drop table 表名;

总结

创建--> create database/table

修改 --> alter database/table

删除--> drop database/table

查询 --> show databases/tables

DML

数据操作语言,针对表中数据进行操作,主要是对表数据进行增,删,改。

增加(insert)

/*
语法
    insert into 表名(字段1,字段2,...) values (值1,值2,...);
其他用法:
1 当要插入全部列时,表名后的列名可以省略
  此时要注意,值的顺序要与原表的顺序一致
2 可以指定部分列,插入数据
  列和值的顺序,数量,数据类型要一一对应
3 字符串使用单引号
4 日期,暂时也是使用单引号括起
5 可以支持同时插入多条数据
  values后用()分别写多条数据,用逗号隔开
*/
-- 标准语法
insert into stu (id,name,age,sex,birthday) 
values (1,'张三丰',130,'男','1890-01-01');
​
-- 省略
insert into stu values(2,'张无忌',18,'男','1890-01-01')
-- 插入部分数据
insert into stu (id,name) values (3,'赵敏');
insert into stu (id,name) values (4,6); -- 可以,因为mysql支持类型转换,单不建议
insert into stu (id,name) values ('5',6);-- 可以,因为mysql支持类型转换,单不建议
-- 日期类型,支持yyyy-MM-dd或yyyy/MM/dd
insert into stu values(7,'武器大师',18,'男','1990/01/01')
-- 插入多条数据
insert into stu values 
(8,'狗头',18,'公','1990/01/01'),
(9,'雷克顿',19,'公','1991/01/01'),
(10,'阿兹尔',20,'男','1981/01/01');

修改(update)

/*
语法:
    update 表名 set 字段1=值1[,字段2=值2,...] [where 字段 = 值];
*/
-- 标准
update stu set age = 25,name = '曾阿牛' where id = 2;
-- where条件虽说可加可不加.但是不加的话将影响全部数据.
-- 所以,强烈建议!!!以后更新必须加条件。

删除(delete)

/*
语法:
    delete from 表名 [where 字段 = 值];
    从表中删除数据,强烈建议加条件,否则会删除全部数据!!!!
    公司实际开发,一般不会真的删除数据,
    会在表中设计[状态]字段,删除其实是在执行update,更新状态而已.
*/
delete from stu where id = 10;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值