sql >> Database >  >> RDS >> Sqlserver

Hoe de maximale lengte-fout op te lossen (deze is te lang) in sql-query c#

De fout zegt dat de identifier naam is te lang; dit in combinatie met de niet-gesloten aanhalingstekenfout betekent dat u waarschijnlijk een openingscitaat hebt gemist. Dat wil zeggen, je hebt dit:

INSERT INTO Foo ( A ) VALUES ( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')

in plaats van

INSERT INTO Foo ( A ) VALUES ( 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA')

U zou uw zoekopdrachten niet moeten bouwen via aaneenschakeling van tekenreeksen; dit is een van de redenen. Geparametriseerde zoekopdrachten zorgen voor de juiste offerte voor u. (Opmerking:u hoeft geen opgeslagen procedures te gebruiken om geparametriseerde zoekopdrachten te gebruiken.)

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;

enz.



  1. CakePHP- en HABTM-modellimietfout

  2. hoe het databaseschema correct te specificeren in springboot?

  3. Operationele rapporten voor MySQL, MariaDB, PostgreSQL en MongoDB

  4. Chinese karakters gebruiken om MySQL-tabellen een naam te geven