Вопросы с тегами [psql]

1

голосов
1

ответ
152

Просмотры

Получение файла CSV с партией и использовать его в SQL Statement

У меня есть файл SQL (import_noeud.sql), что скопировать файл CSV в таблицу. \ Копию public.import_noeud FROM 'Т: \ делах \ 102 \ 171205_noeud.csv' DELIMITER ';' CSV; Затем я использую пакетный файл с Psql заявлением, чтобы запустить свой файл SQL. PSQL -h LOCALHOST -U Postgres -d DEV -v ON_ERROR_STOP = 1 -f import_noeud.sql> 01.log 2> & 1 В настоящее время на каждый раз, когда пользователь хочет реимпорт новых точек он должен идти модифицировать ЕК SQL файл. Мой вопрос, может мой пакетный файл: открыть окна Проводник предложит пользователю принести CSV файл, сохраните результат (например, «T: \ \ Affaires 102 \ 171205_noeud.csv») запустить файл SQL, используя результат
var29
1

голосов
0

ответ
62

Просмотры

Долго работает Psql запросы синхронизации в произвольном порядке - не может анализировать

У меня есть некоторые PSQL запросы, работающие на RDS. 90% времени, эти запросы будут работать нормально. Однако иногда эти запросы будут случайным образом тайм-аут и не выполнить. Я включил лесозаготовки и auto_explain однако auto_explain будет только войти планы запросов для запросов, которые в комплекте. Если я увеличиваю statement_timeout запросы будут по-прежнему продолжают таймаут через случайные промежутки времени без каких-либо объяснений. Кто-нибудь видел этот вопрос до или есть какие-либо идеи, как анализировать запросы, которые не завершены?
Angelis
1

голосов
1

ответ
534

Просмотры

Как извлечь данные из PostgreSQL с помощью PHP

Я не могу получить данные из PostgreSQL в PHP. Каждый раз, когда я запустил запрос он возвращает NULL. Мой запрос: $ PSQL = новый PSQL ( 'локальный', 'база данных', 'пользователь', 'пароль'); $ PSQ = pg_query ( "SELECT * FROM студентов"); $ Результат = pg_fetch_row ($ PSQ); var_dump ($ результат);
sam scoot1900
1

голосов
0

ответ
78

Просмотры

Update an array of text with itself to run a “trigger” function in PostgreSQL

Полнотекстовый поиск в PostgreSQL является новым для меня. Так, медведь со мной. Я работаю над существующей таблицей PostgreSQL, который имеет столбец текст [] (называемые теги) типа, которые я хотел бы реализовать полнотекстовый поиск по. Я добавил еще один столбец типа ts_vector (названный tags_tsv), который будет содержать индексируемые лексемы из столбца тегов. У меня также есть индекс по тегам и триггер для обновления tags_tsv в любое время обновлений или вставки применяются к тегам. Для того, чтобы обновить существующие строки в этой таблице, мне нужно запустить этот триггер путем обновления столбца метки с самими собой. Я побежал обновления TABLENAME набор тегов = теги; но получает ошибку об ошибке: колонка «метка» не типа характера. Хорошо. Чтобы получить массив тегов в текст, я понял, что нужно использовать array_to_string как и обновить TABLENAME набор тегов = array_to_string (теги, «»); но я Вам нужно будет переписать или отливать выражение .. Я заблудился. Что мне не хватает? Я делаю всю эту работу в PSQL и ниже определение таблицы: Колонка | Тип | ---------- + ---------- | ID | целое число | название | текст | теги | текст [] | title_tsv | поисковый вектор | tags_tsv | поисковый вектор | Индексы: "test_pkey" первичный ключ, ВТКЕЕ (ID) "title_idx" джин (title_tsv) "tags_idx" джин (tags_tsv) Триггеры: tsvectorupdate ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger ( 'title_tsv', «pg_catalog.english »,„заголовок“) tsvectorupdate2 ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger („tags_tsv“,„pg_catalog.english“,„метки“) Я потерялся. Что мне не хватает? Я делаю всю эту работу в PSQL и ниже определение таблицы: Колонка | Тип | ---------- + ---------- | ID | целое число | название | текст | теги | текст [] | title_tsv | поисковый вектор | tags_tsv | поисковый вектор | Индексы: "test_pkey" первичный ключ, ВТКЕЕ (ID) "title_idx" джин (title_tsv) "tags_idx" джин (tags_tsv) Триггеры: tsvectorupdate ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger ( 'title_tsv', «pg_catalog.english »,„заголовок“) tsvectorupdate2 ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger („tags_tsv“,„pg_catalog.english“,„метки“) Я потерялся. Что мне не хватает? Я делаю всю эту работу в PSQL и ниже определение таблицы: Колонка | Тип | ---------- + ---------- | ID | целое число | название | текст | теги | текст [] | title_tsv | поисковый вектор | tags_tsv | поисковый вектор | Индексы: "test_pkey" первичный ключ, ВТКЕЕ (ID) "title_idx" джин (title_tsv) "tags_idx" джин (tags_tsv) Триггеры: tsvectorupdate ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger ( 'title_tsv', «pg_catalog.english »,„заголовок“) tsvectorupdate2 ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger („tags_tsv“,„pg_catalog.english“,„метки“) Колонка | Тип | ---------- + ---------- | ID | целое число | название | текст | теги | текст [] | title_tsv | поисковый вектор | tags_tsv | поисковый вектор | Индексы: "test_pkey" первичный ключ, ВТКЕЕ (ID) "title_idx" джин (title_tsv) "tags_idx" джин (tags_tsv) Триггеры: tsvectorupdate ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger ( 'title_tsv', «pg_catalog.english »,„заголовок“) tsvectorupdate2 ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger („tags_tsv“,„pg_catalog.english“,„метки“) Колонка | Тип | ---------- + ---------- | ID | целое число | название | текст | теги | текст [] | title_tsv | поисковый вектор | tags_tsv | поисковый вектор | Индексы: "test_pkey" первичный ключ, ВТКЕЕ (ID) "title_idx" джин (title_tsv) "tags_idx" джин (tags_tsv) Триггеры: tsvectorupdate ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger ( 'title_tsv', «pg_catalog.english »,„заголовок“) tsvectorupdate2 ДО вставки или обновления ПО теста для каждой строки EXECUTE ПРОЦЕДУРА tsvector_update_trigger („tags_tsv“,„pg_catalog.english“,„метки“)
KA01
1

