notebookvb

This commit is contained in:
Vladimir Buzalka
2026-04-29 06:51:47 +02:00
parent a1b9c93506
commit a9c143ba24
141 changed files with 30711 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
"""
Průzkum Medicus databáze výpis tabulek a jejich sloupců.
"""
import fdb
conn = fdb.connect(
dsn=r'localhost:c:\medicus 3\data\medicus.fdb',
user='SYSDBA',
password='masterkey',
charset='win1250'
)
cur = conn.cursor()
# Všechny uživatelské tabulky
cur.execute("""
SELECT rdb$relation_name
FROM rdb$relations
WHERE rdb$view_blr IS NULL
AND (rdb$system_flag IS NULL OR rdb$system_flag = 0)
ORDER BY rdb$relation_name
""")
tables = [row[0].strip() for row in cur.fetchall()]
print(f"Počet tabulek: {len(tables)}\n")
print("=== SEZNAM TABULEK ===")
for t in tables:
print(f" {t}")
print("\n=== SLOUPCE KAŽDÉ TABULKY ===")
for table in tables:
cur.execute("""
SELECT rf.rdb$field_name, f.rdb$field_type, f.rdb$field_length
FROM rdb$relation_fields rf
JOIN rdb$fields f ON rf.rdb$field_source = f.rdb$field_name
WHERE rf.rdb$relation_name = ?
ORDER BY rf.rdb$field_position
""", (table,))
cols = cur.fetchall()
col_names = [c[0].strip() for c in cols]
print(f"\n{table}")
print(" " + ", ".join(col_names))
cur.close()
conn.close()