mysql基础(1)

本文详细介绍了如何在MySQL中创建和管理数据库、表,包括设置字段、主键、约束,以及增删改操作,如添加新列、删除字段、插入和更新数据。
摘要由CSDN通过智能技术生成

mysql基础

1、创建和删除

  • 数据库名、表名不得超过30个字符,变量名限制为29个
  • 必须只能包含 A–Z, a–z, 0–9, _共63个字符
  • 数据库名、表名、字段名等对象名中间不要包含空格
  • 同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名
  • 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。如果坚持使用,请在SQL语句中使用`(着重号)引起来
  • 保持字段名和类型的一致性:在命名字段并为其指定数据类型的时候一定要保证一致性,假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了

1.1 数据库

以创建about_stu数据库为例

CREATE DATABASE about_stu; # 创建数据库
SHOW DATABASES;   # 查看数据库
# DROP DATABASE about_stu;  # 删除数据库,一般用不到,慎用

1.2 表

以创建stu_info表为例

USE about_stu;   # 确定使用的数据库
CREATE TABLE stu_info(
        student_id INT PRIMARY KEY,  # 主键是能确定一条记录的唯一标识
        `name` VARCHAR(20),  # 与保留字冲突,着重号引起来
        major VARCHAR (20)
)

# 主键的另一种写法
CREATE TABLE stu_info(
        student_id INT , 
        `name` VARCHAR(20), 
        major VARCHAR (20),
        PRIMARY KEY(stu_info)
)

constraints 限制 约束:

  • NOT NULL(非空)

  • UNIQUE(唯一)

  • 预设值 DEFAULT:如果插入数据时未插入,则填入预设值

  • AUTO_INCREMENT 实现加一的功能,在student_id后加上后,不用再给其赋值,会在我们插入其其他列数据时自动加一,我们只需要插入其他值

# 举例,根据需要使用
  CREATE TABLE stu_info(
 		student_id INT AUTO_INCREMENT,
 		`name` VARCHAR(20) NOT NULL,      # name插入数据时不可为空
		major VARCHAR (20) UNIQUE,     # major插入数值时不可重复
		`class` INT DEFAULT 5,   # 不给class传入值,则默认为5
		PRIMARY KEY(student_id)
 )
DESCRIBE stu_info;  # 显示表的具体信息
# DROP TABLE stu_info;  # 删除表

2、增删改

-- 增加新的属性(列)
ALTER TABLE stu_info ADD score INT;  # 增加一列成绩

-- 删除表格中的属性
ALTER TABLE stu_info DROP score;

以最开始创建的表stu_info为例

2.1 插入修改数据

# 按顺序插入数据
INSERT INTO stu_info VALUES(1,'小白','历史');
INSERT INTO stu_info VALUES(2,'小黑','生物');
INSERT INTO stu_info VALUES(3,'小绿','NULL');

# 按自己定义顺序填入数据
INSERT INTO stu_info(major,student_id,`name`) VALUES('英语',4,'小蓝');
# 查看表中的所有内容
SELECT * FROM stu_info;

在这里插入图片描述

# 修改列中的值
# 将历史改成历史文学
UPDATE stu_info SET major='历史文学'
WHERE major='历史';
# 将id为3的主修改为历史文学
UPDATE stu_info SET major='历史文学'
WHERE student_id='3';
# 将主修为生物或者英语改成生物英语
UPDATE stu_info SET major='生物英语'
WHERE major = '生物' OR major = '英语';
# 将id为1的主修改成化学,名字改成小辉
UPDATE stu_info SET major='化学',`name` = '小辉'
WHERE student_id='1';

# 把一列的值全改变就是不加条件
UPDATE stu_info SET major = 科学技术;

# 删除,若不加条件表中内容全删
DELETE from stu_info
WHERE `name` = '小蓝';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值