MySQL是一种广泛使用的关系型数据库管理系统,由Oracle公司支持,它以其可靠性、可扩展性和快速性著称,适用于各种平台如UNIX、Linux和Windows,在MySQL中建库建表是数据管理的基础操作,下面将详细介绍其原理与步骤:
创建数据库
1、语法:CREATE DATABASE IF NOT EXISTS '指定库名' DEFAULT CHARSET UTF8;
2、示例:CREATE DATABASE IF NOT EXISTS dbtest DEFAULT CHARSET UTF8;
3、解析:
CREATE
:创建命令
DATABASE
:数据库关键字
IF NOT EXISTS
:如果不存在则创建
DEFAULT CHARSET UTF8
:设置默认字符编码为UTF8,支持部分中文字符
创建数据表
1、语法:CREATE TABLE IF NOT EXISTS '表名' ('字段名称' '数据类型', '字段名称' '数据类型') ENGINE=INNODB DEFAULT CHARSET=UTF8;
2、示例:CREATE TABLE IF NOT EXISTS studentinfo ( id INT PRIMARY KEY AUTO_INCREMENT NOT NULL, name VARCHAR(20) NOT NULL, age INT NOT NULL, gender VARCHAR(5) NOT NULL, birthday DATE NOT NULL, phone VARCHAR(30) NULL ) ENGINE=INNODB DEFAULT CHARSET=UTF8;
3、解析:
CREATE TABLE
:创建表命令
IF NOT EXISTS
:如果不存在则创建
ENGINE=INNODB
:指定存储引擎为InnoDB,支持事务处理
DEFAULT CHARSET=UTF8
:设置默认字符编码为UTF8
PRIMARY KEY
:主键
AUTO_INCREMENT
:自动递增,通常用于ID字段
NOT NULL
:字段值不能为空
NULL
:字段值可以为空
插入数据
1、单条数据插入:INSERT INTO '表名' ('指定插入字段') VALUES ('按照前面的指定按顺序插入对应');
2、示例:INSERT INTO studentinfo (name,age,gender,birthday,phone) VALUES ('张三',23,'男','19870501',18874562135);
3、多条数据插入:INSERT INTO '表名' ('指定插入字段') VALUES ('按照前面的指定按顺序插入对应数据1'), ('按照前面的指定按顺序插入对应数据2'), ...;
4、示例:INSERT INTO studentinfo (name,age,gender,birthday,phone) VALUES ('张三',23,'男','19870501',18874562135), ('李四',19,'男','20020811',14796325674), ...;
查询数据
1、全表查询:SELECT * FROM '表名';
2、示例:SELECT * FROM studentinfo;
3、条件查询:SELECT '字段' FROM '表名' WHERE '条件';
4、示例:SELECT name FROM studentinfo WHERE gender='男';
5、模糊查询:SELECT * FROM '表名' WHERE '字段' LIKE '模式';
6、示例:SELECT * FROM studentinfo WHERE name LIKE '小%';
更新数据
1、语法:UPDATE '表名' SET '需要修改的字段结果' WHERE '条件';
2、示例:UPDATE studentinfo SET age=18 WHERE name='小明';
删除数据
1、语法:DELETE FROM '表名' WHERE '条件';
2、示例:DELETE FROM studentinfo WHERE name='小红';
Hibernate ORM自动建表原理
Hibernate是一个Java持久化框架,通过对象关系映射(ORM)技术实现Java对象和数据库表之间的转换,Spring Boot集成了Hibernate,可以在应用启动时根据实体类自动创建数据表,以下是自动建表的主要步骤:
1、配置数据源:在application.properties文件中配置数据源信息。
2、扫描实体类:Spring Boot在启动时扫描标注了@Entity注解的Java类,识别出需要创建的数据表。
3、生成建表语句:Hibernate根据实体类的属性和注解生成对应的DDL(Data Definition Language)语句。
4、执行建表操作:通过JDBC连接数据库,执行生成的DDL语句,完成数据表的创建。
相关概念
1、JPA(Java Persistence API):Java持久化API,用于规范Java对象与关系数据库之间的映射和持久化操作。
2、Hibernate ORM:JPA的一种实现,提供了丰富的数据查询和检索工具,简化SQL和JDBC手动处理数据的繁琐工作。
3、Spring Data JPA:对基于JPA的数据访问层的增强支持,集成了Hibernate ORM等功能。
FAQs
1、如何在MySQL中创建数据库?
答案:使用CREATE DATABASE IF NOT EXISTS '指定库名' DEFAULT CHARSET UTF8;
命令可以创建数据库。CREATE DATABASE IF NOT EXISTS dbtest DEFAULT CHARSET UTF8;
。
2、如何在MySQL中创建数据表?
答案:使用CREATE TABLE IF NOT EXISTS '表名' ('字段名称' '数据类型', '字段名称' '数据类型') ENGINE=INNODB DEFAULT CHARSET=UTF8;
命令可以创建数据表。CREATE TABLE IF NOT EXISTS studentinfo ( id INT PRIMARY KEY AUTO_INCREMENT NOT NULL, name VARCHAR(20) NOT NULL, age INT NOT NULL, gender VARCHAR(5) NOT NULL, birthday DATE NOT NULL, phone VARCHAR(30) NULL ) ENGINE=INNODB DEFAULT CHARSET=UTF8;
。
MySQL作为一种功能强大的关系型数据库管理系统,通过灵活的SQL语句可以实现复杂的数据操作,无论是手动编写SQL语句还是利用Hibernate ORM实现自动建表,都能满足不同应用场景的需求,掌握这些基本操作和原理,对于开发和维护数据库应用具有重要意义。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1097229.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复