第三十九讲:insert句子的锁为什么这么多?
insert … select 是很常见的在两个表之间拷贝数据的方法。你需要注意,在可重复读隔离级别下,这个语句会给 select 的表里扫描到的记录和间隙加读锁。而如果 insert 和 select 的对象是同一个表,则有可能会造成循环写入。这种情况下,我们需要引入用户临时表来做优化。inser...
Linux渠道Oracle开机自启动设置
网上和官方文档已经有不少介绍如何设置开机启动Oracle实例的文章(Linux平台),不过以sysvinit和service这种方式居多。最近遇到了UAT环境的服务器打补丁后需要重启服务器的情况, 需要DBA去手工启动Oracle实例的情形,和同事讨论,决定将UAT环境的Oracle实例启停设置成s...
7、listener监听
启动远程图形界面登录的工具 [root@db11g ~]# vncserver 监听 监听的启动 [oracle@db11g ~]$ lsnrctl start 判断监听是否启动 [oracle@db11g ~]$ netstat -tulnp | grep 1521 (Not all proces...
浅析REGEXP_SUBSTR,PRIOR,CONNECT BY
业务场景 teacher表中的tech_class字段存储的是每个老师所教授的课程,课程之间以英文逗号分隔。现在要用语句统计每个课程对应的教师数量。语句及效果如下: 语句其实很简单,各种博客或者gpt都有不错且可行的解决方案,我们主要来理解下这段语句的执行原理,更好的学习。 part1 REGEXP...
ORA-01843: 无效的月份
上个文章介绍了动态LINQ库。 然后动态造了一个查询,示例如下: //ctx是EF的DbContext,字段Value是字符串类型 await ctx.Tables.Where("As(Value,\"DateTime?\")>@0...
Sql根底
1. sql基础 1.1. 数据库常用的数据类型 1.2. 带n与不带n的区别 1.3. 带var与不带var的区别 1.4. 2.基础操作 1.4.1. 更新语句 1.4.2. 删除语句 1.4.3. 约束 1.4.4. 修改表结构 1.4.5. 查询表 1.4.6. 模糊查询 _ % [ ] ^...
SQL Server存储进程的优缺点
SQL Server存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中。存储过程可以接收参数、执行相关SQL后返回结果。用户通过指定存储过程的名字并给出参数(带参存储过程)来执行它。以下是使用SQL Server存储过程的一些利弊,仅供参考:...
Sql高档
1. sql高级 1.1. 索引与视图 1.1.1. 常见的数据结构 1.1.2. 索引 1.1.2.1. 作用 1.1.2.2. 定义 1.1.2.3. 分类 1.1.2.4. 设计原则 1.1.2.5. 语法 1.1.3. 视图 1.2. 事务与锁 1.2.1. 事务的原理 1.2.2. 事务的...
绑架微信聊天记录并剖析复原 —— 拜访数据库并检查聊天记录(五)
程序以 Python 语言开发,可读取、解密、还原微信数据库并帮助用户查看聊天记录,还可以将其聊天记录导出为csv、html等格式用于AI训练,自动回复或备份等等作用。...
处理高版别laravel/framework中SQLServer2008分页报错问题
前提:laravel自6.0后就明确了支持的SQL Server版本最低为2017,而SQL Server是在2012版本后,引入的offset语法来实现分页,在此之前只能使用ROW_NUMBER()函数来完成分页。 问题:生产环境的SQL Server由于历史原因,仍旧使用的2008版本,自然是不...