Hallo, ich habe einen Python -Code, in dem ich einige Daten aus der PostgreSQL -Tabelle ( Schema der Tabellen in einem db ) lese und einige Transformationen durchführen und dann einige Daten zurück in die postgresql -Tabelle schreiben, aber in einem anderen Schema So gleiche Datenbank, aber unter einem anderen Schema. Mein Code schreibt jedoch die Daten oder das Erstellen von Tabellen und das Schreiben von Daten in das gleiche Schema. < /p>
unten ist mein Code. Im folgenden Code gebe ich den Namen und den Tabellennamen des Schemas in der Variablen 'table_name', aber es hilft mir nicht. < /p>
Hallo, ich habe einen Python -Code, in dem ich einige Daten aus der PostgreSQL -Tabelle ([b] Schema der Tabellen in einem db [/b]) lese und einige Transformationen durchführen und dann einige Daten zurück in die postgresql -Tabelle schreiben, aber in einem anderen Schema So gleiche Datenbank, aber unter einem anderen Schema. Mein Code schreibt jedoch die Daten oder das Erstellen von Tabellen und das Schreiben von Daten in das gleiche Schema. < /p> unten ist mein Code. Im folgenden Code gebe ich den Namen und den Tabellennamen des Schemas in der Variablen 'table_name', aber es hilft mir nicht. < /p> [code]import pandas as pd import psycopg2 from sqlalchemy import create_engine, JSON import json
# Function to convert PostgreSQL data types to Snowflake data types def convert_data_type(pg_data_type): conversion_dict = { 'integer': 'NUMBER', 'bigint': 'NUMBER', 'smallint': 'NUMBER', 'serial': 'NUMBER', 'bigserial': 'NUMBER', 'decimal': 'NUMBER', 'numeric': 'NUMBER', 'real': 'FLOAT', 'double precision': 'FLOAT', 'money': 'FLOAT', 'character varying': 'VARCHAR', 'varchar': 'VARCHAR', 'character': 'CHAR', 'char': 'CHAR', 'text': 'STRING', 'bytea': 'BINARY', 'timestamp without time zone': 'TIMESTAMP_NTZ', 'timestamp with time zone': 'TIMESTAMP_TZ', 'date': 'DATE', 'time without time zone': 'TIME_NTZ', 'time with time zone': 'TIME_TZ', 'boolean': 'BOOLEAN' } return conversion_dict.get(pg_data_type, pg_data_type)
# Query to get table schemas cur.execute(""" SELECT table_schema, table_name, column_name, data_type FROM information_schema.columns WHERE table_schema = 'public' ORDER BY table_name """)
# Fetch all results results = cur.fetchall()
# Close the cursor and connection cur.close() conn.close()
# Process the results and create a DataFrame data = [] for row in results: table_schema, table_name, column_name, data_type = row converted_data_type = convert_data_type(data_type) data.append([table_schema, table_name, column_name, data_type, converted_data_type])
# Define the table name in the new schema table_name = 'project_demo.mapping_table'
# Insert the DataFrame into the PostgreSQL table in the new schema result.to_sql(table_name, engine, if_exists='replace', index=False, dtype={'columns': JSON, 'original_columns': JSON})
print("Data inserted successfully!")
[/code] Ich habe versucht, den Schema -Namen in der Variablen
Ich erhalte die folgende Fehlermeldung.
InvalidOperationException: Can't use schemaId $Registration for type $PortalService.Models.Registration . The same schemaId is already used for type...
Ich starte eine Java-App, an der ich gearbeitet habe, und beim Start soll sie diese Tabelle erstellen, falls sie nicht existiert. Die Java-App authentifiziert sich als Standardbenutzer bei der...
Ich habe einen großen JSON, den ich nicht in den Speicher laden möchte. Ich möchte es gegen ein JSON -Schema in einer Streaming -Modus validieren. Alle Bibliotheken, die ich bisher finden konnte,...