小编Chi*_*ski的帖子

如何在elasticsearch中删除多个文档?

我想从 elasticsearch 中删除我的数据库中不再存在的许多文档。

我知道要删除多个文档(例如 id 1,2,3),我们使用:

curl -XDELETE localhost:9200/index/doc/ids=1,2,3
Run Code Online (Sandbox Code Playgroud)

但我想只保留这些 id 并删除其余的,类似于 SQL 中的以下指令。

DELETE FROM table1 WHERE id_column NOT IN (1,2,3);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,elasticsearch 是否有等效的 NOT IN ?

json curl elasticsearch

5
推荐指数
1
解决办法
1万
查看次数

如何在Eclipse中关闭项目方面?

我试图解决日食方面的问题,所以我单击了:

Propreties -> Project Facets -> Click on the link
Run Code Online (Sandbox Code Playgroud)

现在,我有了一个新的视图,Project Facets并且出现了很多错误,而且我不知道如何返回上一步并取消此操作。

你有什么想法吗?

先感谢您。

java eclipse dependencies maven

3
推荐指数
1
解决办法
3273
查看次数

如何重命名Oracle的默认约束?

我想重命名具有默认名称(以'SYS'开头)的许多约束(PK,FK等),以便能够在其他DB中插入相同的数据。

我发现以下脚本已更改为我想要的:

BEGIN
    FOR cn IN (
        SELECT constraint_name 
        FROM user_constraints 
        WHERE constraint_type = 'P'
        AND table_name = 'SPECIALITE'
    )
    LOOP
        EXECUTE IMMEDIATE 'ALTER TABLE ' || cn.table_name || ' RENAME CONSTRAINT ' || cn.constraint_name  || ' TO PK_' || 'SPECIALITE';
    END LOOP;
END;
Run Code Online (Sandbox Code Playgroud)

该脚本有效,但对我来说似乎有点复杂,我想知道它是否存在类似的内容:

ALTER TABLE 'SPECIALITE' RENAME CONSTRANT (....)
Run Code Online (Sandbox Code Playgroud)

问题是我不知道约束的名称,它们有一个默认名称,我只知道它们所在的表。

可能吗?

sql oracle plsql

3
推荐指数
1
解决办法
9018
查看次数

重定向后如何保留请求参数?

当我发送带有空输入的表单时,我正在尝试解决一个错误。

这是我的方法:

@RequestMapping(value = "/modifier.html", method = RequestMethod.POST)
public String modifier(ModelMap map, @ModelAttribute("FormObject") FormObject formObject, BindingResult result, HttpServletRequest req) {

    formObject.setModif(true);
    String idParam = req.getParameter("idTypeOuverture");

    if (result.hasErrors()) {
        return "redirect:/gestion.html?section=Configuration&panel=4&ouvrir=modifier";
    } else {
        //Instructions
}
Run Code Online (Sandbox Code Playgroud)

当出现错误(空输入)时,控制器重定向到此链接以告诉用户更正错误。问题是当我在这里检查参数时,它们看起来是正确的(id、name ...),但在以下方法中 id 变为 null:

@Override
public ModelAndView dispatcher(HttpServletRequest request, HttpServletResponse response) throws RorException {

    Map<String, Object> myModel = (Map<String, Object>) request.getAttribute(EnumParam.R_MY_MODEL.getKey());

    Enumeration<?> keys = request.getParameterNames();
    while (keys.hasMoreElements()) {
        String paramName = (String) keys.nextElement();
        String value = request.getParameter(paramName);
        myModel.put(paramName, value);
    }

    GlobalSession globalSession = (GlobalSession) …
Run Code Online (Sandbox Code Playgroud)

spring spring-mvc http-request-parameters

3
推荐指数
1
解决办法
6245
查看次数

如何在Oracle SQL上使用内部联接删除记录?

我有3张桌子

表A:

| id_A | Data ... |
Run Code Online (Sandbox Code Playgroud)

表B:

| id_B | Data ... |
Run Code Online (Sandbox Code Playgroud)

加入A_B

| id_A | id_B |
Run Code Online (Sandbox Code Playgroud)

那些表格是我的情况的一个例子.好吧,我试图从Join A_B删除许多记录,这取决于许多条件,例如A的名字是X,B的名字是Y.

当我执行SELECT时它可以工作,但是使用DELETE它没有.

这是我的要求:

DELETE A_B FROM A 
INNER JOIN A_B 
  ON (A.ID = A_B.A_ID) 
INNER JOIN B 
  ON (B.ID = A_B.B_ID) 
WHERE B.NAME IN ('X', 'Y') 
AND A.NAME = 'Z';
Run Code Online (Sandbox Code Playgroud)

它说 :

Erreur SQL : ORA-00933: SQL command not properly ended
00933. 00000 -  "SQL command not properly ended"
Run Code Online (Sandbox Code Playgroud)

sql oracle inner-join

2
推荐指数
1
解决办法
2万
查看次数