How add indian State?

Run following command in your Database ;

INSERT INTO `directory_country_region` VALUES
    (NULL , 'IN', 'AN','Andaman Nicobar'),
    (NULL , 'IN', 'AP','Andhra Pradesh'),
    (NULL , 'IN', 'AR','Arunachal Pradesh'),
    (NULL , 'IN', 'AS','Assam'),
    (NULL , 'IN', 'BH','Bihar'),
    (NULL , 'IN', 'CH','Chandigarh'),
    (NULL , 'IN', 'CG','Chhattisgarh'),
    (NULL , 'IN', 'DN','Dadra Nagar Haveli'),
    (NULL , 'IN', 'DD','Daman Diu'),
    (NULL , 'IN', 'DL','Delhi'),
    (NULL , 'IN', 'GA','Goa'),
    (NULL , 'IN', 'GJ','Gujarat'),
    (NULL , 'IN', 'HR','Haryana'),
    (NULL , 'IN', 'HP','Himachal Pradesh'),
    (NULL , 'IN', 'JK','Jammu Kashmir'),
    (NULL , 'IN', 'JH','Jharkhand'),
    (NULL , 'IN', 'KA','Karnataka'),
    (NULL , 'IN', 'KL','Kerala'),
    (NULL , 'IN', 'LD','Lakshadweep'),
    (NULL , 'IN', 'MP','Madhya Pradesh'),
    (NULL , 'IN', 'MH','Maharashtra'),
    (NULL , 'IN', 'MN','Manipur'),
    (NULL , 'IN', 'ML','Meghalaya'),
    (NULL , 'IN', 'MZ','Mizoram'),
    (NULL , 'IN', 'NL','Nagaland'),
    (NULL , 'IN', 'OR','Odisha'),
    (NULL , 'IN', 'PY','Pondicherry'),
    (NULL , 'IN', 'PB','Punjab'),
    (NULL , 'IN', 'RJ','Rajasthan'),
    (NULL , 'IN', 'SK','Sikkim'),
    (NULL , 'IN', 'TN','Tamil Nadu'),
    (NULL , 'IN', 'TG','Telangana'),
    (NULL , 'IN', 'TR','Tripura'),
    (NULL , 'IN', 'UP','Uttar Pradesh'),
    (NULL , 'IN', 'UT','Uttaranchal'),
    (NULL , 'IN', 'WB','West Bengal');

Magento did not provide regions for a few Country in its region directry.Most country do not have it own region/state like india,nepal etc...

Step1:

First magento save region list at directory_country_region table: So insert new region list on with respective country in this table: directory_country_region

Run the query

   INSERT INTO `directory_country_region` (`region_id`, `country_id`, `code`, `default_name`) VALUES
    (NULL, 'IN', 'ANDRA', 'Andra Pradesh'),
    (NULL, 'IN', 'ARUNA', 'Arunachal Pradesh'),
    (NULL, 'IN', 'ASSAM', 'Assam'),
    (NULL, 'IN', 'BIHAR', 'Bihar'),
    (NULL, 'IN', 'CHAND', 'Chandigarh'),
    (NULL, 'IN', 'CHHAT', 'Chhattisgarh'),
    (NULL, 'IN', 'DADAR', 'Dadar and Nagar Haveli'),
    (NULL, 'IN', 'DAMAN', 'Daman and Diu'),
    (NULL, 'IN', 'DELHI', 'Delhi'),
    (NULL, 'IN', 'GOA', 'Goa'),
    (NULL, 'IN', 'GUJAR', 'Gujarat'),
    (NULL, 'IN', 'HARYA', 'Haryana'),
    (NULL, 'IN', 'HP', 'Himachal Pradesh'),
    (NULL, 'IN', 'JK', 'Jammu and Kashmir'),
    (NULL, 'IN', 'JHARK', 'Jharkhand'),
    (NULL, 'IN', 'KARNA', 'Karnataka'),
    (NULL, 'IN', 'KERAL', 'Kerala'),
    (NULL, 'IN', 'LAKSH', 'Lakshadeep'),
    (NULL, 'IN', 'MP', 'Madya Pradesh'),
    (NULL, 'IN', 'MAHAR', 'Maharashtra'),
    (NULL, 'IN', 'MANIP', 'Manipur'),
    (NULL, 'IN', 'MEGHA', 'Meghalaya'),
    (NULL, 'IN', 'MIZOR', 'Mizoram'),
    (NULL, 'IN', 'NAGAL', 'Nagaland'),
    (NULL, 'IN', 'ORISS', 'Orissa'),
    (NULL, 'IN', 'PONDI', 'Pondicherry'),
    (NULL, 'IN', 'PUNJA', 'Punjab'),
    (NULL, 'IN', 'RAJAS', 'Rajasthan'),
    (NULL, 'IN', 'SIKKI', 'Sikkim'),
    (NULL, 'IN', 'TAMIL', 'Tamil Nadu'),
    (NULL, 'IN', 'TAMIL', 'Tripura'),
    (NULL, 'IN', 'UP', 'Uttar Pradesh'),
    (NULL, 'IN', 'UTTAR', 'Uttaranchal'),
    (NULL, 'IN', 'WB', 'West Bengal');

