L'errore sta dicendo che l'identificatore il nome è troppo lungo; questo, combinato con l'errore tra virgolette non chiuse, significa che probabilmente hai perso una citazione di apertura. Cioè, hai questo:
INSERT INTO Foo ( A ) VALUES ( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')
invece di
INSERT INTO Foo ( A ) VALUES ( 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')
Non dovresti creare le tue query tramite la concatenazione di stringhe; questo è uno dei motivi. Le query parametrizzate otterranno il preventivo giusto per te. (Nota:non è necessario utilizzare processi archiviati per utilizzare query parametrizzate.)
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;
ecc.