29 lines
1.0 KiB
Python
29 lines
1.0 KiB
Python
# 查看 zhenos_kg 中某实体的完整字段(只读)
|
|
# 用法: python _design-test/kg-inspect.py "ZhenosSH:zhenfang-uni"
|
|
import os, re, sys, pymysql
|
|
|
|
ZF = r'e:\KF_7\ZhenOS-ZF'
|
|
env = {}
|
|
for ln in open(os.path.join(ZF, '.env.local'), encoding='utf-8'):
|
|
m = re.match(r'^\s*([A-Z_][A-Z0-9_]*)\s*=\s*(.*?)\s*$', ln)
|
|
if m:
|
|
env[m.group(1)] = m.group(2).strip().strip('"').strip("'")
|
|
|
|
name = sys.argv[1] if len(sys.argv) > 1 else ''
|
|
conn = pymysql.connect(host='rm-0jlbgr2rv6dj3t6jngo.mysql.rds.aliyuncs.com', port=3306,
|
|
user=env['DB_USERNAME'], password=env['DB_PASSWORD'],
|
|
charset='utf8mb4', connect_timeout=12)
|
|
cur = conn.cursor()
|
|
cur.execute('USE zhenos_kg')
|
|
cur.execute('SHOW COLUMNS FROM kg_entities')
|
|
cols = [c[0] for c in cur.fetchall()]
|
|
cur.execute('SELECT * FROM kg_entities WHERE entity_name=%s', (name,))
|
|
rows = cur.fetchall()
|
|
if not rows:
|
|
print('未找到实体:', name)
|
|
for r in rows:
|
|
print('=' * 60)
|
|
for c, v in zip(cols, r):
|
|
print('%s: %s' % (c, v))
|
|
conn.close()
|