![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
数据库常见问题。
小白文
这个作者很懒,什么都没留下…
展开
-
MySQL:约束
##约束 *概念:对表中的数据进行限定,保证数据的正确性、有效性和完整性。 *分类: 1.主键约束:primary key 2.非空约束:not null 3.唯一约束:unique 4.外键约束:foreign key **非空约束:not null,值不能为null 1.创建表时添加约束 CREATE TABLE stu( id INT, NAME VARCHAR(20) NOT NULL -- name为非空 ); 2.创建表完后,添加非空约束原创 2021-08-08 17:12:01 · 48 阅读 · 0 评论 -
MySQL多表查询练习2
准备数据创建四张表,分别是:emp(员工表)、dept(部门表)、job、salarygrade(工资登记表)。// 创建emp(员工表)表并插入数据-- 员工表CREATE TABLE emp( id INT PRIMARY KEY, -- 员工id ename VARCHAR(50), -- 员工姓名 job_id INT, -- 职务id mgr INT, -- 上级领导 joindate DATE, -- 入职日期 salary DECIMAL(7,2), -- 工资 bo原创 2021-08-11 10:57:59 · 100 阅读 · 0 评论 -
数据库的备份和还原
**数据库的备份和还原 1.命令行: *语法: **备份:mysqldump -u用户名 -p密码 数据库名 > 保存的路径 **还原: *登录数据库 *创建数据库 *使用数据库 *执行文件 ---> source 文件路径 2.图形化工具(Navicat、SQLYog) 1.命令行备份步骤一:"win+R"打开命令行窗口,输入“mysqldump -u用户名 -p密码 数据库名 > 保存的路径”,如下图所示:还原步原创 2021-08-09 21:11:58 · 101 阅读 · 0 评论 -
MySQL:多表查询
##多表查询 *查询语法: select 列名列表 from 表名列表 where... *准备sql: #创建部门表 CREATE TABLE dept( id INT PRIMARY KEY auto_increment, NAME VARCHAR(20) ); INSERT INTO dept(NAME) VALUES ('开发部'), ('市场部'), ('财务部'); #创建员工表 CREATE TABLE emp(原创 2021-08-10 08:53:08 · 67 阅读 · 0 评论 -
MySQL基础
配置: *MySQL服务启动 1.手动 2.cmd --->services.msc 打开服务的窗口 3.使用管理员打开cmd *net start mysql:启动mysql服务 *net stop mysql:关闭mysql服务 *MySQL登录 1.mysql -uroot -p密码(123456) 2.mysql -hip -uroot -p连接目标的密码 3.mysql --host=ip --user=root --password=连接目标的密码原创 2021-07-29 20:59:54 · 60 阅读 · 0 评论 -
DML增删改表中数据
##DML:增删改表中数据 1.添加数据: *语法: insert into 表名(列名1,列名2,列名3,......,列名n)value(值1,值2,......值n); *注意: 1.列名和值要一一对应; 2.如果表名后,不定义列名,则默认给所有列添加值 insert into 表名 values(值1,值2,值3,......值n); 3.除了数字类型,其他类型需要使用引号(单双都可以)引起来 2.删除数据: *语法: delete from 表原创 2021-07-29 21:03:48 · 84 阅读 · 0 评论 -
数据库的设计:三大范式
##数据库的设计 1.多表之间的关系 *一对一(了解) **如:人和身份证 **分析:一个人只有一个身份证,一个身份证只能对应一个人 *一对多(多对一) **如:部门和员工 **分析:一个部门有多个员工,一个员工只能对应一个部门 *多对多 **如:学生和课程 **分析:一个学生可以选择很多门课程,一个课程也可以被很多学生选择 2.实现关系 **一对多(多对一) *如:部门和员工 *实现方式:在多的一方建立外键,指向一另一方的主键。原创 2021-08-09 20:26:45 · 103 阅读 · 0 评论 -
MySQL练习
创建“emp”表并插入数据:CREATE TABLE `emp` ( `EMPNO` INT(4) NOT NULL, `ENAME` VARCHAR(10) DEFAULT NULL, `JOB` VARCHAR(9) DEFAULT NULL, `MGR` VARCHAR(10) DEFAULT NULL, `HIREDATE` DATE DEFAULT NULL, `SAL` INT(7) DEFAULT NULL, `COMM` INT(7) DEFAULT NULL,原创 2021-08-10 20:56:51 · 332 阅读 · 0 评论 -
数据库连接池
数据库连接池##数据库连接池: *概念:其实就是一个容器(集合),存放数据库连接的容器。 *当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。 *好处: *节约资源 *用户访问高效 *实现: *1.标准接口:DataSource javax.sql包下的 *方法: **获取连接:getConnection() **归还连接:Connection.close()。原创 2021-08-15 20:23:35 · 65 阅读 · 0 评论 -
DQL查询表中记录
DQL:查询表中的记录 1.*语法: select 字段列表 from 表名列表 where 条件列表 group by 分组字段 having 分组之后的条件 order by 排序 limit 分页限定 2.基础查询 1.多个字段的查询 select 字段名1,字段名2... from 表名; *注意: *如果查询所有字段,则可以使用*来替代字段列表。 2.去除重复: distinct 3原创 2021-07-30 22:13:05 · 49 阅读 · 0 评论 -
DDL操作数据库、表
##DDL:操作数据库、表 1.操作数据:CRUD *C(Create):创建 *创建数据库 create database 数据库名称; *创建数据库,判断不存在,再创建: create database if not exists 数据库名称; *创建数据库,并指定字符集: create database 数据库名称 character set 字符集名; *练习:创建db4数据库,判断是否存在,并指定字符集为gbk create datab原创 2021-07-29 21:01:46 · 56 阅读 · 0 评论 -
MySQL事务
事务概念1.事务的基本介绍 *概念: **如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败。 *操作: 1.开启事务:start transaction; 2.回滚:rollback; 3.提交:commit; *例子: CREATE TABLE account( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10), balance DOUBLE原创 2021-08-11 20:02:38 · 51 阅读 · 0 评论 -
Redis基本概念
#Redis *概念:redis是一款高性能的NOSQL系列的非关系型数据库。 **redis.conf:配置文件 **redis-cli:客户端 **redis-server:服务器端 *命令操作: *redis的数据结构: **redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构 *value的数据结构: *1.字符串类型 string *2.哈希类型 hash :map格式 *3.列表类原创 2021-08-20 21:40:20 · 71 阅读 · 0 评论 -
redis集群安装
redis集群安装搭建redis集群需要准备三个节点,分别是:master、node1、node2。1.分别在三个节点中创建redis-cluster目录:master中创建redis-cluster目录:mkdir /usr/local/soft/redis-clusternode1中创建redis-cluster目录:mkdir /usr/local/soft/redis-clusternode2中创建redis-cluster目录:mkdir /usr/local/soft/r原创 2021-08-27 16:56:37 · 257 阅读 · 0 评论 -
redis主从复制
主从复制准备两个节点,分别是:master、node1。1.从master节点上将redis文件复制到node1节点上:scp -r redis node1:`pwd`2.切换至node1节点的/usr/local/soft/目录下查看redis:3.在master节点上启动主服务(主节点可以写数据和读数据):redis-server redis.conf 4.在node1节点上启动从服务器(从节点只能读数据,不能写数据): ./redis-server --port 6380 -原创 2021-08-27 11:26:54 · 134 阅读 · 0 评论 -
Java客户端 Jedis
*Jedis:一款java操作redis数据库的工具 *使用步骤 *获取连接 Jedis jedis = new Jedis("192.168.119.166",6379); *操作 String set = jedis.set("name", "chen"); System.out.println(set); *关闭连接 jedis.close();示例:/** * jedis的测试类 */public clas原创 2021-08-20 21:47:17 · 100 阅读 · 0 评论 -
CentOS7之Redis单节点安装
Redis单节点安装1.配置阿里云yum源(1)下载配置文件wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo(2)生成缓存yum makecache2.安装redis(1)安装依赖yum install -y gcc-c++ gcc tcl(2)通过xftp上传redis包至/usr/local/module/目录下(3)解压redis-3.0.0.t原创 2021-08-20 21:37:40 · 187 阅读 · 1 评论 -
JedisPoolUtils工具类
jedis.properties配置文件host=192.168.119.166port=6379maxTotal=50maxIdle=10JedisPoolUtils工具类public class JedisPoolUtils { private static JedisPool jedisPool; static { //读取配置文件 InputStream is = JedisPoolUtils.class.getClassLoader(原创 2021-08-20 21:50:50 · 282 阅读 · 0 评论