If you get the error “Error: DNSZone::Table::select() failed: no such row in the table” while choosing the DNS settings from your Plesk control panel(Windows ), you can follow the steps given below to fix it.
1). Login to mysql using the Plesk administrator password,
cd %plesk_dir%Mysqlbin mysql -u admin -p -P 8306
2). Select the psa database.
use psa;
3. Execute the following SQL query in mysql prompt to find those domains with the wrong zone ids.
SELECT domains.name FROM domains LEFT JOIN dns_zone ON domains.dns_zone_id = dns_zone.id WHERE dns_zone.id IS NULL;
4. Comparing the dns_zone_id in tables ‘domains’ and ‘dns_zone’.
mysql> select dns_zone_id,name from domains; mysql> select id,name from dns_zone;
5. Manually inserted those missing zone id entries in the ‘dns_zone’ table using the insert query statement.
mysql> INSERT INTO dns_zone SET id= zone id, name='domain name';
Change zone id with the exact id and name with the exact domain which you want to insert.
That will fix all the issues!