use csdb::{conn_by_env, Db, SQL};
use lazy_static::lazy_static;
lazy_static! {
pub static ref DB: Db = conn_by_env("CERESDB_GRPC").unwrap();
pub static ref SQL_DROP_TEST: SQL = DB.sql("DROP TABLE test");
pub static ref SQL_TEST: SQL = DB.sql(r#"CREATE TABLE test (
ts TIMESTAMP NOT NULL,
uid uint64 NOT NULL,
tag string NOT NULL,
TIMESTAMP KEY(ts),
PRIMARY KEY(uid, ts)
) ENGINE=Analytic WITH (
compression='ZSTD',
enable_ttl='false'
)"#);
pub static ref SQL_INSERT: SQL = DB.sql("INSERT INTO test (ts,uid,tag) VALUES ({},{},{})");
pub static ref SQL_SELECT: SQL = DB.sql("SELECT * FROM test");
}
#[tokio::main]
#[test]
async fn main() -> anyhow::Result<()> {
loginit::init();
let _ = SQL_DROP_TEST.exe(()).await;
SQL_TEST.exe(()).await?;
SQL_INSERT.exe((1, 2, "test")).await?;
SQL_INSERT.exe((2, 2, "\'\"\r\n")).await?;
let li = SQL_SELECT.li(()).await?;
assert_eq!(li.len(), 2);
for i in li {
dbg!(i);
}
Ok(())
}