sql >> Databasteknik >  >> RDS >> Oracle

Bindning av int64 (SQL_BIGINT) som frågeparameter orsakar fel under körning i Oracle 10g ODBC

Oracle 10g Admin Guide i Bilaga G.1 säger att Oracle 10g ODBC-drivrutinen inte stöder antingen SQL_C_SBIGINT eller SQL_C_UBIGINT .

Liksom du finner vi också att SQLExecute() under körning misslyckas. Och ett anrop till SQLGetDiagRec() returnerar ingenting, snarare än ett enkelt meddelande som "Oracle 10g does not support SQL_C_SBIGINT" . Grr....

Hur som helst, Appendix G.1 säger inte hur du ska bind data för att skicka till en tabell med en kolumn definierad som NUMBER(20) . Så vi måste alla gissa och använda vilken (odokumenterad) teknik som helst som fungerar. Det skulle vara trevligt om Appendix G.1 gav någon form av ledtråd eller förslag på det "bästa" sättet.

Om det fungerar för dig att konvertera numret till en sträng och sedan binda, håll dig till det.




  1. Hur konfigurerar jag DbContext för att fungera med Oracle ODP.Net och EF CodeFirst?

  2. MySQL delete statement optimering

  3. Hur man sorterar i SQL

  4. MySQL -- Uppdatera om det finns annat infoga med två nycklar