node js触发事件怎么得不到值

function db_response_to_common_register_handler(select_result)
{
console.log("db_response_to_common_register_handler");

//console.log(this.vendorID);

**if ( 0 == select_result.length)**这里得不到结果,显示为空
{
    var md5 = crypto.createHash('md5');
    var password = md5.update(this.password).digest('base64');

    var insert_string = "INSERT INTO " + db.vendor_table + "(username,password,email) VALUES ('"
                      + this.username +"','"
                      + password +"','"
                      + this.email + "')";

    console.log(insert_string);
    var insert_query = client.query(insert_string);

    if (this.req.session.hasLogined)
    {
        this.req.session.hasLogined = 0;
    }

    insert_query.req = this.req;
    insert_query.res = this.res;
  **  insert_query.on( 'end', db_response_to_insert_common_register_handler);**
}
else
{
    console.log("0 != rowCount");
    this.res.render('register_repeat');
}

}

function check_register(type, username, password, email, req, res)
{
if ( "vendor_register" == type)
{
var select_string = "SELECT * FROM " + db.vendor_table + " WHERE username = '" + username + "'";
console.log(select_string);

    var select_query = client.query( select_string);
    select_query.username = username;
    select_query.password = password;
    select_query.email = email;
    select_query.req = req;
    select_query.res = res;
    _select_query.on('end', db_response_to_common_register_handler);    _        
}

}