голосов
0

ответ
45

Просмотры

Может Django ORM присоединиться на что-то другое, чем рк?

От: StartTable.objects.annotate (имя = F ( 'object_type_2__destination_table__name')) Django пишет запрос, содержащий это автоматически: (.. "START_TABLE" "object_type_2_id" = Т4 "ID") LEFT OUTER JOIN "объект" T4 ON LEFT OUTER РЕГИСТРИРУЙТЕСЬ «destination_table» ON (T4. «ID» = «destination_table». «object_id») есть ли способ иметь Django сделать это более эффективным, написав это вместо ?: РЕГИСТРИРУЙТЕСЬ destination_table ON destination_table.object_id = start_table.object_type_2_id Некоторые контекст иметь ввиду; START_TABLE имеет несколько внешних ключей поля, которые все относятся к одной и той же таблицы объектов, но по разным причинам, поэтому я дал object_type_2_id в качестве имени столбца.
J__
1

голосов
0

ответ
111

Просмотры

Ecto.Query требуется помощь в написании запроса с помощью выражений и динамических запросов

Я пишу запрос, чтобы отфильтровать платежи. Мы можем фильтровать по названию оплаты, статус, дата от даты, до, от суммы, и составляют. Я получил запросы рабочих для всех, кроме суммы от и сумм, так как они являются немного более сложным и включают с использованием Join / подзапроса. Платеж относится к PAYMENT_METHOD, который содержит информацию о количестве, которое было отправлено. Это отношение один к одному, с оплатой ссылки Идентификатор PAYMENT_METHOD через в funding_id. Мне нужно, чтобы иметь возможность фильтровать все платежи, которые находятся в пределах диапазона суммы. Вот часть запроса я в нуждаются в помощи по: Защиту поиск (user_id, PARAMS) сделать #main ЗАПРОСА д = Payments.Schema |> где ([user_id: ^ user_id]) |> где (^ FILTER_NAME (PARAMS [: имя])) |> где (^ filter_status (PARAMS [: состояние])) |>
user8566336
1

голосов
0

ответ
71

Просмотры

Django ORM исключить не удается

У меня есть некоторые проблемы с моим запросом - с фильтром () это нормально, но с исключением () не работает. Мои модели: класс Dictionary (DateTimeModel): base_word = models.ForeignKey (BaseDictionary, related_name = _ ( 'dict_words')) слово = models.CharField (max_length = 64) версия = models.ForeignKey (Version) класс FrequencyData (DateTimeModel): слово = models.ForeignKey (словарь, related_name = _ ( 'frequency_data')) = кол models.BigIntegerField (нуль = True, пустой = True) Источник = models.ForeignKey (Источник, related_name = _ ( 'frequency_data'), нуль = Правда, пустой = True) пользователь = models.ForeignKey (settings.AUTH_USER_MODEL, related_name = _ ( 'frequency_data')) user_ip_address = models.GenericIPAddressField (нуль = True, пусто = True) date_of_checking = models.DateTimeField (нуль = True, пусто = True) is_checked = модели. BooleanField (по умолчанию = False) И я хочу, чтобы получить какое-то слово из словаря, где частоты которых не от какого-либо пользователя Dictionary.objects.prefetch_related ( 'frequency_data') фильтра (frequency_data__user = 1). [: 100] - OK Dictionary.objects. . prefetch_related ( 'frequency_data') исключить (frequency_data__user = 1) [100] - процессор до 100% и загрузку Без prefetch_related то же самое. Что с исключить? ED словарь дб Tabel - 120k строк FrequencyData - 160k строки EDIT2 PSQL (9.6.6) 100] - процессор до 100% и загрузки Без prefetch_related то же самое. Что с исключить? ED словарь дб Tabel - 120k строк FrequencyData - 160k строки EDIT2 PSQL (9.6.6) 100] - процессор до 100% и загрузки Без prefetch_related то же самое. Что с исключить? ED словарь дб Tabel - 120k строк FrequencyData - 160k строки EDIT2 PSQL (9.6.6)
Mike Br
1

голосов
1

ответ
109

Просмотры

Я установки PSQL и pgadmin на мой макинтош. Я могу создать базу данных и таблицы на обоих, но они, кажется, не подключать

У меня есть Psql установленного на моем компьютере. Базы данных по PSQL и pgadmin разные, и я не могу показаться, чтобы соединить их друг с другом. Я хотел бы иметь возможность создать базу данных и таблицу в PSQL и он также доступен в pgadmin, но не смог до сих пор. Я попробовал Google и StackOverflow, но безуспешно. PSQL оболочка на моих Мас версия 10.4 pgadmin графического интерфейс на моих Мас версии 3.0 Есть ли способ, что эти два может быть связан друг с другом, так что я могу управлять базой данных либо? Я создал базу данных по pgadmin с помощью графического интерфейса и / или через jupyter ноутбук через SQLAlchemy, но он не показывает на PSQL. Я создал базу данных и таблицу на PSQL, но он не показывает на pgadmin. Не уверен, что я делаю неправильно? Пробовал Google, чтобы увидеть, если я могу подключиться к pgadmin из PSQL, но не смогли найти ничего. Дайте мне знать, что я делаю неправильно и как я могу соединить эти два. Спасибо
uclaastro
1

голосов
0

ответ
95

Просмотры

Как «установить часовой пояс» для PSQL от JPA EntityManager?

Как я должен управлять временем в формате UTC, чтобы иметь возможность добавлять смещение? Я знаю основы отсюда: http://blog.untrod.com/2016/08/actually-understanding-timezones-in-postgresql.html Но все же найти правильное решение этой проблемы: Psql база данных находится в UTC, для дата хранится в БД, я хочу, чтобы пройти зону и получить обратно правильный результат часовой пояс: скажем, проходящее Europe / Berlin должно привести: 2018-02-03 02: 00: 00 + 00 -> 2018-02-03 04:00 : 00 + 02: 00 Когда я использую выберите my_date с часовым поясом «Europe / Berlin» будет увеличивать час правильно, но unfortanetly усечет смещение. Одно решение, которое я нашел в «установить часовой пояс = Europe / Berlin» перед запросом, который работает как шарм, когда я использую его из чистого SQL. Однако, когда я пытаюсь вызвать его как nativequery это приводит к ошибке, может быть, потому, что оно не запрос DML. Я попытался установить часовой пояс сеанса из кода Java для сессии:. Сессия = HibernateUtil.getSessionFactory () withOptions () .jdbcTimeZone (TimeZone.getTimeZone ( "Europe / Berlin")) .openSession (); Но запрос в том же сеансе (SELECT current_setting ( «TIMEZONE»);) говорит, что до сих пор UTC. Я могу решить эту проблему с помощью кода (трансформирующего результата от кода в зависимости от зоны), но я хочу сделать это с SQL-запроса. Возможно ли это каким-то образом? Я могу решить эту проблему с помощью кода (трансформирующего результата от кода в зависимости от зоны), но я хочу сделать это с SQL-запроса. Возможно ли это каким-то образом? Я могу решить эту проблему с помощью кода (трансформирующего результата от кода в зависимости от зоны), но я хочу сделать это с SQL-запроса. Возможно ли это каким-то образом?
beatrice
1

голосов
1

ответ
50

Просмотры

Multi-Processing с суб-процесса, Python и PSQL

У меня есть 100 мест, которые я пытаюсь обработать. Каждое место требует того же рабочего процесса, поэтому я разработал набор скриптов, чтобы сделать это. Во-первых, я сделать некоторые приготовительные из расположения файлов в Python. Это первый код Python затем вызывает другой (2-й) Python скрипт, используя подпроцесс. Это второй Python называют модули и выполняет некоторые процедуры перед вызовом подпроцесса снова запустить кучу команд PSQL. После того, как первый сценарий Python называет второе, это бесплатно, чтобы начать на следующем месте. Прямо сейчас, я позволяю 5 экземпляров второго Python, чтобы быть вызвано: для х, каждый в Перечислять (место нахождения): .... (ИЙ КОД), если х == 0: процесс = subprocess.Popen (команда, оболочка = Правда) Элиф х == 1: Process1 = subprocess.Popen (команда, оболочки = True) Элиф х == 2: Process2 = subprocess.Popen (команда, оболочки = True) Элиф х == 3: = subprocess.Popen процесса 3 (команда, оболочки = True) Элиф х == 4: process4 = subprocess.Popen (команда, оболочки = True), тогда как process.poll () не является None: time.sleep (0,5), тогда как process1.poll ( ) не является None: time.sleep (0,5), тогда как process2.poll () не является None: time.sleep (0,5), тогда как process3.poll () не является None: time.sleep (0,5), тогда как process4.poll () не None: время .sleep (0,5) Я не использую PIPE или стандартный вывод, как представляется, запирать последовательные вызовы подпроцесса. Внутри второго питона я делаю кучу обработки, а затем вызвать: Защиту execute_psql (код): «PSQL -f% S„пользователь хост = postgres.local DbName = проекты = Дэвид пароль = XXXXX порт = 5432“» команды =% ( codespace + \\ коды \\ 'ул (I) + код + .sql') = процесс subprocess.Popen (команда, оболочки = True), тогда как process.poll () является Нет: time.sleep (0. 5) Это называется около 15 раз из-за количество отдельных сценариев PSQL, что я должен работать. Когда я запускаю этот набор кодов на 1 месте он работает и успешно завершается в течение 3 часов. Когда я бегу с даже только 2 места, времени резко возрастает, и я бы рискнул сказать, остановки для большинства процессов. Сейчас я тестирую 2 в то время. 30% сценарии PSQL были успешно выполнены за 1 место и 90% для других. Тока PSQL уже в течение 6 и 20 часов соответственно. Что может быть причиной кода просто стойло, как это? Я среди теорий тестирования (например, (1) изменение оболочки = True обстреливать = False, например, (2) переименовать все переменные, включая «процесс», чтобы быть уникальным именем переменной). На стороне базы данных: Код, который составляет до 20 часов только чтение (со статусом HTOP = R) и использует до 100% от процессора на одном ядре. 6 часа код на 3% загрузке процессора и находится в состоянии D (или источник бесперебойного сна).
D_C
1

голосов
2

ответ
63

Просмотры

Error connecting to DB via ssh with Python on Windows

У меня есть фрагмент кода, который позволяет мне подключиться к PSQL DB через SSH в Python. Он отлично работает на Ubuntu 18.10 (с помощью VirtualBox), но не каждый раз, когда на окнах с ошибкой, что он не может достигнуть удаленный хост и порт. Я разрабатывала пользовательский интерфейс, который может запрашивать данные из удаленного БД (журналы и т.д.) и визуализировать его. Все развитие было сделано с помощью Spyder3 на Ubuntu 18.10. Я никогда не была проблема, пока я не попытался выполнить тот же код на Windows, 10. Я попытался Telnet как к локальному хосту: порт и удаленный хост: порт (через SSH), и она работает. Просмотрев все возможные ответы на StackOverflow и в других местах, я до сих пор не в состоянии решить эту проблему. Дело в том, что она работает на одной среде, а не на другой, в то время как на той же машине, говорит мне, что это какая-то настройка среды, но я не» знаю, что это может быть. Код: импорт psycopg2 импорта протоколирование logging.basicConfig (уровень = logging.DEBUG) от sshtunnel импорта SSHTunnelForwarder PORT = 5432 REMOTE_HOST = REMOTE_SSH_PORT '111.222.111.222' = 22 Curs = Отсутствует Отсутствует подключ = Сервер = SSHTunnelForwarder ((REMOTE_HOST, REMOTE_SSH_PORT), ssh_username = 'имя пользователя', ssh_password = 'пароль', remote_bind_address = ( 'локальный', PORT), local_bind_address = ( 'локальный', PORT)) server.start () Conn = psycopg2.connect (база данных = 'db_name', пользователь = «db_username», пароль = «пароль_базы_данных», хозяин = «127.0.0.1», порт = «5432») псы = conn.cursor () Ожидаемый: успешное подключение к SSH и последующие успешный вход в базу данных. Это работает на Ubuntu 18.10 с помощью VirtualBox на той же машине. Фактический результат:
Alexandros
1

голосов
2

ответ
129

Просмотры

PSQL: Невозможно ввести пароль

