简体   繁体   中英

how to excute conjunctive query crossing two mysql databases with gorm?

code like:

addr:=fmt.Sprintf(`%v:%v@tcp(%v:%v)/(%v,%v)?charset=utf8`, dbuser, dbpassword, dbhost, dbport, dbdatabase)

DB, err = gorm.Open("mysql", addr)

sql := "select * from db1.user join db2.salary"
 
rows, err := DB.Raw(sql).Rows()

it seems the method gorm.Open() only accept one source parameter, and it run error "unknown table name 'db1.user'"

is there a correct way to init the DB to excute the sql or other way to solve the problem?

many thanks

sovled by setting dbdatabase="", which it means giving null database name connecting to the mysql instance. And database name shoud be presented as prefix on table name in sql.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM