Извлечение BLOB-содержимого из одной таблицы и сохранение его в другой таблице. - PullRequest
0 голосов
/ 08 октября 2018

У меня есть таблица с полем BLOB-объектов.Мне нужно скопировать данные этой таблицы в другую таблицу.Может кто-нибудь сказать мне, как обращаться с данными BLOB-объектов при репликации.

for(int i=0;i<jsonarr.length();i++)
{
    JSONObject jsonO=jsonarr.getJSONObject(i);  

    if(jsonO.has("file_content") && jsonO.getString("file_content")!="null")
    {
         PS.setBlob(4, (InputStream) jsonO.get("file_content"));  //Getting Error on this line
    }
}

Пример данных JSON

{

    "territory_id": 10111,
    "file_name": "page.html",
    "file_size": 970,
    "file_content": "UEdoMGJXdytEUW9OQ2p4b1pXRmtQZzBLUEcxbGRHRWdhSFIwY0MxbGNYVnBkajFEYjI1MFpXNTBMVlI1Y0dVZ1kyOXVkR1Z1ZEQwaWRHVjRkQzlvZEcxc095QmphR0Z5YzJWMFBYZHBibVJ2ZDNNdE1USTFNaUkrRFFvOGJXVjBZU0J1WVcxbFBVZGxibVZ5WVhSdmNpQmpiMjUwWlc1MFBTSk5hV055YjNOdlpuUWdWMjl5WkNBeE5TQW9abWxzZEdWeVpXUXBJajROQ2p4emRIbHNaVDROQ2p3aExTME5DaUF2S2lCR2IyNTBJRVJsWm1sdWFYUnBiMjV6SUNvdkRRb2dRR1p2Ym5RdFptRmpaUTBLQ1h0bWIyNTBMV1poYldsc2VUb2lRMkZ0WW5KcFlTQk5ZWFJvSWpzTkNnbHdZVzV2YzJVdE1Ub3lJRFFnTlNBeklEVWdOQ0EySURNZ01pQTBPMzBOQ2tCbWIyNTBMV1poWTJVTkNnbDdabTl1ZEMxbVlXMXBiSGs2UTJGc2FXSnlhVHNOQ2dsd1lXNXZjMlV0TVRveUlERTFJRFVnTWlBeUlESWdOQ0F6SURJZ05EdDlEUW9nTHlvZ1UzUjViR1VnUkdWbWFXNXBkR2x2Ym5NZ0tpOE5DaUJ3TGsxemIwNXZjbTFoYkN3Z2JHa3VUWE52VG05eWJXRnNMQ0JrYVhZdVRYTnZUbTl5YldGc0RRb0plMjFoY21kcGJpMTBiM0E2TUdsdU93MEtDVzFoY21kcGJpMXlhV2RvZERvd2FXNDdEUW9KYldGeVoybHVMV0p2ZEhSdmJUbzRMakJ3ZERzTkNnbHRZWEpuYVc0dGJHVm1kRG93YVc0N0RRb0piR2x1WlMxb1pXbG5hSFE2TVRBM0pUc05DZ2xtYjI1MExYTnBlbVU2TVRFdU1IQjBPdzBLQ1dadmJuUXRabUZ0YVd4NU9pSkRZV3hwWW5KcElpeHpZVzV6TFhObGNtbG1PMzBOQ2k1TmMyOURhSEJFWldaaGRXeDBEUW9KZTJadmJuUXRabUZ0YVd4NU9pSkRZV3hwWW5KcElpeHpZVzV6TFhObGNtbG1PMzBOQ2k1TmMyOVFZWEJFWldaaGRXeDBEUW9KZTIxaGNtZHBiaTFpYjNSMGIyMDZPQzR3Y0hRN0RRb0piR2x1WlMxb1pXbG5hSFE2TVRBM0pUdDlEUXBBY0dGblpTQlhiM0prVTJWamRHbHZiakVOQ2dsN2MybDZaVG80TGpWcGJpQXhNUzR3YVc0N0RRb0piV0Z5WjJsdU9qRXVNR2x1SURFdU1HbHVJREV1TUdsdUlERXVNR2x1TzMwTkNtUnBkaTVYYjNKa1UyVmpkR2x2YmpFTkNnbDdjR0ZuWlRwWGIzSmtVMlZqZEdsdmJqRTdmUTBLTFMwK0RRbzhMM04wZVd4bFBnMEtEUW84TDJobFlXUStEUW9OQ2p4aWIyUjVJR3hoYm1jOVJVNHRWVk0rRFFvTkNqeGthWFlnWTJ4aGMzTTlWMjl5WkZObFkzUnBiMjR4UGcwS0RRbzhjQ0JqYkdGemN6MU5jMjlPYjNKdFlXdytWMlZzWTI5dFpTQjBieUJVVlZRZ1ZFTk5JRkJoWVZNZ1ZHVnpkR2x1WnlCSVpXeHdJRkJoWjJVOEwzQStEUW9OQ2p3dlpHbDJQZzBLRFFvOEwySnZaSGsrRFFvTkNqd3ZhSFJ0YkQ0TkNnPT0=",
    "creation_date": "2018-09-11T00:00:00Z",
    "created_by": "abc@gmail.com",
    "last_update_date": "2018-09-11T09:56:01Z"

}

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

Если что-то пойдет не так, отправьте, пожалуйста, из-за вашей аннотации кода эта запись

предполагает, что вы хотите сохранить данные в другой таблице, вот пример

for(int i=0;i<jsonarr.length();i++)
{
JSONObject jsonO=jsonarr.getJSONObject(i);  

if(jsonO.has("file_content") && jsonO.getString("file_content")!="null")
{
     PS.setBlob(4, (InputStream) jsonO.get("file_content")); 
     JDBCUtil.saveDate(PS);//saveData method execute SQL 
}
}

Я надеюсь, что смогу помочь вам

0 голосов
/ 08 октября 2018

Вы можете сделать так:

if(jsonO.has("file_content") && jsonO.getString("file_content")!="null"){
    String fileContent = jsonO.getString("file_content"); 
    PS.setBlob(4, new ByteInputStream(fileContent.getBytes("UTF-8")));  
}

или:

if(jsonO.has("file_content") && jsonO.getString("file_content")!="null"){
    String fileContent = jsonO.getString("file_content");
    PS.setBlob(4, new SerialBlob(fileContent.getBytes("UTF-8")));  
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...