Я установил PostGreSQL версию 11.1 на моем окна-x64 ноутбук, и я в состоянии получить доступ к базе данных через pgAdmin 4. Однако я не могу получить доступ к базе данных через командную строку. Это спросить Пароль, но не позволяет вводить. Я попытался повторно установить программное обеспечение, но это не work.Also, я добавил бен & Lib путь к папке для Enviorment переменных. Пожалуйста, порекомендуйте. Сообщение об ошибке: Проверка подлинности пароля неудачен для пользователя аЬс
Santosh
1

голосов
1

ответ
24

Просмотры

Geoserver создает медленные запросы Psql

Я испытываю некоторую медлительность с Geoserver + PostGIS. Фильтрация слоя занимает огромное количество времени для Geoserver, чтобы сделать плитки. Например у меня есть массив идентификаторов, которые должны быть показаны, так что я сделать CQL_FILTER как CQL_FILTER = «идентификатор („1“,„2“)» Я проверил регистратор запроса в PSQL и запрос выглядит SELECT «ObjectID »закодировать (ST_AsBinary (ST_Force2D ( "the_geom")), 'base64') как "the_geom" от "общественного". "таблицы" WHERE ((( "ID"= '1' AND "идентификатор" IS NOT NULL) ИЛИ ( «ID» = «2» и «идентификатор» IS NOT NULL) конечно мне нужно запросить сотни идентификаторов и запрос PSQL занимает около 30 секунд, чтобы закончить Но если я просто сделать этот запрос:. SELECT «ObjectID», закодировать (ST_AsBinary (ST_Force2D ( "the_geom")), «Base64») как «the_geom» от «общественного». «Стол», где идентификатор ( «1», «2») запрос заканчивается в ~ 1 сек. Есть ли способ, чтобы «оптимизировать» путь GeoServer записывает запросы? Я попытался оптимизировать сервер Psql за счет увеличения размеров кэша, оптимизация для M2 SSD и prewarming Спасибо! Edit: Удаление строк с, где ID является нулевым, добавление NOT NULL заявления в колонку внутри PSQL и перегрузочное слой внутри GeoServer удалили «идентификатор» IS NOT NULL из запроса и время запроса вдвое меньше, чем раньше, но это все еще не достаточно хорошо. Это действительно должно быть просто просто в запросе. как GeoServer пишет запросы? Я попытался оптимизировать сервер Psql за счет увеличения размеров кэша, оптимизация для M2 SSD и prewarming Спасибо! Edit: Удаление строк с, где ID является нулевым, добавление NOT NULL заявления в колонку внутри PSQL и перегрузочное слой внутри GeoServer удалили «идентификатор» IS NOT NULL из запроса и время запроса вдвое меньше, чем раньше, но это все еще не достаточно хорошо. Это действительно должно быть просто просто в запросе. как GeoServer пишет запросы? Я попытался оптимизировать сервер Psql за счет увеличения размеров кэша, оптимизация для M2 SSD и prewarming Спасибо! Edit: Удаление строк с, где ID является нулевым, добавление NOT NULL заявления в колонку внутри PSQL и перегрузочное слой внутри GeoServer удалили «идентификатор» IS NOT NULL из запроса и время запроса вдвое меньше, чем раньше, но это все еще не достаточно хорошо. Это действительно должно быть просто просто в запросе. но это все еще не достаточно хорошо. Это действительно должно быть просто просто в запросе. но это все еще не достаточно хорошо. Это действительно должно быть просто просто в запросе.
Ionut33
1

голосов
0

ответ
33

Просмотры

установка PSQL требует Systemd

Я устанавливаю Psql на моем AWS ЭМИ (например, EC2), которая является Amazon Linux (не Amazon Linux 2). Я получаю сообщение об ошибке после выполнения команды Sudo ням установить -y postgresql10 Ошибка: Пакет: postgresql10-10.7-2PGDG.rhel7.x86_64 (pgdg10) Требуется: Systemd Amazon Linux 2 поставляется с Systemd но AWS ЭМИ не поддерживает Amazon Linux 2 . Как я могу установить клиент Psql на AWS ЭМИ?
1

голосов
2

ответ
18

Просмотры

Как вызвать ошибку из сценария вызывается из Psql -f my_script.sql

Я делаю следующее в сценарии SQL, которые я называю, делая Psql -f my_script.sql: выберите не существует (выберите 1 из pg_class где relname = «my_table»), как my_table_not_exists \ gset \ если: my_table_not_exists - поднять ошибка \ ENDIF Как я могу вернуть код состояния не-0 и записи таблицы «table_name» не существует в стандартный вывод там?
believesInSanta
1

голосов
1

ответ
3.3k

Просмотры

Отношение «рк» уже существует в Postgresql 9.1

Я новичок в Postgres / PostGIS, в настоящее время после PostGIS книги. Когда я попробовал один из запроса на их примере, я получаю ошибку ниже о том, что отношение «рк» уже существует. Означает ли это, что 2 таблицы не могут иметь ограничения, с теми же именами? Запрос: CREATE TABLE дороги (GID серийный PRIMARY KEY, ROAD_NAME характер изменения (100)); ВЫБРАТЬ AddGeometryColumn ( 'общественная', 'дорога', 'геом', 4269, 'LINESTRING', 2); CREATE TABLE roads_NE (Constraint рк PRIMARY KEY (GID)) унаследована (дороги); ALTER TABLE ADD CONSTRAINT roads_NE CHK ПРОВЕРКА (состояние IN ( 'MA', 'ME', 'NH', 'VT', 'КТ', 'РИ')); CREATE TABLE roads_SW (Constraint рк PRIMARY KEY (GID)) унаследована (дороги); ALTER TABLE ADD CONSTRAINT roads_SW ЧК ЧЕК (состояние IN ( 'AZ', 'М.', 'NV')); Ошибка:
Nyxynyx
1

голосов
1

ответ
61

Просмотры

Не могу найти свои базы данных после отключения питания и перезагрузок

OSX 10.9.3 PSQL 9.3.4 У меня было несколько баз данных, которые я работал, и мы сократили власть в течение ночи. Теперь не из моей базы данных (в том числе базы данных по умолчанию (имя пользователя)) присутствует. Почему все базы данных ушли из PSQL? не они были спасены ли? Есть ли возможно, что они все еще присутствуют, но не перечисленные \ DT? Любая помощь о том, как восстановить эти базы данных будет весьма признателен!
Simon
1

голосов
1

ответ
259

Просмотры

Частота ассоциации Sql счетчик

Учитывая, таблицу 2-колонок, где всегда есть по крайней мере 2 вхождение значения в первом столбце, и каждая отдельная величина в этом столбце соответствует различным значениям во второй колонке. Так как: X | AA X | BB Z | CC Z | BB Z | AA W | AA W | BB W | CC Как получить частоту ассоциации, или рассчитывать, пар значений из второго столбца? Так что, в первую таблицу, вы в конечном итоге с чем-то вроде: AA, BB | 3 AA, CC | 2 CC, BB | 2, где второй столбец представляет собой подсчет вхождений первых пар столбцов ой, и порядок не имеет значения, но должно происходить только один раз AA, BB = BB, А.А.
House3272
1

голосов
1

ответ
718

Просмотры

Как разобрать выход Psql с subprocess.Popen

Я хочу, чтобы выполнить команду Psql --username = Фред MyDB <//10.0.0.1/share/dump.sql.pgdump, но через subprocess.Popen, так что я могу разобрать выход. Тем не менее, я получаю следующее сообщение об ошибке при этом: >>> Psql: предупреждение: дополнительный аргумент командной строки «>>» + line.rstrip ())
fredrik
1

голосов
1

ответ
56

Просмотры

запрашивая объект JSON из таблицы в POSTGRESQL

Я хочу использовать, когда условие на объект JSON в таблице, в PostGreSQL. как мне нужно, чтобы сделать это, например: у меня есть таблица «тест» имеет три колонки имя (VARCHAR), гиперссылка (VARCHAR), больше (JSON). Мне нужно получить дату, где css21Colors = Фиолетовый. более тип JSON и ниже значения дополнительной области. Пожалуйста, дайте мне знать, что должно быть синтаксис запросов для того же самого? более = { "colorTree": { "Фиолетовый": [{ "испанский Violet": "# 522173"}], "Браун": [{ "Dark Puce": "# 4e3347"}], "Белый": [{ "Белый": "# FFFFFF"}], "Black": [{ "Жуткий Black": "# 1d0d27"}], "Серый": [{ "Розовый кварц": "# a091a4"}]}, «sizeoutscount ": 0," css21Colors ": {" Фиолетовые ": 69," Браун ": 5," Белый ": 4,"
singh
1

голосов
2

ответ
913

Просмотры

PSQL Уровень ошибки в пакетном For Loop

Я пытаюсь выполнить запрос Postgres из пакетного файла. Тем не менее, я до сих пор не удалось обнаружить, когда команда выходит из строя. Ниже то, что я пытался до сих пор: @FOR / F %% A IN ( 'PSQL -U имя_пользователя -d DbName -t -c "SELECT * FROM nonExistantTable" 2 ^> ^ & 1') DO @ (ECHO ERRORLEVEL !) Я также попытался следующие: 1) Добавление "CALL" перед командой SQL (CALL PSQL -U ...) 2) Добавление "-v ON_ERROR_STOP = 1" в команду SQL, как с и без " команда CALL»(PSQL -U ... -v ON_ERROR_STOP = 1) Тем не менее, значение ERRORLEVEL всегда выходит как ноль. Кто-нибудь знает, как обнаружить ошибку в вызове Psql используя партию? В частности, ошибка я получаю то, что таблица не существует. Благодарю.
Jeff G
1

голосов
1

ответ
346

Просмотры

PSQL ошибка синтаксиса или вблизи «+»

Я пытаюсь использовать арифметические вычисления: \ установить startSmallOffset 1000000 \ набор traineeNext: startSmallOffset + 2000 ALTER SEQUENCE record_trainee_id_seq RESTART WITH: traineeNext ошибку: ОШИБКА: Ошибка синтаксиса в или около "+" LINE 1: ALTER SEQUENCE record_trainee_id_seq ЗАНОВО С 1000000+ 2000 ... Она работает, если удалить «+2000» Цените любой совет
Roy Shmuli
1

голосов
1

ответ
27

Просмотры

Вставка в таблицу после сброса стр

Я использовал pg_dump для заполнения таблицы в новой базе данных. После этого, я хочу, чтобы иметь возможность вставлять строки в таблицу, используя autoincrementer по умолчанию последовательного ключа. Вот что у меня есть в таблице: В этой таблице (smtable), а является ключом (устанавливается как последовательный). --data заполнены с использованием пг дамп | б 1 2 2-Теперь, когда я делаю следующее заявление: INSERT INTO smtable ЗНАЧЕНИЯ (по умолчанию, 6) возвращающий INTO идентификатора; Я получаю следующее сообщение об ошибке: [Ошибка: продублировать значение ключа нарушает ограничение уникальности «a_pkey»] деталь: «Key (а) = (1), уже существует. Как я могу получить это заявление, чтобы вставить next_key таблицы ..
faizanjehangir
1

голосов
3

ответ
46

Просмотры

SQL таблицы Обновление от другого

У меня есть таблица следующим образом: DEV => \ д statemachine_history Таблица «public.statemachine_history» Колонка | Тип | Модификаторы --------------- + -------------------------- + ------ -------------------------------------------------- ----------- идентификатор | BIGINT | не нулевая NEXTVAL по умолчанию ( 'statemachine_history_id_seq' :: regclass) schema_name | характер изменения | не нулевое событие | характер изменения | не нулевой идентификатор | целое число | не нулевая initial_state | характер изменения | не нулевая final_state | характер изменения | не нулевая triggered_at | Отметка времени с часовым поясом | не нулевая statement_timestamp по умолчанию () triggered_by | текст | команда | JSON | флаг | JSON | created_at | Отметка времени с часовым поясом | CREATED_BY | JSON | updated_at | Отметка времени с часовым поясом | updated_by | JSON | Индексы: "statemachine_log_pkey" PRIMARY KEY, ВТКЕЙ (идентификатор) "unique_statemachine_log_id" UNIQUE, ВТКЕЙ (идентификатор) "statemachine_history_identifier_idx" ВТКЕЙ (идентификатор) "statemachine_history_schema_name_idx" ВТКЕЙ (имя_схемы) и DEV => \ д бронирование Таблица "public.booking" Колонок | Тип | Модификаторы ---------------- + -------------------------- + ----- ------------------------------------------------- Я бы | BIGINT | не нулевая NEXTVAL по умолчанию ( 'booking_id_seq' :: regclass) контактный | характер изменения | occurred_at | Отметка времени с часовым поясом | membership_id | BIGINT | appointment_id | BIGINT | created_at | Отметка времени с часовым поясом | CREATED_BY | JSON | updated_at | Отметка времени с часовым поясом | updated_by | JSON | customer_id | BIGINT | состояние | характер изменения | не нуль по умолчанию 'забронировано' :: характер изменения Индексы: "booking_pkey" PRIMARY KEY, ВТКЕЙ (ID) ограничения внешнего ключа: "booking_appointment_id_fkey" FOREIGN KEY (appointment_id) ЛИТЕРАТУРЫ назначение (ID) "booking_customer_id_fkey" FOREIGN KEY (Customer_ID) ЛИТЕРАТУРЫ клиенты (ID) "booking_membership_id_fkey" FOREIGN KEY членство (membership_id) Список литературы (идентификатор) Референт: СТОЛ "booking_decline_reason" CONSTRAINT "booking_decline_reason_booking_id_fkey" FOREIGN KEY (booking_id) ЛИТЕРАТУРЫ бронирование (ID) Я пытаюсь обновить booking.update_at от statemachine_history.updated_at Letting вы знаете, что там это один ко многим отношений между 2 таблицами, поэтому я хочу, чтобы MAX (statemachine_history.updated_at) Моя попытка является: UPDATE SET бронирование updated_at = (SELECT MAX (updated_at) FROM statemachine_history WHERE schema_name = 'Забронировать' и идентификатор = GROUP BY идентификатор идентификатора ); Однако bookings.updated_at становится нулевым FOREIGN KEY (booking_id) ЛИТЕРАТУРЫ бронирование (ID) Я пытаюсь обновить booking.update_at от statemachine_history.updated_at Позволяя вы знаете, что есть один ко многим отношений между 2 таблицами, поэтому я хочу, чтобы MAX (statemachine_history.updated_at) Мои попробовать это: ОБНОВЛЕНИЕ бронирование SET updated_at = (SELECT MAX (updated_at) ОТ statemachine_history ГДЕ имя_схемы = 'Заказ' и идентификатор = идентификатор GROUP BY идентификатора); Однако bookings.updated_at становится нулевым FOREIGN KEY (booking_id) ЛИТЕРАТУРЫ бронирование (ID) Я пытаюсь обновить booking.update_at от statemachine_history.updated_at Позволяя вы знаете, что есть один ко многим отношений между 2 таблицами, поэтому я хочу, чтобы MAX (statemachine_history.updated_at) Мои попробовать это: ОБНОВЛЕНИЕ бронирование SET updated_at = (SELECT MAX (updated_at) ОТ statemachine_history ГДЕ имя_схемы = 'Заказ' и идентификатор = идентификатор GROUP BY идентификатора); Однако bookings.updated_at становится нулевым ОБНОВЛЕНИЕ бронирование SET updated_at = (SELECT MAX (updated_at) ОТ statemachine_history ГДЕ имя_схемы = 'Заказ' и идентификатор = идентификатор группы идентификатором); Однако bookings.updated_at становится нулевым ОБНОВЛЕНИЕ бронирование SET updated_at = (SELECT MAX (updated_at) ОТ statemachine_history ГДЕ имя_схемы = 'Заказ' и идентификатор = идентификатор группы идентификатором); Однако bookings.updated_at становится нулевым
Dahab
1

голосов
1

ответ
35

Просмотры

Regex Справка для поиска по шаблону

У меня возникли проблемы с этим подстановочным поиском, не знает, почему это не работает: Я отрываясь примером агента по продажам 42. Как вы можете себе представить, что продажи, они не очень заботятся о мусоре в = мусоре на выходе. Поэтому их коды агентов, как правило, беспорядок перебирать. Правильные Примеры агента 42: 42 30-42-22-праздник 42easter 42coupon 42coupon-423355 29-42sale-52 недействительные примеров, которые явно должны не показать A4290042 4297901 42cmowc209d o203f9j42po0 Вот самая успешная модель, которую я придумал с: SELECT company_id, агент из cust_data ГДЕ (агент = ( '42') или агентом, таким как ('42% -% ') или агентом, таким как (' % -% 42 ') или агентом, таким как (' % -% 42% - % ') или агентом, таким как ('42 [AZ]% -%') или агентом, таким как ( '% -% 42 [AZ]%') или агентом, таким как ( '% -% 42 [AZ]% -%') ИЛИ агентом, таким как ('42 [AZ]%»
imadirtycunit
1

голосов
1

ответ
44

Просмотры

Postgres запрос на выборку по колонку времени генерировать выходные неправильно

Я использую Postgres и у меня есть эта запись, которая имеет столбец дата_время: «2015-09-01 9:41:15» Когда я делаю Psql запрос из pgadmin: выберите * из таблицы, где date_time> = «2015-08- 31' и date_time
Arnold Cristobal
1

голосов
1

ответ
337

Просмотры

Невозможно преобразовать Psql строку временной метки

Я пытаюсь сделать простую строку для преобразования даты; Однако, PSQL жалуется, когда есть часовой пояс в этой строке. Их документация четко говорится, что ее поддержали; однако, он жалуется. Я даже не заботиться о часовом поясе, я просто хочу, чтобы преобразовать строку. дб => выберите to_timestamp ( 'Mon Feb 23 13:43:07 PST 2015', 'Dy Mon DD HH24: MI: SS TZ YYYY') :: метки времени без временной зоны; ОШИБКА: узоры "TZ" / "TZ" формат не поддерживается в to_date версии Postgres: 9.3.10 http://www.postgresql.org/docs/9.3/static/functions-formatting.html
user2158382
1

голосов
1

ответ
162

Просмотры

Java во время выполнения регистрации Exec PSQL

Я могу запустить следующий через Баш и он будет работать: Psql -h -p -d -U -w -v имя = "" пользователь" -v избавиться = 2 -c«\ л ../../ .. /resources/sql/myFile.sql Когда я пытаюсь запустить команду в Java, используя следующий, он ничего не делает, но он не выдаст ошибку либо. Есть ли способ, что я могу войти, что ехес в Java делает, поэтому я могу понять, почему он не работает? попробуйте {строку String; log.error ( "Working Directory =" + System.getProperty ( "user.dir")); Процесс р = Runtime.getRuntime (). Exec ( "PSQL -h -p -d -U -w -v имя пользователя = \" 'пользователь' \ "-v" + «избавить = 2 -c«\\ IR SQL / myFile.sql ' "); log.error ( "ЗДЕСЬ"); BufferedReader вход = новый BufferedReader (новый InputStreamReader (стр. getInputStream ())); в то время как ((строка = input.readLine ())! = NULL) {log.error (линия); } Input.close (); log.error ( "здесь 2"); } Задвижка (Исключение е) {log.error ( "Ошибка" + e.toString ()); } Здесь и здесь 2 напечатать на консоль, но ничего не произошло ошибки. Значение выхода процесса 1.
reutsey
1

голосов
1

ответ
2.9k

Просмотры

PSQL дополнительный аргумент командной строки

Может кто-нибудь сказать мне, почему я получаю ошибку дополнительного аргумента командной строки здесь? Когда я использую -f и дать ему полный путь к файлу SQL он работает отлично. Я хотел бы использовать относительный путь вместо, так что я пытался использовать команду \ ир. PSQL -c \ с PostgreSQL: // докер: 1234 / NBT = SSL верно -U админ -v имя пользователя = 'user73291' -v RecipeID = 2 -c \ л»../../../resources/sql /myfile.sql»ошибка: PSQL предупреждение: дополнительный аргумент командной строки„../../../resources/sql/myfile.sql“игнорируется оШИБКА: ошибка синтаксиса или вблизи„иК“LINE 1: л ^ Спасибо!
reutsey
1

голосов
1

ответ
500

Просмотры

Передача списка переменной окружения в PSQL

После нити здесь: я создал следующий SQL скрипт с Psql переменными: --query.sql выбрать * из my_table где день =: «день» и состояние в (: «государство») Я выполнение выше SQL скрипта через SSH с помощью следующие команды оболочки в скрипте: #! / bin / ш день = '2015-05-01' состояние = 'CA' SSH MyServer «PSQL -A -q -F $ '\ т' -d my_db -o temp_file. CSV --set = день = $ {день} --set = говорится = $ {состояние}»<„query.sql“вопрос, который я имею, как пройти в списке состояний. Если бы я хотел передать в 3 штатах из сценария оболочки, как: состояние = «„CA“,„NY“,„WA“» Мой запрос к базе данных вернется 0 строк. Что такое правильный способ передать список состояний из скрипта в переменную Psql?
divide_by_zero
1

голосов
1

ответ
697

Просмотры

Phinx миграция - столбец перечислимого со значением по умолчанию

При добавлении миграции phinx, можно ли addColumn перечисления со значением по умолчанию? Для достижения: 1. Всех существующих строк имеют значение по умолчанию ( «активным» в данном случае) 2. Всех новых записей имеют значение по умолчанию ( «активное» в данном случае) Что-то я строй вверх это: $ this-> стол ( 'my_table') -> addColumn ( 'статус', 'перечисление', [ 'значения' => [ 'активный', 'отменен', 'истекли']]) -> создать (); // как добавить «активный» по умолчанию?
phpfreak
1

голосов
1

ответ
73

Просмотры

Return only substructure using ltree Postgres plugin

I have the following query and I'm using the postgres plugin ltree. I am trying to do something conceptually similar to cutting the tree along what you could imagine is the y-axis of the tree. I can easily do this with the following query: testdb2=# SELECT * FROM test WHERE yaxis >= 3 ORDER BY yaxis; path | yaxis | leaf --------------------------------+-------+------ Top.Hobbies.Amateurs_Astronomy | 3 | t Top.Science.Astronomy | 3 | Top.Collections.Pictures | 3 | Top.Hobbies | 4 | Top.Science | 4 | Top.Collections | 4 | Top | 5 | However I would like a tree query that does not return Top, Top.Hobbies, and Top.Science because there are nodes beneath these. I understand saying yaxis=3 would accomplish this but this set of data is a over simplification. An important point is that these are not leaves. There is structure beneath. So I'm not looking for something that returns leaves. This is the full set: path | yaxis | leaf -----------------------------------------------+-------+------ Top | 5 | Top.Science | 4 | Top.Science.Astronomy | 3 | Top.Hobbies | 4 | Top.Collections | 4 | Top.Collections.Pictures.Astronomy | 2 | Top.Collections.Pictures | 3 | Top.Collections.Pictures.Astronomy.Stars | 1 | t Top.Collections.Pictures.Astronomy.Galaxies | 1 | t Top.Collections.Pictures.Astronomy.Astronauts | 1 | t Top.Hobbies.Amateurs_Astronomy | 3 | t Top.Science.Astronomy.Astrophysics | 2 | t Top.Science.Astronomy.Cosmology | 2 | t The values I would like to see are these: path | yaxis | leaf --------------------------------+-------+------ Top.Hobbies.Amateurs_Astronomy | 3 | t Top.Science.Astronomy | 3 | Top.Collections.Pictures | 3 | But, again, not using the value 3 exact match, because this demo data is an over simplification.
JZ.
1

голосов
1

ответ
41

Просмотры

Рельсы один-ко-многим: значение Validate поля

Предположим, у меня есть два класса класса студентов <ApplicationRecord HAS_MANY: книги конец класса Book <ApplicationRecord belongs_to: студент конец Каждая книга будет иметь логическую переменную для чтения, указывающее, если эта книга была прочитана или нет. Каждый студент может читать только одну книгу. Если какие-либо из книги студента помечаются как читать, другая его книга не может быть прочитана больше. Есть ли PSQL или проверки активной записи, чтобы это ограничение должно произойти? В частности, book.update_attributes (читай: правда!) Будет делать проверку на других связанных книг. DB ограничения быть намного предпочтительнее будет. Большое спасибо! Обновление постановки задачи: чтение становится временной метки read_at и book.update_attributes (read_at: Time.zone.now)! Будет делать чек, если студент читать любые другие книги ранее.
LOCKLOCK
1

голосов
1

ответ
998

Просмотры

Как выпустить Psql порт?

Я искал, как закрыть Psql порт на некоторое время, но большинство ответов говорит о закрытии команды PSQL строки, используя \ д, который не то, что я ищу. Моя проблема, то PostgreSQL на моем ноутбуке работает и прослушивает порт 5432, но я хотел бы использовать порт 5432 для другого использования. Обычно я бегу NetStat -plnt, чтобы найти способ, чтобы убить, но в этом случае процесс, который прослушивает порт 5432 не имеет идентификатор процесса ... Любая идея о том, как я могу освободить порт 5432? Прото Recv-Q Send-Q Локальный адрес Внешний адрес Состояние PID Имя / Программа ТСР 0 0 127.0.0.1:5432 0.0.0.0:* СЛУШАТЬ -
Justin Li
1

голосов
1

ответ
18

Просмотры

How to delete mirrored values in 2 columns

I have a table with 2 columns that contain some rows with unique id pairs and some rows with pairs that are a mirrored duplicate of another row. I want to remove one of the duplicates. id1 | id2 -----+----- 1 | 9 2 | 10 5 | 4 6 | 16 7 | 11 8 | 12 9 | 1 10 | 2 12 | 14 14 | 8 16 | 6 So 1 | 9 mirrors 9 | 1. I want to keep 1 | 9 but delete 9 | 1. I've tried. SELECT id1, id2 FROM ( SELECT id1, id2, ROW_NUMBER() OVER (PARTITION BY id1, id2 ORDER BY id1) AS occu FROM table ) t WHERE t.occu = 1; But it has no effect. I'm pretty new to this so any help you can give would be greatly appreciated. ====UPDATE==== I accepted the answer from @Mureinik and adapted it to work as a filter in a subquery: SELECT * FROM table WHERE id1 NOT IN (SELECT id1 FROM table a WHERE id1 > id2 AND EXISTS (SELECT * FROM table b WHERE a.id1 = b.id2 AND a.id2 = b.id1));
tdnelson2
1

голосов
1

ответ
420

Просмотры

PSQL: Syntax error when passing set date variable into datetime

Я работаю на стороне сервера (с использованием SSH) в PSQL, где установить переменные с помощью команды «\ набор». Мое беспокойство заключается в следующем: У меня есть запрос, где я вставив набор строку (дату) в DateTime, но я брошу ошибку синтаксиса. Простой пример: SELECT network_no, program_no, national_datetime. С видом КУДА national_datetime между «: FROM_DATE 06:00:00» и «: to_date 05:59:59» :: временной метки + 1 день ':: интервал Где FROM_DATE' и «to_date» были установлены соответственно: \ набор FROM_DATE 2017-07-10 \ набор TO_DATE 2017-07-16 Я обычно знаю с датами вы должны установить три набора апострофы правильно читать его (я никогда не ищутся причины), но я кормлю эту дату в DateTime, поэтому я решил, используя нет апострофа не будет работать, но я брошу эту ошибку:
swagardson
1

голосов
1

ответ
71

Просмотры

Как остановить Django / Psql от автоинкрементных таблиц ID на провале создания

В настоящее время у меня есть проект Django с таблицей ItemReport, что позволяет только 1 вход в день за единицу. Все хорошо, и кроме того, что всякий раз, когда он терпит неудачу с IntegrityError (т.е. мой проект пытался создать ItemReport на день, когда ItemReport уже существует, приращения ИД объекта в любом случае. Например: 1 сентября: Отчет по 1 сентября (ID 1 ) 2 сентября: отчет за сентябрь 1 (ID 1) Доклад для моделей как 2 сентября (ID 5) следующим образом: класс ItemReport (BaseModel): fk_item: Item = models.ForeignKey (пункт, нуль = False) дата = models.DateField ( по умолчанию = сейчас, нуль = False) класс Meta: unique_together = (( 'fk_item', 'дата')) класс Item (BaseModel): item_class = models.CharField (max_length = 40, нуль = False) имя = models.CharField (max_length = 80, уникальный = True,
Lorenzo Ang
1

голосов
2

ответ
506

Просмотры

Статус Эстимейта / Печать C CO для PostGreSQL таблицы

Я хочу, чтобы получить представление о том, сколько времени потребуется, чтобы скопировать файл CSV в таблицу PostGreSQL. Есть ли способ, чтобы напечатать строки, скопированные разумным образом или есть другой способ, чтобы как-то отображать ход копирования? Возможно, есть многословная установка или я должен использовать --echo или -qecho Я использую: PSQL -U Postgres -d nyc_data -h локальный -c «\ COPY проезжает ИЗ nyc_data_rides.csv CSV»
leonard
1

голосов
2

ответ
181

Просмотры

как вставить PostgreSQL результат переменной оболочки

Я хочу, чтобы установить весь этот синтаксис в переменном су -l Postgres -c "PSQL -c \" CREATE DATABASE графитового ПРЕДПРИНИМАТЕЛЯ графитовой \ "" CREATE DATABASE, так что я написал это ресом = $ (Su -l Postgres -c «Psql -c \ «CREATE DATABASE графита ПРЕДПРИНИМАТЕЛЬ графитовой \»») CREATE DATABASE, но $ Рез пустая эхо $ Рез я также пытался добавить„“, но без успеха. Как вставить результаты Су -l Postgres -c «PSQL -c \» CREATE DATABASE графитовой ПРЕДПРИНИМАТЕЛЬ графитовой \ «» в переменной оболочки?
King David
1

голосов
1

ответ
92

Просмотры

Psycopg2 (curr.execute) возвращает NONE питона

Я написал сценарий, чтобы обновить свою таблицу сотрудников psycopg2, но обновление не происходит currr.execute возвращается в None объект. мой код connm = psycopg2.connect (база данных = "база данных", пользователь = "пользователь", пароль = "проход", хозяин = "локальный", порт = "5432") connm.autocommit = True SQL = ""»сотрудник UPDATE SET имя =% s WHERE phone_number =% s ""»имя пользователя = ТОК = connm.cursor () "Майк" запрос = "+0123456789" а = curr.execute (SQL, (имя пользователь, запрос)) печать а connm.commit () curr.close () Этот объект аЬс не возвращается None. Пожалуйста, помогите мне! Заранее спасибо!

Просмотр дополнительных вопросов