偶尔会用到solr后台操作一些数据,比如测试等一些情况。但具体用的时候可能会忘记,或者搜的时候结果不全,在此略详细的记一下。

1.添加

{"id":6,"title":"change.me"}

结果:

说明:id为主键

2.更新

{"id":6,"title":{"set":"原子更新"}}

结果:

说明:更新过程是先删除,再添加

3.删除

删除和添加数据不同,内容是一个条件语句,所以要用xml形式

<delete><query>id:6</query></delete>
<commit/>

结果:

4.补充

如果添加的数据里有字段是schema里没有的会报错

{"id":7,"titletitle":"双份更强力"}        报错:"msg": "ERROR: [doc=7] unknown field 'titletitle'",

同理更新的数据里有字段是schema里没有的也会报错。

如果要按时间删除,语句:

<delete><query>update_time:[0 TO 1554100200]</query></delete>
<commit/>

删除update_time(更新时间)小于1554100200的所有数据,如果update_time不存在,不会报错,但没有效果。

最后补充:在工作中遇到一种添加数据情况出错情况,如下

Bad Request\n\n\n\nrequest: http://10.200.3.66:8983/solr/req_all_shard1_replica3/update?update.chain=add-unknown-fields-to-the-schema&update.distrib=TOLEADER&distrib.from=http%3A%2F%2F10.200.3.67%3A8983%2Fsolr%2Freq_all_shard1_replica4%2F&wt=javabin&version=2

情况:只有在这一个solr上发现这个问题,其它solr都是正常的,它这个报错也是报的不清不楚。思索良久之后发现了问题所在

这个solr里的schema字段中required="true"必传字段有两个,少传一个就会报错,泪牛满面。

2019年4月16日

solr后台操作Documents之增删改查的更多相关文章

  1. C#操作Excel数据增删改查(转)

    C#操作Excel数据增删改查. 首先创建ExcelDB.xlsx文件,并添加两张工作表. 工作表1: UserInfo表,字段:UserId.UserName.Age.Address.CreateT ...

  2. C#操作Excel数据增删改查示例

    Excel数据增删改查我们可以使用c#进行操作,首先创建ExcelDB.xlsx文件,并添加两张工作表,接下按照下面的操作步骤即可 C#操作Excel数据增删改查. 首先创建ExcelDB.xlsx文 ...

  3. sqlite数据库操作详细介绍 增删改查,游标

    sqlite数据库操作详细介绍 增删改查,游标     本文来源于www.ifyao.com禁止转载!www.ifyao.com Source code     package com.example ...

  4. java操作数据库:增删改查

    不多bb了直接上. 工具:myeclipse 2016,mysql 5.7 目的:java操作数据库增删改查商品信息 test数据库的goods表 gid主键,自增 1.实体类Goods:封装数据库数 ...

  5. python操作三大主流数据库(8)python操作mongodb数据库②python使用pymongo操作mongodb的增删改查

    python操作mongodb数据库②python使用pymongo操作mongodb的增删改查 文档http://api.mongodb.com/python/current/api/index.h ...

  6. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  7. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  8. SpringBoot操作MongoDB实现增删改查

    本篇博客主讲如何使用SpringBoot操作MongoDB. SpringBoot操作MongoDB实现增删改查 (1)pom.xml引入依赖 <dependency> <group ...

  9. Java数据库连接——JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

随机推荐

  1. Sql Server中REPLACE函数的使用

    在sql的使用过程当中,我们偶尔会遇到这样一种情况,就是需要改变数据的存储形式,比如数据库某一张表(Info)当中有一个字段Educational(学历),以前存储的是Json数组,现在由于需求的改变 ...

  2. Start Failed, Internal error: recovering IDE to the working state after the critical startup error

    Start Failed, Internal error: recovering IDE to the working state after the critical startup error F ...

  3. @PathVariable,@RequestParam, @RequestBody

    https://www.cnblogs.com/guoyinli/p/7056146.html https://www.cnblogs.com/zeroingToOne/p/8992746.html ...

  4. Test 1 T2 B 线段树合并

    模拟赛的T2,多敲了两行成功爆掉~ 写线段树合并的时候一定要注意一下不能随意新开节点. code: #include <bits/stdc++.h> #define N 100009 #d ...

  5. Try-Catch-Finally代码块中的return

    测试类的原型是这样子的 public class TryCatchFinallyToReturn { public static void main(String[] args) { System.o ...

  6. redis之哨兵集群

    一.主从复制背景问题 Redis主从复制可将主节点数据同步给从节点,从节点此时有两个作用: 一旦主节点宕机,从节点作为主节点的备份可以随时顶上来. 扩展主节点的读能力,分担主节点读压力. 但是问题是: ...

  7. java安全学习-Code-Breaking Puzzles-javacon详细分析

    本文首发于合天智汇: https://mp.weixin.qq.com/s/XWpe3OGwH1d9dYNMqfnyzA 0x01.环境准备 需要反编译的jar包如下所示 直接通过以下步骤将jar文件 ...

  8. mysql —备份和恢复

    备份的目的 灾难恢复.硬件故障.软件故障.自然灾害.黑客攻击.误操作测试等数据 丢失场景 备份注意要点 能容忍最多丢失多少数据 恢复数据需要在多长时间内完成 需要恢复哪些数据 还原要点 做还原测试,用 ...

  9. java课后实验性问题4

    课后作业一: 使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数.请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象? 设计思路:定义类的构造函数时使静态变量i进行i++,即每构 ...

  10. 从 10.x 到 ArcGIS Pro 的 Python 迁移

    与 ArcGIS Pro 结合使用 Python 的方式与包括 ArcGIS Desktop.ArcGIS Server 以及 ArcGIS Engine 在内的其他 ArcGIS 产品不同. 地理处 ...