Step2: Also you need insert directory_country_region_name for language wish region name.

as default indian people is use en_us(language code ) as default language

Using below code:

INSERT INTO directory_country_region_name( locale, region_id, name )
SELECT 'en_US' AS "language", region_id, default_name
FROM `directory_country_region`
WHERE country_id = 'IN';

This last insert is import if you have multiple lauguage


Updated state list

INSERT INTO `directory_country_region` VALUES
(NULL , 'IN', 'AN','Andaman and Nicobar'),
(NULL , 'IN', 'AP','Andhra Pradesh'),
(NULL , 'IN', 'AR','Arunachal Pradesh'),
(NULL , 'IN', 'AS','Assam'),
(NULL , 'IN', 'BH','Bihar'),
(NULL , 'IN', 'CH','Chandigarh'),
(NULL , 'IN', 'CT','Chhattisgarh'),
(NULL , 'IN', 'DN','Dadra and Nagar Haveli'),
(NULL , 'IN', 'DD','Daman and Diu'),
(NULL , 'IN', 'DL','Delhi'),
(NULL , 'IN', 'GA','Goa'),
(NULL , 'IN', 'GJ','Gujarat'),
(NULL , 'IN', 'HR','Haryana'),
(NULL , 'IN', 'HP','Himachal Pradesh'),
(NULL , 'IN', 'JK','Jammu Kashmir'),
(NULL , 'IN', 'JH','Jharkhand'),
(NULL , 'IN', 'KA','Karnataka'),
(NULL , 'IN', 'KL','Kerala'),
(NULL , 'IN', 'LD','Lakshadweep'),
(NULL , 'IN', 'MP','Madhya Pradesh'),
(NULL , 'IN', 'MH','Maharashtra'),
(NULL , 'IN', 'MN','Manipur'),
(NULL , 'IN', 'ML','Meghalaya'),
(NULL , 'IN', 'MZ','Mizoram'),
(NULL , 'IN', 'NL','Nagaland'),
(NULL , 'IN', 'OR','Odisha'),
(NULL , 'IN', 'PY','Pondicherry'),
(NULL , 'IN', 'PB','Punjab'),
(NULL , 'IN', 'RJ','Rajasthan'),
(NULL , 'IN', 'SK','Sikkim'),
(NULL , 'IN', 'TN','Tamil Nadu'),
(NULL , 'IN', 'TG','Telangana'),
(NULL , 'IN', 'TR','Tripura'),
(NULL , 'IN', 'UP','Uttar Pradesh'),
(NULL , 'IN', 'UT','Uttarakhand'),
(NULL , 'IN', 'WB','West Bengal');