notebook vb
This commit is contained in:
53
MedicusWithClaude/test_ext_db.py
Normal file
53
MedicusWithClaude/test_ext_db.py
Normal file
@@ -0,0 +1,53 @@
|
||||
"""Test připojení k externí DB a prozkoumání její struktury - spusť na Windows"""
|
||||
import fdb, os, glob
|
||||
|
||||
# Najde první existující externí FDB soubor
|
||||
soubory = glob.glob(r'u:\MEDICUS_FILES_*.fdb')
|
||||
if not soubory:
|
||||
soubory = glob.glob(r'u:\externi\MEDICUS_FILES_*.fdb')
|
||||
|
||||
if not soubory:
|
||||
print("Žádné externí FDB soubory nenalezeny!")
|
||||
exit()
|
||||
|
||||
soubor = sorted(soubory)[-1] # vezme nejnovější
|
||||
print(f"Zkouším: {soubor}")
|
||||
|
||||
# Test 1: masterkey
|
||||
try:
|
||||
conn = fdb.connect(dsn=f'localhost:{soubor}', user='SYSDBA', password='masterkey', charset='win1250')
|
||||
print("✓ Připojení s masterkey FUNGUJE!")
|
||||
|
||||
cur = conn.cursor()
|
||||
|
||||
# Jaké tabulky jsou v externí DB?
|
||||
cur.execute("SELECT RDB$RELATION_NAME FROM RDB$RELATIONS WHERE RDB$SYSTEM_FLAG=0 AND RDB$VIEW_BLR IS NULL")
|
||||
tabulky = [r[0].strip() for r in cur.fetchall()]
|
||||
print(f"Tabulky v externí DB: {tabulky}")
|
||||
|
||||
# Kolik záznamů v FILES?
|
||||
if 'FILES' in tabulky:
|
||||
cur.execute("SELECT COUNT(*), MIN(ID), MAX(ID) FROM FILES")
|
||||
row = cur.fetchone()
|
||||
print(f"FILES: {row[0]} záznamů, ID od {row[1]} do {row[2]}")
|
||||
|
||||
cur.execute("SELECT ID, IDPAC, FILENAME, DATUM, OCTET_LENGTH(BODY) FROM FILES ORDER BY ID ROWS 3")
|
||||
for r in cur.fetchall():
|
||||
print(f" ID={r[0]} IDPAC={r[1]} FILE={r[2]} DATUM={r[3]} BODY={r[4]}B")
|
||||
|
||||
# Zjistit generátor
|
||||
cur.execute("SELECT RDB$GENERATOR_NAME, RDB$GENERATOR_ID FROM RDB$GENERATORS WHERE RDB$SYSTEM_FLAG=0")
|
||||
for r in cur.fetchall():
|
||||
print(f"Generátor: {r[0].strip()} = {r[1]}")
|
||||
|
||||
conn.close()
|
||||
except Exception as e:
|
||||
print(f"✗ masterkey NEFUNGUJE: {e}")
|
||||
|
||||
# Test s jiným heslem - zkus prázdné
|
||||
try:
|
||||
conn = fdb.connect(dsn=f'localhost:{soubor}', user='SYSDBA', password='', charset='win1250')
|
||||
print("✓ Připojení s prázdným heslem FUNGUJE!")
|
||||
conn.close()
|
||||
except Exception as e2:
|
||||
print(f"✗ Prázdné heslo také nefunguje: {e2}")
|
||||
Reference in New Issue
Block a user