01-mysql基本操作

1. 命令行操作数据库

1.1 数据库连接:

mysql -u root -p123456 //mysql -u root -p //123456此处u:user=root p:password=123456

1.2数据库操作:

所有的数据库命令末尾都要加;表示结束或在cmd中->后面单独补上“;”

数据库已存在

show databaseS; --查看mysq里面的所有数据库

mysql> use school --切换数据库里面

show tables; --显示数据库里面的表

describe student;--查看表中所有的信息

数据库不存在

create database web;--创建数据库

show databaseS;

use web--可不加";"--切换到数据库里面

show tables--展示数据库里面的表

tip:GUI中刷新一下

小知识:

exit;--退出连接

--:单行注释

/*

多行注释

*/

数据库XX语言 CRUD(create,retrieve检索查询,update,delete)

DDL 定义

DML 操作

DQL 查询(数据库80%的语言都是在查询)

DCL 控制

2.GUI操作数据库

tip:不分大小写

2.1创建

create database if not exists web /[if not exists]加上[]是可选的,不加[]是必选的

2.2删除

drop database [if exists] web

2.3使用数据库

use school切换数据库,最上边更改目录了,``在tab键的上面,表名和列名是特殊字符时 show

2.4查看所有数据库

show databaseS; 对照sqlyog的可视化操作:历史记录

desc table; 查看数据库里面的表的字段类型//或者可以用show columns from table

select * from table ;查看表里面的数据

3. 数据库的数据类型:

3.1数值:

tinyint 1个字节 ​

smallint 2个字节

​mediunint 3个字节

​ int 4个字节 ​

bigint 8个字节 ​

float 浮点数 4个字节 ​

double 浮点数 8 个字节 ​

decimal 字符串类型的浮点型 金融计算的时候,一般是使用decimal

3.2字符串:

char 字符串固定的大小 0~255 ​

varchar 可变字符串 0~65535 ( !常用的变量用varchar保存 String)

tinytext 微型文本 2^8-1 text 文本串 2^16-1 (常用保存大文本)

3.3时间与日期:

java.util.Date

​ 1. date YYYY-MMMM-DD ,日期格式 ​

2. time HH:mm:ss 时间格式 ​

3. datetime YYYY-MM-DD HH:mm:ss 最常用的时间格式 ​

4. timestamp 时间戳 1970.1.1到现在的毫秒数,全国统一,也常用

5. year 年份表示

6. Null: ​ 没有值未知,不能用null进行计算结果为null

3.4常用:

int varchar text datetime timestamp 数据库字段属性中,固定的长度e:int就不要再长度里面写,会出错

3.5数据库字段属性

Unsigned ​

无符号的整数,声明了该列不能为负数 ​

zerofill ​

0填充的,不足的位数,使用0来填充 ​

自增 ​

自动在上一条记录的基础上+1(默认),通常用来设计唯一的主键-index, ​ 必须是整数类型,可以自定义设计主键的起始值和步长 ​

非空NULL not null ​

not null 如果不给赋值,就会报错 ​ null不赋值,默认就是null ​

默认 ​

设置默认值,e:sex默认值为男,不写也是男,刷新一下

4.练习

4.练习

 create table if not exists `student`(
     `id` int(4) not null auto_increment comment '学号',
     `name` varcar(30) not null default '匿名' comment'姓名', 
     `pwd` varchar(20) not null default '123456' comment'密码',
     `sex` varchar(2) not null default '女' comment'性别',
     `birthday` datetime default null comment'出生日期',
     `address` varchar(100)default null comment'家庭住址', 
     `email` varchar(50) default null comment'邮箱', 
     primary key(`id`) 
 )engine=innodb default charset=utf8
 show create database school --查看创建数据库的语句
 show create table student --查看student数据表的定义语句
 desc student --显示表的结构
 --关于数据库引擎
 /*
 INNODB默认应用
 MYISAM 早些年使用的
 */
 MYISAMINNODB
事务支持不支持支持
数据行锁定不支持支持
外键约束不支持支持
全文索引支持支持
表空间的大小较小较大,约为MY的2倍

常规使用操作:

  • MYISAM 节约空间,速度较快

  • INNODB 安全性高,事务的处理,多表多用户操作 "shift+tab退出无序列表"

在物理空间存在的位置 所有的数据库文件都存在data目录下 本质还是文件的存储! MySQL引擎在物理文件上的区别

  • InnoDB在数据库中只有一个*.frm文件,以及上级目录下的ibdata1文件

  • MYISAM对应文件

    • *.frm 表结构的定义文件

    • *.MYD 数据文件 (data)

    • *.MYI 索引文件 (index)

设置数据库表的字符集编码

 charset=utf8

不设置的话,会是Mysql默认的字符集编码~(不支持中文!) MySQL的默认编码是Latin1,不支持中文 在my.ini中配置默认的编码

 character-set-server=utf8

5.修改删除表

5.1修改表的属性

修改表名:

 alter table 旧表名rename as 新表名

增加表的字段

 alter table 表名 add 字段名 列属性
 alter table teacher ADD age INT(11)

修改表的字段(重命名,修改约束)

 alter table teacher1 modify age varchar(11)--修改约束
 alter table teacher change age age1 int(1)--字段重命名

删除表的字段

 alter table teacher1 drop age1

删除表

 drop table if exists teacher1

所有的创建和删除操作尽量加上判断,以免报错 “couple==”

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值