网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
命令行中输入quit或者exit可以退出。
DataGrip运行 *本人使用的是DataGrip,文章主要用DataGrip演示
DataGrip是数据库客户端软件,功能强大,可以兼容各种数据库。
基本使用:
1)创建工程项与链接数据库
注意点:下方如果出现黄色感叹号就是缺少驱动,点击download会自动安装
时区报错解决方法
Advanced中找到serverTimezone,后方修改为UTC
创建完成后,输入show databases
2)DataGrip配置
File-> settings ->Editor ->CodeStyle->SQL->MySQL->Case
修改完后点击Apply应用修改后的设置!!!!
File-> settings ->Editor ->General->Smart Keys
File-> settings ->Database->Query Execution
快捷键:Ctrl+Enter(快速执行SQL语句)
*注意点:如果写sql的console创建找不到了?点击新建的链接,按F4
三、SQL语句介绍
SQL全称结构化查询语言,是关系型数据库管理系统都需要遵循的规范,是操作关系型数据库语言,都支持SQL
虽然所有的关系型数据库都支持SQL,但是不同的关系型数据库都会有一些特殊的东西(特有的函数或语法)
1.SQL语句分类
DDL:数据定义语言,用来定于数据库对象:数据库,表,列等。
DML:数据操作语言,用来对数据表中的记录进行增、删、改
DQL:数查询语言,用来禅心数据库中的表记录
DCL:数据库控制语言,用来定义数据库的访问权限和安全级别,及用户创建
2.通用语法
SQL语句可以单行或多行书写,以分号结尾
可以使用空格和缩进来增加语句的可读性
DataGrip中快速格式化按键:ctrl+alt+l
Mysql数据库的SQL语句不区分大小写,关键字建议使用大写;
可以使用/**/或–以及#的方式来进行注释
3.创建数据库
4.删除数据库
5.创建数据表
6.查看表的数据和结构
7.修改、删除表
四、数据类型和约束
1.数据类型
在创建表的时候为表中字段指定的数据类型,只有符合数据类型要求才能存储起来
使用数据类型的原则是:够用就行,尽量使用取值范围小的,能节省内存
常用数据类型:
整数:bit,tinyint,smallint,mediumint,int,bigint
小数:decimal,doube,float
字符串:varchar,char,text
日期时间:date,time,datatime
枚举类型(enum):比如表中有一列存性别:男、女
数据类型说明:
decimal表示浮点数,如decimal(5,2)表示5位数,小数占两位
char表示固定长度的字符串,如char(3),如果填’ab’时会补充一个空格为’ab ',3表示字符数
varchar表示可变长度的字符串,如varchar(3),如果填’ab’时会存储为’ab’,3表示字符数
text表示存储大文本,当字符当于4000时推荐使用
对于图片、音频、视频等文件,不能存储在数据库中,而是上传到某个服务器上,然后在表中存储这个歌文件的保存路径
2.数据约束
数据约束是指数据在数据类型限定的基础上额外增加的要求
常见约束:
主键 primary key:唯一标识表中的一行记录。
非空 not null:此字段不允许填写空值。null表示空
唯一 unique:此字段的值不允许重复。
默认 default:当不填写字段对应的值会使用默认值,如果填写时以填写为准
外键 foreigner key:对关系字段进行约束,当关系字段填写值是会关联到表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常
五、表字段操作
1.添加表字段
2.修改表字段
3.表的增、删、改、查
六、DDL约束进阶
1.主键约束
primary key越是唯一标识数据库表中的每条记录
主键必须包含唯一的值
主键列不能包含null值
每个表都应该有一个主键,并且每个表有且只能有一个主键
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
mg-RYh4Oj8T-1715307199107)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!