MySQL---表的创建、修改、删除

MySQL—表的创建、修改、删除

创建、查看、删除数据库

  • 创建数据库
CREATE DATABASE IF NOT EXISTS db_name;
* 显示数据库语句
SHOW DATABASES;
  • 显示数据库创建语句
SHOW CREATE DATABASE db_name;
  • 数据库删除语句
DROP DATABASE IF EXISTS db_name;
  • 切换数据库
use db_name;
  • 查看当前使用的数据库
select database();
  • 修改数据库名
    MySQL不允许修改数据库名!

数据在数据库中的存储方式

1.Java是使用对象封装数据,例如程序产生了如上所示2个user对象,这些对象的数据要想保存到数据库中,需要在数据库中创建与之对应的表,一个user对象中封装的数据,要保存到数据库中,一般就要在数据库中创建一个与之对应的表。

2.对象的属性定义为表头,对象的数据对应于表中的一条记录。

3.每个对象对应于表中的一条记录。

所谓创建表,其实我们在声明定义列,也叫字段。定义完成之后直接往表中插入数据即可。

  • 表的一行称之为一条记录
  • 表中一条记录对应一个java对象的数据

MySQL支持所有标准SQL数值数据类型

日期时间类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。

每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。

字符串类型 主要是:varchar 和 char

创建表

  • IF NOT EXISTS 判断表是否存在
  • 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据表时如果输入该字段的数据为NULL ,就会报错
  • AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1
  • PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔
  • ENGINE 设置存储引擎,CHARSET 设置编码
  • DEFAULT 设置字段的默认值
  • COMMENT 对表或表的字段添加注释

创建student表

create table if not exists student(
id int(10) not null AUTO_INCREMENT comment '学号'
,name varchar(10) not null comment '姓名'
,sex varchar(3) not null comment '性别'
,clazz varchar(8) comment '班级'
,primary key(id)
)engine=InnoDB default charset=utf8;

查看表结构

desc student;

查看建表语句

show create table student;

INSERT语句

  • 使用 INSERT 语句向表中插入数据

      INSERT INTO	 table [(column [, column...])] VALUES		(value [, value...]);
    
  • 插入的数据应与字段的数据类型相同

  • 数据的大小应在列的规定范围内,例如:不能将一个长度为80的字符串加入到长度为40的列中

  • 在values中列出的数据位置必须与被加入的列的排列位置相对应

  • 字符和日期型数据应包含在单引号中

  • 插入空值:不指定或insert into table value(null)

插入一条数据
insert into student(id,name,sex,clazz) values(20221401,'张三','男','十四班');
插入多条数据
insert into student(id,name,sex,clazz) 
values(20221402,'李四','女','十四班')
,(20221403,'王二','男','十四班');

alter语句

插入列

alter table student add date varchar(10) default '日期'; 

修改表的名称

修改表的名称:rename table 旧表名 to 新表名;

rename table student to students;

修改表字段名

修改列的名称:alter table 表名 change 旧字段 新字段 字段类型;

alter table students change sex gender varchar(3);

删除列

alter table 表名 drop 字段名;

alter table students drop date;

修改表结构

alter table students modify id varchar(10);

修改表字符集

alter table students character set gbk;

修改库字符集

alter database db_name character set gbk;

将表删除并重新创建(不可逆)

删除表并重新创建,此操作会造成数据的丢失,不可逆操作

truncate table students;

update语句

使用update语句修改表中数据

  • UPDATE语法可以用新值更新原有表行中的各列
  • SET子句指示要修改哪些列和要给予哪些值
  • WHERE子句指定应更新哪些行。注意:如没有WHERE子句,则更新所有的行
update students set age=age+2 where id<=3;

使用该语句需要加上条件,不然会将你所有数据都更新。

delete语句

  • 如果不使用where子句,将删除表中所有数据
  • Delete语句不能删除某一列的值(可使用update)
  • 使用delete语句仅删除记录,不删除表本身。如要删除表,使用drop table语句
  • 删除表中的所有数据也可使用TRUNCATE TABLE 语句
delete from student where sex='男';

                       💝到底啦!给靓仔一个关注吧!💖
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liangzai2048

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值