D5MLZ2BYK5M7FMRIJAJZ5JCTDLBIKFYE5WL3EL2PRQR3H43DS74AC S6GE7VUHYD7MG4ROJRX6HMEOS6CJZM7AC45W4ELVMHUCA2EJQMSQC CGPQSMRFAEGSEMLDQWPHLEOAF26HVF3IC6BEKRCOSV2H6QLIBEAQC S4P2B3FPF57HPHTIAYGMPCVKB7573IB5ZBKNXVBTB6ICCPF55WNQC BEWT3YUFWOAKQVEO4ZERUTFISI26ULUCNKICDZFYZ4OM3DRLCKWQC TKEQSYZ7PZ4GBD6R4EOOE26TQ6VKXBXLYRLUUYWOOQ7SVXQSVETQC LNGUDOUQK35O5IIUHSVJ5LW54JA7QNMNCJGQNYWPRDUSK6R4XCLQC 64UUKXJNHHGNYPQLYPAT74RGYBZNPOHSV7LCWM64K2DJFT5BU6RAC KRJGUGDLL5WDLR6KLDQCIP5354L7ROGLRSF2YLI7KWMPQGN4JEPAC BO5VKP6Z3GNEZN2RKCS4MSUYM77L3KSOJAFGZO4GPDPSZAHQ7PSQC ZX5GI7ZM5WMGMNWNBYTJNE3T3OSIKASM53PHBPVB73IWGWUBEM5QC ACKV7HCNDGXHGAKII3K6UUCXDJLDPODNEO3UQTWQ6HUY236DB6TAC BVAOS7RDMIBSFL2QA3OY2KRT6SO3Y65O23WQZVASIFC44XDMFOTQC C2FNNPGU3SEXQ64I3MZPA4JQOEKRBMYP3ZTGU4ZYOSN6M7B5CV3QC CQXWDYD3WZDT4WUBA4ZJEJ3ZV6JLOJOKYABGX754NG7P44K2ZSSAC DJJIZVCNVIH2HTR6K7YBEZTFMTMMW55GP37G4RAZO6G3UUXU52PAC FGZSTXZM4O7IQTMOWNTA2WVZVNN4BVLNAAMFTBZWLUDHTJICWD7AC 3ZE4YIXX3UAKYLD2EJSIX2DPHFUOF3TOUKBPHG4UKX4UOP7DPSEQC BXLMOKJKVWRCNSJSD6L4RFON2IHEWB7J42QRYWN7M45XP22752YAC DB44ZP7WEBTVG2VE22AT3WEOV7BAKSTKWSLAAQJ22PCS2ELDK5SAC SIC4BVK6MY6CC4NSS6NQDFG7SM7I7LLIRSEGOHESIM2UEDILGVSQC YC5QGKPJSZ5XGGEKDCYVC52KW6P7QII7HXKP4BTF3MYWFEPNMGKQC ZIDFZNTT4HZDKKWK25U7OPIFSVTSNTZVEKWCBQ6XEPR3HHSNL2AAC VSXY63RCAE4WDARTVOW6YDD6VPMRBNASRD73R4UMZDAAQX7MAVTAC pub fn network_to_db(ircnet Network) []string {mut ircrow := []string{}ircrow.push('') // idircrow.push(ircnet.hostnames[0])ircrow.push(ircnet.name) // netname
pub fn network_to_db(ircnet Network) []db.SqlValue {mut ircrow := []db.SqlValue{}ircrow.push(db.SqlValue{name:"hostname", value:db.SqlType(ircnet.hostname)})ircrow.push(db.SqlValue{name:"netname", value:db.SqlType(ircnet.name)})
sql_stmt := 'create table irc_servers (id integer primary key, hostname text, netname text)'db.exec_one(sql_stmt) or { println('db.sqlite fail $sql_stmt $err') }return Db{
mut dbo := Db{
dbo.exec('create table irc_servers (id integer primary key, hostname text, netname text)')dbo.exec('create table irc_channels (id integer primary key, server_id integer, name text)')return dbo}pub fn (mut self Db) exec(stmt string) {self.sqlite.exec_one(stmt) or { println('db.sqlite fail $stmt $err') }
type SqlType = int | stringpub struct SqlValue {name stringvalue SqlType}pub fn (mut self Db) insert(parts []SqlValue) {mut fields := []string{}mut values := []string{}for part in parts {fields.push(part.name)values.push(part.value.str())}rows, code := self.sqlite.exec("insert into irc_servers ($fields) values ($values)")println('SQL insert $rows $code')}