- 新增taosTest.py文件实现TDengine数据库连接测试 - 实现创建子表、插入测试数据和查询功能 - 集成taosws库进行WebSocket数据库操作 - 更新test_websocket.py中的连接地址配置 - 添加时间戳基准和批量数据插入功能 - 实现稳定表和子表的查询对比测试
100 lines
2.3 KiB
Python
100 lines
2.3 KiB
Python
import taosws
|
|
import time
|
|
|
|
|
|
def create_connection():
|
|
host = "192.168.1.87"
|
|
port = 6041
|
|
|
|
conn = taosws.connect(
|
|
host=host,
|
|
port=port,
|
|
user="root",
|
|
password="wDvfFffdwbm5U15K",
|
|
database="tms"
|
|
)
|
|
|
|
print(f"Connected to {host}:{port}")
|
|
return conn
|
|
|
|
|
|
def create_sub_table(conn):
|
|
sql = """
|
|
CREATE TABLE IF NOT EXISTS gj_jxjs_sk_test001
|
|
USING gj_jxjs_sk
|
|
TAGS ('test001','equip001')
|
|
"""
|
|
conn.execute(sql)
|
|
print("Sub table created")
|
|
|
|
|
|
def insert_test_data(conn):
|
|
|
|
base_ts = int(time.time() * 1000)
|
|
|
|
sql = f"""
|
|
INSERT INTO gj_jxjs_sk_test001 VALUES
|
|
({base_ts}, 'well1',1,1,1,20250311,120000,1,100.5,100.5,100.5,100.5,5.5,10.5,200,200,5.5,5.5,100,100,120,200,200,1,1,1,10,10,1,1,1,1,1,1,1,1,1,1,1,100,5,1,1,1,1,1),
|
|
({base_ts+1000}, 'well1',1,1,2,20250311,120001,1,101.5,101.5,101.5,101.5,5.6,10.6,201,201,5.6,5.6,101,101,121,201,201,1,1,1,11,11,1,1,1,1,1,1,1,1,1,1,1,101,5,1,1,1,1,1),
|
|
({base_ts+2000}, 'well1',1,1,3,20250311,120002,1,102.5,102.5,102.5,102.5,5.7,10.7,202,202,5.7,5.7,102,102,122,202,202,1,1,1,12,12,1,1,1,1,1,1,1,1,1,1,1,102,5,1,1,1,1,1)
|
|
"""
|
|
|
|
conn.execute(sql)
|
|
|
|
print("Insert success")
|
|
|
|
return base_ts
|
|
|
|
|
|
def query_stable(conn, start_ts, end_ts):
|
|
|
|
sql = f"""
|
|
SELECT ts, actual_date, actual_time, deptbitm, chkp, sppa, rpma, torqa, hkla, blkpos, woba
|
|
FROM gj_jxjs_sk
|
|
WHERE ts > {start_ts} AND ts < {end_ts}
|
|
ORDER BY ts ASC
|
|
"""
|
|
|
|
result = conn.query(sql)
|
|
|
|
print("\nQuery from STABLE (gj_jxjs_sk):")
|
|
for row in result:
|
|
print(row)
|
|
|
|
|
|
def query_sub_table(conn, start_ts, end_ts):
|
|
|
|
sql = f"""
|
|
SELECT ts, actual_date, actual_time, deptbitm, chkp, sppa, rpma, torqa, hkla, blkpos, woba
|
|
FROM gj_jxjs_sk_test001
|
|
WHERE ts > {start_ts} AND ts < {end_ts}
|
|
ORDER BY ts ASC
|
|
"""
|
|
|
|
result = conn.query(sql)
|
|
|
|
print("\nQuery from SUB TABLE (gj_jxjs_sk_test001):")
|
|
for row in result:
|
|
print(row)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
conn = create_connection()
|
|
|
|
try:
|
|
|
|
# 1 创建子表
|
|
create_sub_table(conn)
|
|
|
|
# 2 插入测试数据
|
|
base_ts = insert_test_data(conn)
|
|
|
|
# 3 查询 STABLE
|
|
query_stable(conn, base_ts - 1000, base_ts + 5000)
|
|
|
|
# 4 查询子表
|
|
query_sub_table(conn, base_ts - 1000, base_ts + 5000)
|
|
|
|
finally:
|
|
conn.close() |