1. 程式人生 > 實用技巧 >JPA級聯查詢

JPA級聯查詢

刪除資料分為兩種:一種是刪除索引(資料和表結構同時刪除,作用同SQLSERVER 中DROP TABLE "表格名"),

         另一種是刪除資料(不刪除表結構,作用同SQLSERVER中Delete 語句)。

一:刪除索引(結構和資料同時刪除):

刪除單個索引可以使用命令 【DELETE /索引名稱】

Delete 索引名稱

刪除多個索引可以使用命令 【DELETE /索引1,索引2】

Delete 索引名稱1,索引名稱2

【DELETE /testindex*】:刪除以testindex 開頭的所有索引檔案(如果配置檔案中禁止後此方式不能使用);

Delete 索引名稱*

刪除全部索引命令 【DELETE /_all】(配置檔案中禁止後此方式不能使用) 或者 【DELETE /*】(配置檔案中禁止後此方式不能使用)

Delete _all

注意事項:對資料安全來說,能夠使用單個命令來刪除所有的資料可能會帶來很可怕的後果,所以,為了避免大量刪除,

可以在elasticsearch.yml配置檔案中修改action.destructive_requires_name: true

  設定之後只限於使用特定名稱來刪除索引,使用_all 或者萬用字元來刪除索引無效(上述中說明配置檔案中禁止後此方式不能使用)】

二:刪除資料(只刪除資料):

1.:根據主鍵刪除資料:【DELETE /索引名稱/型別名稱/主鍵編號】

Delete 索引名稱/文件名稱/主鍵編號

2:根據匹配條件刪除資料:(注意請求方式是Post)

POST 索引名稱/文件名稱/_delete_by_query   
{
  "query":{
    "term":{
      "_id":100000100
    }
  }
}

如果你想根據條件來刪除你的資料,則在Query查詢體中組織你的條件就可以了。

3:刪除所有資料:(注意請求方式是Post,只刪除資料,不刪除表結構)

POST /testindex/testtype/_delete_by_query?pretty
{
    "query": {
        "match_all": {
        }
    }
}