MySQL入门(4)——使用datagrip操作表

时间:2024-10-30 08:17:22

一、SQL语句

MySQL数据库的SQL语句不区分大小写,关键字建议使用大写,以分号结尾。
例如:

SELECT * FROM user;

使用/**/、 - - 、# 的方式完成注释

/*
多行注释
*/

-- 单行注释

# 单行注释

二、SQL中数据类型

类型名称 说明
int 整数类型
double 小数类型
decimal(m,d) 指定整数位与小数位长度的小数类型
date 日期类型,格式为yyyy-MM-dd,包含年月日,不包含时分秒
datetime 日期类型,格式为 YYYY-MM-DD HH:MM:SS,包含年月日时分秒
timestamp 日期类型,时间戳 1970-01-01 00:00:00 - 2038-12-31 23:59:59
varchar(M) 文本类型, M为0~65535之间的整数(可变长度)
char(M) 文本类型, M为0~65535之间的整数(不可变长度)

三、表操作

1、创建表

/*
创建表, 格式:
create table 表名 (
字段名 数据类型[长度] [约束],
字段名 数据类型[长度] [约束],
...
);
注:[]中的内容是可选项
*/

例如创建表student, 字段包括 编号id\ 姓名name\ 年龄age:

CREATE TABLE student (
id INT,
name VARCHAR(100),
age INT
);

在这里插入图片描述
在这里插入图片描述
再例如创建表users, 字段包括 编号id\ 用户名username \ 密码password

CREATE TABLE users (
id INT,
username VARCHAR(100),
PASSWORD VARCHAR(100)
);

在这里插入图片描述

2、查看表

查看所有表

格式: show tables

SHOW TABLES;

在这里插入图片描述

查看指定表的建表结构

格式: show create table 表名;

SHOW CREATE TABLE users;

在这里插入图片描述

3、删除表

格式: drop table 表名;

DROP TABLE users;

4、修改表结构格式

对表中的列进行修改

1、添加新的列
格式: alter table 表名 add 新列名 数据类型(长度);

2.、修改列的数据类型(长度)
格式: alter table 表名 modify 列名 修改后的数据类型(长度);

3、 修改列的名称
格式: alter table 表名 change 列名 新列名 新列名的数据类型(长度);

4.、删除指定列
格式: alter table 表名 drop 列名;

删除行:delete from persons where pid= ‘1’;(主键)

ALTER TABLE student ADD `desc` VARCHAR(100);    -- 添加新的列
ALTER TABLE student MODIFY `desc` VARCHAR(50);  -- 修改列的数据类型(长度)
ALTER TABLE student CHANGE `desc` description VARCHAR(100);-- 修改列的名称
ALTER TABLE student DROP description;           -- 删除指定列

在这里插入图片描述

对表进行修改

1、修改表的名称
格式: rename table 表名 to 新表名;

2、修改表的字符编码
格式: alter table 表名 character set 字符编码;

RENAME TABLE student TO stu; -- 修改表的名称
ALTER TABLE stu CHARACTER SET gbk; -- 修改表的字符编码(把你上面做的修改显示出来)

在这里插入图片描述

四、表中记录操作

1、插入表记录

方式一:对指定的字段插入值
格式: insert into 表名(字段1, 字段2, ...) values (值1,值2, ...);
方式二: 对所有字段插入值
格式: insert into 表名 values(值1, 值2, ...);
方式三:一次性插入多条数据
格式: 表名(字段1, 字段2, ...) values (值1, 值2, ...),(值1, 值2, ...);

INSERT INTO student(id, NAME, age) VALUES(1, 'tom', 24);
INSERT INTO student(NAME, age) VALUES('lili', 22);
INSERT INTO student(id, NAME, age) VALUES(3, 'jim', NULL);
INSERT INTO student VALUES(4, 'jack', 26);
INSERT INTO student VALUES(5, 'zhangsan', 26),(6,'lisi',27);
INSERT INTO student (id ,name,age) VALUES (1,'李四',20),(2,'zhangsan',30);

输入命令并执行:
在这里插入图片描述
执行结果:
在这里插入图片描述

注意
1、值与字段必须对应,个数相同,类型相同
2、值的数据大小必须在字段的指定长度范围内
3、除了整数\小数类型外,其他字段类型的值必须使用引号引起来 (建议单引号)
4、如果要插入空值,可以不写字段, 或者插入null

2、更新表记录

格式: update 表名 set 字段1=值, 字段2=值... where 条件;

UPDATE student SET NAME='lili', age=21 WHERE id=1;  #把id=1的名字都改为lili且年龄都为21
UPDATE student SET age=25 WHERE age=27;             #将年龄为27的改为25

在这里插入图片描述
对比上面的内容可看出修改
在这里插入图片描述

注意
1、 列名的类型与修改的值要一致
2、 修改值时不能超过字段的长度范围
3、 除了整数\小数类型外,其他字段类型的值必须使用引号扩起来

3、删除表记录

格式: delete from 表名 where 条件;

DELETE FROM student WHERE id=1;
DELETE FROM student WHERE age IS NULL;

执行结果:
在这里插入图片描述