我想要完成的事情:
我得到了什么:
我正在使用Node和mysql.要插入关系,我必须等待艺术家插入或创建.我尝试使用以下代码完成:
let promises = [];
if (artists.length != 0) {
for (key in artists) {
promises.push( find_artist_id_or_create_new_artist(artists[key]) )
}
}
await Promise.all(promises);
Run Code Online (Sandbox Code Playgroud)
返回一个id:
async function find_artist_id_or_create_new_artist(artist_name) {
return await find_artist_return_id(artist_name, create_artist_return_id)
}
Run Code Online (Sandbox Code Playgroud)
寻找艺术家:
async function find_artist_return_id(artist_name, callback) {
var sql = "SELECT * FROM `artists` WHERE `name` LIKE "+con.escape(artist_name)+" LIMIT 1;"
con.query(sql, (err,row) => {
if(err) throw err;
if (row.length == 0) {
return callback(artist_name)
} else {
return row[0].id
}
}); …Run Code Online (Sandbox Code Playgroud)