Błąd mówi, że identyfikator nazwa jest za długa; to w połączeniu z błędem w niezamkniętym cudzysłowie oznacza, że prawdopodobnie przegapiłeś cytat otwierający. Oznacza to, że masz to:
INSERT INTO Foo ( A ) VALUES ( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')
zamiast
INSERT INTO Foo ( A ) VALUES ( 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')
Nie powinieneś budować swoich zapytań za pomocą łączenia ciągów; to jeden z powodów. Sparametryzowane zapytania zapewnią Ci wycenę. (Uwaga:nie musisz używać przechowywanych procesów, aby używać sparametryzowanych zapytań.)
var sql = "INSERT INTO My_RSS ( Title, Description, Date, Link, Rate, Name )
VALUES ( @Title, @Desc, @PostDate, @Link, @Rate, @Name )";
SqlCommand cmd = new SqlCommand(sql, Connect());
cmd.Parameters.Add("@Title", SqlDbType.VarChar, 100).Value = RSS_title;
cmd.Parameters.Add("@Desc", SqlDbType.VarChar, 8192).Value = RSS_description;
cmd.Parameters.Add("@PostDate", SqlDbType.SmallDateTime).Value = DateTime.Now;
cmd.Parameters.Add("@Rate", SqlDbType.Int).Value = rate;
itp.