Call to unknown function: ‘add_action’PHP(PHP0417) in VS Code

I am trying to run these hooks in vs code so that whenever we activate the plugin the table will be created in phpmyadmin but it is no working and also it shows call to unknown function bug in code.

register_activation_hook(__FILE__, 'form_data_activate');
register_deactivation_hook(__FILE__, 'form_data_deactivate');

function form_data_activate()
{
    global $wpdb;
    global $table_prefix;
    $table = $table_prefix . 'form_data';

    $sql = "CREATE TABLE $table (
            `id` int(11) NOT NULL,
            `name` varchar(500) NOT NULL
            ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
            ALTER TABLE $table
                ADD PRIMARY KEY (`id`);
            ALTER TABLE $table
                MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;";

    $wpdb->query($sql);
}

function form_data_deactivate()
{

    global $wpdb;
    global $table_prefix;
    $table = $table_prefix . 'form_data';

    $sql = "DROP TABLE $table";

    $wpdb->query($sql);

}

add_action('admin_menu', 'form_data_menu');
function form_data_menu()
{
    add_menu_page('Form Data', 'Form Data', 8, __FILE__, 'form_data_list');
}

function form_data_list()
{
    include('form_data_list.php');
}