Грязные чтения в пост-ГРЭС

Ниже приведено довольно простое решение для анализа дат JSON. Используйте следующие функции согласно вашему требованию. Вам просто нужно передать дату JSON в формате JET, выбранную в качестве параметра, в функции ниже:

function JSONDate(dateStr) {
    var m, day;
    jsonDate = dateStr;
    var d = new Date(parseInt(jsonDate.substr(6)));
    m = d.getMonth() + 1;
    if (m < 10)
        m = '0' + m
    if (d.getDate() < 10)
        day = '0' + d.getDate()
    else
        day = d.getDate();
    return (m + '/' + day + '/' + d.getFullYear())
}

function JSONDateWithTime(dateStr) {
    jsonDate = dateStr;
    var d = new Date(parseInt(jsonDate.substr(6)));
    var m, day;
    m = d.getMonth() + 1;
    if (m < 10)
        m = '0' + m
    if (d.getDate() < 10)
        day = '0' + d.getDate()
    else
        day = d.getDate();
    var formattedDate = m + "/" + day + "/" + d.getFullYear();
    var hours = (d.getHours() < 10) ? "0" + d.getHours() : d.getHours();
    var minutes = (d.getMinutes() < 10) ? "0" + d.getMinutes() : d.getMinutes();
    var formattedTime = hours + ":" + minutes + ":" + d.getSeconds();
    formattedDate = formattedDate + " " + formattedTime;
    return formattedDate;
}
6
задан lospejos 10 August 2019 в 00:59
поделиться

2 ответа

PostgreSQL не реализует способ увидеть это извне функции, он же уровень изоляции READ UNCOMMITTED . Ваши основные два варианта:

  • Используйте функцию RAISE NOTICE время от времени, чтобы показать вам, как далеко вы продвинулись.
  • Используйте что-то вроде dblink от функции обратно в ту же базу данных, и обновите таблицу счетчиков оттуда. Поскольку это совершенно отдельная транзакция, счетчик будет виден, как только эта транзакция будет зафиксирована - вам не нужно ждать завершения основной транзакции (вокруг вызова функции).
11
ответ дан 8 December 2019 в 13:48
поделиться

Изоляция транзакций PostgreSQL

В PostgreSQL вы можете запросить любой из четырех стандартных уровней изоляции транзакций. Но внутренне существует только два различных уровня изоляции, которые соответствуют уровням Read Committed и Serializable. Когда вы выбираете уровень Read Uncommitted, вы действительно получаете Read Committed, а когда вы выбираете Repeatable Read, вы действительно получаете Serializable, поэтому фактический уровень изоляции может быть более строгим, чем выбранный вами. Это разрешено стандартом SQL: четыре уровня изоляции только определяют, какие явления не должны происходить, они не определяют, какие явления должны происходить.

6
ответ дан 8 December 2019 в 13:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: