随笔分类 - 中间件-数据库
摘要:【定义】 幻读是指在同一个事务中,存在前后两次查询同一个范围的数据,但是第二次查询却看到了第一次查询没看到的行, 一般情况下特指事务执行中新增的其他行。 也就是另一个事务新增了满足当前事务查询的行,导致当前事务再次查询结果不一样。 【出现条件】 1.数据库隔离级别为RR(Repeatable Rea
阅读全文
摘要:@echo off %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit cd /d "%~dp0" star
阅读全文
摘要:【全局锁】 数据库中的表只能读取,不能增删改 --加锁-- flush table with read lock; --解锁-- unlock tables; 【共享锁 Shared lock】 也称读锁。不阻塞其他事物的读操作,但阻塞写操作。 当Session1对数据A添加共享锁之后,可读不可写。
阅读全文
摘要:如果不对事务进行隔离可能会产生的后果: 1.更新丢失: 两个事务同时更新一条数据,一个事务的失败导致两次修改均失败。 这是因为没有锁操作,可以同时操作数据。并发事务没隔离 2.脏读:已经修改了一条数据而没有及时提交,但该数据被并发读取,如果此时回滚数据,那并发读取的就是错误数据。那么获取的数据不一致
阅读全文
摘要:为了防止Redis宕机导致数据全部清空,所以有持久化操作 显然不能高频的生成RDB文件进行备份,毕竟数据多,而且操作耗时。 所以需要将增删改的操作写进AOF文件 但是也不能每条操作都立刻写AOF文件,所以创建一个AOF_Buffer缓冲区,然后再挑时间写入AOF文件。 但是AOF文件太臃肿,可以合并
阅读全文
摘要:查看当前数据库下面的所有触发器 --查看数据库下的所有触发器-- select * from sysobjects where xtype='TR' 查看某个触发器的内容 --查看触发器的具体定义-- select definition from sys.sql_modules where obje
阅读全文
摘要:最近授予了用户查看视图的权限之后,出现了问题。 原来是视图跨数据库了,而用户没有查看另一个数据库的权限,于是报错了。 怎么解决呢? 安全性 =》 登录名 =》 选择用户 =》 右键属性 =》用户映射 =》勾选数据库 本以为解决了,结果 拒绝了对对象的select 权限 原因是 上面那一步,没有勾选对
阅读全文
摘要:datediff(mm,getdate(),Date)=0 也就是判断和当前月份差是否为0
阅读全文
摘要:1.添加字段的时候添加默认值 alter table [Student] add [Sex] bit not null default '1' 2.已存在字段添加默认值 alter table [Student] add default '1' for [Sex] with values 3.已存在
阅读全文
摘要:范例: db.myDb.aggregate([ {$match:{"Id":"a941202e-29f6-4282-8101-b7e878c82811",$or:[{"Status":/增强/},{"Room":/园/}] }} ]) 使用 / / 便可以实现sql中like的功能。注意:没有引号,
阅读全文
摘要:使用sort即可,如下: db.adu.find().sort({"Age":-1}) 其中,Age为排序字段,-1表示降序,1表示升序
阅读全文
摘要:直接使用update来修改_id会报错。 可以使用以下语句 var o=db.adu.findOne({"_id":ObjectId("5f734d0fa9078a7ef2a8cf85")}); o._id="176BF2F0-E022-4F53-A285-F941E2FCD908"; db.adu
阅读全文
摘要:我想向mongodb集合中插入数组元素,该数组元素一开始在原集合中并不存在。 使用语句: db.MyDb.update({"_id":"aaaaaaa"}, {$push:{"Schedule":{"Diff":NumberInt(0),"TimespanHour":12.546}}}) 该语句表示
阅读全文
摘要:$gt 大于 $lt 小于 $gte 大于等于 $lte 小于等于 $ne 不等于 聚合查询操作符: $project db.test.aggregate( { $project : { _id : 0 , name : 1 , weight : 1 , newWeight : "$weight"
阅读全文
摘要:USE [MyDb] GO IF NOT EXISTS(SELECT * FROM [MyDb].[dbo].[Product] WHERE Name='小浣熊干脆面') BEGIN INSERT [dbo].[Product]([Id],[Value],[Name],[Description],[
阅读全文
摘要:在redis的安装目录下面新建文本文档,写入 redis-server.exe redis.windows.conf 重命名为start.bat,每次双击这个批处理文件即可
阅读全文
摘要:Topic交换机和队列绑定是允许使用通配符 *匹配一个单词 #匹配多个单词 发布 public void TopicPublish() { MQHelper mh = new MQHelper(); using (var conn = mh.GetConnection()) { using (IMo
阅读全文
摘要:一般情况下,生产者发送消息,先到先得,一个消费者消费之后,该条消息便消失不会再被消费,抢完即止。 那能否生产者发送的消息每个消费者都能接收到,都能消费呢? Fanout交换机就可以实现。 代码实现: 生产者: public class FanoutExchange { public void Fan
阅读全文
摘要:RabbitMQ交换机有四种类型:Direct,Fanout,Topic,Header 先简单介绍Direct交换机的代码实现 先创建连接 public class MQHelper { public IConnection GetConnection() { var factory = new C
阅读全文
摘要:RabbitMQ是需要Erlang语言环境,所以下载RabbitMQ的同时需要安装Erlang/OTP 对应的版本关系可见:https://www.cnblogs.com/gne-hwz/p/10714013.html 我安装的版本是3.82,对应erlang22.0 安装好了之后,需要配置环境变量
阅读全文

浙公网安备 33010602011771号