Try the following…
global $wpdb;
$wpdb->query(
"
UPDATE {$wpdb->prefix}postmeta
SET post_id = {$edit_id}, meta_key = '{$meta_key}', meta_value="{$meta_value}"
WHERE post_id = {$edit_id} AND meta_key = '{$meta_key}'
"
);
//or using prepare
$wpdb->query(
$wpdb->prepare(
"
UPDATE {$wpdb->prefix}postmeta
SET post_id = %d, meta_key = %s, meta_value = %s
WHERE post_id = %d AND meta_key = %s
",
$edit_id,
$meta_key,
$meta_value,
$edit_id,
$meta_key
)
);
Also as a word of advice, set the following constants in your wp-config.php
file to enable debugging/error logging.
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
Errors should be logged to a file wp-content/debug.log
which should contain any errors relating to your query if it is malformed.