前言: 在之前的几篇博客中写过.NET Core使用NPOI导出Word和Excel的文章,今天把同样我们日常开发中比较常用的使用Excel导入数据到MySQL数据库中的文章给安排上。...,在项目中会有一些注释关于升级到.NET Core3.1需要修改的代码这里就不做详细的讲解了可以Clone项目,或者是直接查看官方文档.NET Core相关版本的迁移指南(https://docs.microsoft.com...二、ASP.NET Core使用EF Core连接MySQL执行简单的CRUD操作: 因为该篇文章会涉及到MySQL数据库的操作,所以前提我们需要有一点的CRUD的基础。...: a、一种是.XLS是03版的Office Excel,无法打开高版本的。...Word详解: https://www.cnblogs.com/Can-daydayup/p/11588531.html .NET Core使用NPOI将Excel中的数据批量导入到MySQL:
为了测试需要,麦老师制作了各个版本的Oracle数据库环境,下载地址如下: # oracle nohup docker pull registry.cn-hangzhou.aliyuncs.com/lhrbest..._12.2.0.3:2.0 init # 对于ASM,① ASM磁盘脚本:/etc/initASMDISK.sh,请确保脚本/etc/initASMDISK.sh中的内容都可以正常执行 # ② 需要在宿主机上安装以下软件..._10g_ee_lhr_10.2.0.1:2.0 init 之前也详细说明过一些镜像的使用方法,例如: 在Docker中只需2步即可拥有Oracle 21c环境 【DB宝10】在Docker中只需...2步即可拥有Oracle18c环境 【DB宝11】在Docker中只需2步即可拥有Oracle 11g企业版环境(11.2.0.3) 【DB宝12】在Docker中只需2步即可拥有Oracle 12cR2...企业版环境(11.2.0.4) 【DB宝7】如何在Docker容器中一步一步安装配置Oracle19c的ASM+DB环境 【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c DB
♣ 题目部分 在Oracle中,将RAC备份集恢复到单实例数据库的步骤有哪些?...♣ 答案部分 将RAC备份集恢复到单实例数据库的过程基本上就是先将备份集恢复为RAC数据库,然后再将数据库转换为单实例的数据库。...数据库的备份可以使用如下的脚本: run { allocate channel c1 type disk; allocate channel c2 type disk; backup database...c2; } 将RAC备份集恢复到单实例数据库可以分为恢复为ASM存储的单实例和FS存储的单实例,其处理过程分别不同。...drop logfile group 4 ; drop tablespace undotbs2 including contents and datafiles; & 说明: 有关RAC备份集恢复到单实例数据库的更多内容可以参考我的
镜像地址 为了测试需要,麦老师制作了各个版本的Oracle数据库环境,下载地址如下: # oracle nohup docker pull registry.cn-hangzhou.aliyuncs.com..._12.2.0.3:2.0 init # 对于ASM,① ASM磁盘脚本:/etc/initASMDISK.sh,请确保脚本/etc/initASMDISK.sh中的内容都可以正常执行 # ② 需要在宿主机上安装以下软件..._10g_ee_lhr_10.2.0.1:2.0 init 使用方法 之前也详细说明过一些镜像的使用方法,例如:11.2.0. 23c: https://www.xmmup.com/zaidockerzhongkuaisutiyanoracle...的ASM+DB环境 【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c 【DB宝4】只需2步即可拥有Oracle19c的ASM+DB环境 18c: https://www.xmmup.com...2步即可拥有Oracle 11g企业版环境(11.2.0.3) 【DB宝14】在Docker中只需2步即可拥有Oracle 11g企业版环境(11.2.0.4) 12.2.0.1: https://www.xmmup.com
以下是两个表的例子: Persons 表 PersonID LastName FirstName Age 1 Hansen Ola 30 2...FOREIGN KEY 约束防止将无效数据插入到外键列中,因为它必须是父表中包含的值之一。...TABLE Orders DROP CONSTRAINT FK_PersonOrder; 通过这些 SQL 语句,您可以在数据库中定义和管理 FOREIGN KEY 约束,以确保表之间的关系得到维护。...如果在表上定义了 CHECK 约束,它可以基于行中其他列的值来限制某些列中的值。...,确保在插入新记录时,如果未提供值,将使用指定的默认值。
(9.2)数据库,这次测试就意外发现了一个说是隐藏,也不算隐藏,至少和Oracle分区表有很大不同的地方,或者可以称他为KENG,“坑”。...但就分区这个功能,已经不是第一次碰见“坑”了,可能对EDB来说不公平,也许这个功能就是这么设计的,但至少从Oracle使用习惯上来看,确实需要额外注意。...t2") WITH (OIDS=FALSE) ; 其实开始使用EDB分区的时候,手工创建新分区的时候,都会为每个分区创建一个本地/局部索引,换句话说,本地/局部索引是需要手工创建的,而在Oracle中...3.都说实践是检验真理的唯一标准,在Oracle的世界里,实践就是实验,纸上谈兵不能解决问题,实验过程中可能又会因为一个问题碰到另一个问题,也许这就是eygle一直所说的”由点及面“的学习方法,虽然有时会很痛苦...,能为自己设立一个目标、一个榜样,即使现实中根本无法超越甚至赶上,但至少一直会提醒自己,他那么厉害,我差这么远,没有理由不努力,给自己暗示,就是让自己持续提高的动力,大家共勉。
三、SQLPLUS SQLPlus 是 Oracle 数据库提供的一个专门用于数据库管理的交互式工具,使用 SQLPlus 可以管理 Oracle 数据库的所有任务,SQLPlus 通过命令的方式对数据库进行管理...在 Oracle 12C 中由于存在了 CDB 和 PDB 概念,所以所谓的测试数据,默认是找不到的,所以下面必须首先针对数据做一个恢复。 ...然后将c##scott.sql 文件中的代码一段一段复制到 sqlplus 里执行即可。 以上程序执行完毕后,就可以进行后面的命令讲解了。...,可以输入 “SHOW USER;” SHOW USER; 而后如果说通过 sys 继续查询 c##scott 用户中的 emp 表,那么肯定无法查询,这时必须在表前面加上用户名,即:c##scott.emp...5、如果要想使用此工具,那么必须建立新的连接,而且为了后续学习方便,建议此处建立两个连接: 普通用户( c##scott/tiger ) 管理员( sys/change_on_install )
, LEVEL, 和ROWNUM 伪列 –使用SYSDATE, UID, USER, 和USERENV 函数 –在查询中涉及到其它列的值 FOREIGN KEY 约束 外键约束是用来维护从表和主表的引用完整性的...SET NULL: 子表中相应的列置空 如果子表在建外键时,该列的数据并不在父表,则无法创建该约束。...ON DELETE SET NULL 和 ON DELETE CASCADE对外键约束的影响 ON DELETE SET NULL 子句的作用是,当主表中的一行数据被删除时,ORACLE自动将从表中依赖于...,当主表中的一行数据被删除时,ORACLE自动将从表中依赖于它的记录外键也删除。...该子句会删除涉及到在已删除列上定义的主键或唯一关键字的所有引用完整性约束 该子句也将删除在已删除列上定义的所有多列约束 SQL> CREATE TABLE tb_cons3 2 ( 3
; 约束唯一标识数据库表中的每条记录确保某列(或两个列多个列的结合)有唯一标识主键(键、值)且主键列不能包含 NULL 值,有助于更容易更快速地找到表中的一个特定的记录。...注:在表上创建一个唯一的索引,不允许使用重复的值唯一的索引意味着两个行不能拥有相同的索引值。 注:用于创建索引的语法在不同的数据库中不一样,因此检查您的数据库中创建索引的语法。...c.没有针对约束的级联更新 #三、插入时 a.父表可以插入 b.子表插入会违反约束 DROP 语句 描述:通过使用 DROP 语句,可以轻松地删除索引、表和数据库(注意删除是立即执行,并且不会留下日志记录...VIEW 视图 描述:视图是基于 SQL 语句的结果集的可视化的表, 视图包含行和列就像一个真实的表, 视图中的字段就是来自一个或多个数据库中的真实的表中的字段。...如果列表中不存在插入的值,则插入空值。注释:这些值是按照您输入的顺序排序的。
在某些数据库中,BETWEEN 选取介于两个值之间但不包括两个测试值的字段。 在某些数据库中,BETWEEN 选取介于两个值之间且包括两个测试值的字段。...,然后把数据插入到一个已存在的表中。...我们可以从一个表中复制所有的列插入到另一个已存在的表中: INSERT INTO table2 SELECT * FROM table1; 或者我们可以只复制希望的列插入到另一个已存在的表中: INSERT...不允许使用重复的值:唯一的索引意味着两个行不能拥有相同的索引值。Creates a unique index on a table....否则指定的变更后信息将全量覆盖变更前的信息。 SQL AUTO INCREMENT 字段 Auto-increment 会在新记录插入表中时生成一个唯一的数字。
关系型数据库 主流的关系型数据库大概有下面这些: Oracle : 甲骨文公司的企业级的数据库 SQL Server : 微软的 MySQL : 免费的数据库,现在也属于Oracle的旗下产品 MariaDB...主键: 主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。 外键: 外键用于关联两个表。 复合键: 复合键(组合键)将多个列作为一个索引键,一般用于复合索引。...无法在record表中插入在student表中不存在的student_id,这个叫外键约束 尝试删除记录: > DELETE FROM record WHERE day='2018-01-01' AND...,通过orm将编程语言的对象模型和数据库的关系模型建立映射关系,这样我们在使用编程语言对数据库进行操作的时候可以直接使用编程语言的对象模型进行操作就可以了,而不用直接使用sql语言。..., i.bill_addr_fk.addr) 多对一-多外键关联 在这种关系中,A表中的一行只能匹配B表中的一行,但是B表中的一行可能被A表中的多行匹配到,即A表的多行可能匹配的是B表中的同一行。
现在我们来看看在第二范式的讲解中,我们将表1-1拆分成了两张表。这两个表是否符合第三范式呢。...拥有较高的插入,查询速度,但不支持事务 InnoDB 事务型数据库的首选引擎,支持ACID事务,支持行级锁定, MySQL 5.5 起成为默认数据库引擎 BDB源 自 Berkeley DB,事务型数据库的另一种选择...5.1、增加数据 insert 语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下: Insert into 表名(字段列表) values (值列表); insert [into] 表名...同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。...trigger_event指明了激活触发程序的语句的类型 INSERT:将新行插入表时激活触发程序 UPDATE:更改某一行时激活触发程序 DELETE:
代码中,“/”执行缓存区中的语句,由于缓冲区中只存储一条刚刚保存过语句,由于每条语句没有用分号结尾,只是保存在缓冲区,因此每条语句后面都有单独一行“/”。...Oracle创建表语法 – create –创建Oracle表(使用create关键字) — ****** (1)创建新表 use 数据库(在那个数据库中建表) create table 表名...1,字段2… from 旧的表 where 条件(旧的表字段满足的条件)(7)将查询结果插入另一张表 insert into 另一张表 select * from 要查询的表 where 条件(...\pwd{SID}.ora’ password=’***(sys的密码)’ tntries=10(口令文件最大的用户数量) 要使某个用户可以使用口令文件,必须为其授予SYSDBA权限,系统会自动将其加入到口令文件中...特殊的数据表dual dual表实际属于系统用户sys,具有了数据库基本权限的用户,均可查询该表的内容,如下所示: 或者 分析查询结果可知,dual表仅含有一行一列。
SQL Server数据库软件(identity:身份、特性) Oracle数据库软件(sequence:序列) MySQL数据库软件(auto_increment:自动递增)...emp一共14行记录,dept表一共4行记录,那么连接后查询出的结果是56行记录。 也就你只是想在查询emp表的同时,把每个员工的所在部门信息显示出来,那么就需要使用主外键来去除无用信息了。...说白了,ON就是筛选的条件。 内连接的特点:查询结果必须满足条件。例如我们向emp表中插入一条记录。 ? ...但要注意,脚本文本中只包含数据库的内容,而不会存在创建数据库的语句,所以在恢复数据时,还需要自已手动创建一个数据库之后再去恢复数据。 ...所以我建议大家使用脚本文件来编写SQL代码,然后执行之! source C:\mydb1.sql ? 注意:在执行脚本时需要先行核查当前数据库中的表是否与脚本文件中的语句有冲突!
将员工邮箱中的“.com”替换为“.net”,写出 SQL 语句?...答案: 连接(join)查询是基于两个表中的关联字段将数据行拼接到一起,可以同时返回两个表中的数据。SQL 支持以下连 接: 内连接(INNER JOIN),用于返回两个表中满足连接条件的数据行。...解决的方法就是将部门信息单 独存储到一个表中; 更高的范式包括 Boyce-Codd 范式、第四范式、第五范式以及第六范式等,不过很少使用到这些高级范式。对于大多数系统而 言,满足第三范式即可。...解析:针对索引字段进行运算或者使用函数之后,会导致无法使用索引。可以将运算改到操作符的右边: SELECT COUNT() FROM test WHERE col = 2400 / 12; 90....UNION 等; 不同的数据库特定的限制 简单来说,可能导致无法通过视图找到对应基础表中的数据的操作都不允许。
现在我们来看看在第二范式的讲解中,我们将表1-1拆分成了两张表。这两个表是否符合第三范式呢。...5.1、增加数据 insert 语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下: Insert into 表名(字段列表) values (值列表); insert [into] 表名...同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。...trigger_event指明了激活触发程序的语句的类型 INSERT:将新行插入表时激活触发程序 UPDATE:更改某一行时激活触发程序 DELETE:...并且它还去除了重复的元素,所以 SET 类型中不可能包含两个相同的元素。 希望从 SET 类型字段中找出非法的记录只需查找包含空字符串或二进制值为 0 的行。
======================================== FLASHBACK DROP 特性允许在不丢失任何数据库的情况下将指定的表恢复至其被删除的时间点,并保持数据库为当前状态...一、FLASHBACK DROP 的功能 将先前删除的表恢复到删除之前的状态 恢复该表的索引以及触发器,授权 恢复该表的约束,包括唯一约束、主键约束、非空约束。...,其余的约束不受影响 4.如果要查询回收站中的对象,建议将对象名使用双引号括起来 5.闪回的实质并不能撤销已提交的事务,而是构造倒退原有事务影响的另一个事务 6.对于已经删除的表如果在所在的表空间新增对象由于空间不足的压力而被重用将导致闪回失败...不变化 9.如回收站中存在两个相同的原表名,则闪回时总是闪回最近的版本,如果闪回特定的表,需要指定 该表在回收站中的名称。...表空间中存储的表无法启用flashback drop,且这些表会被立即删除 与回收站相关两个重要的视图 dba_recyclebin user_recyclebin 六、更多参考 有关基于用户管理的备份和备份恢复的概念请参考
文章目录 连接数据库 查看所有数据库 创建数据库并设置字符集和排序规则 使用数据库 查看当前数据库中的表 删除数据库 查看表结构 查看表中的数据 查看mysql的版本号 查看建表语句 between and...创建表 insert语句插入数据 插入多行数据 通过Insert select 语句将现有的表的数据添加到已存在的表中 表的复制 将查询结果插入到一张表中(表中的数据要对应) update 修改数据 delete...将查询结果插入到一张表中(表中的数据要对应) insert into dept select* from dept; update 修改数据 update 表名 set 字段名1=值1,字段名2...存储引擎 使用MEMORY存储引擎的表,其数据存储在内存中,且行的长度固定,这两个特点使得MEMORY存储引擎查询速度最快。...其行级锁机制和多版本的支持为数据读取和更新的混合操作提供了良好的并发机制。 可使用MEMORY存储引擎来存储非永久需要的数据,或者是能够从基于键盘的表中重新生成的数据。
在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server移植到Windows NT系统上,专注于开发推广...高度非过程化,即用SQL操作数据库,只需指出“做什么”,无须指明“怎么做”,存取路径的选择和操作的执行由DBMS自动完成 5.2.常见sql的使用 创建数据库 创建数据库中的数据表 给表中添加数据 查询表中数据...在敲终端里面敲这些mysql命令的时候,每一行命令后面,必须要带有;否则会出问题 在命令后面 + ;在后面一行再添加上; 在命令后面 + ; 在后面一行再添加上; 接下来思考:上面的这些代码都是在命令行工具中编写的...可以把列名当做java中的形参,把列值当做实参。 值不要超出列定义的长度。 如果插入空值,请使用null 插入的日期和字符一样,都使用引号括起来。...、更新、删除的过程中,系统都会被将修改的与另外一张表格进行对照,从而阻止一些不正确的数据的操作 5.9.4.3.参照完整性实战 ?
领取专属 10元无门槛券
手把手带您无忧上云