Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Parameter.AsString gagal di bawah Oracle/MSSQL - Parameter.Value 2-byte karakter di bawah Oracle

Inilah alasannya tidak berfungsi:

Di FireDAC.Stan.Option :

procedure TFDFormatOptions.ColumnDef2FieldDef()
...
dtWideHMemo:
  // Here was ftOraClob, but then will be created TMemoField,
  // which does not know anything about Unicode. So, I have
  // changed to ftFmtMemo. But probably may be problems ...
  ADestFieldType := ftWideMemo;

Memang, mungkin masalah .

Solusinya adalah menambahkan aturan pemetaan yang mengubah dtWideHMemo ke dtMemo .
Setelah itu, baca dan tulis ke CLOB .AsString bekerja dengan baik.

Dilaporkan sebagai RSP-19600 di Portal Kualitas Embarcadero.

Untuk kelengkapan:karena pemetaan yang disebutkan dalam jawaban saya yang lain tidak lagi aktif, Anda harus mengubah akses ke parameter dengan .Value bukannya .AsString.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Beberapa database dengan model yang sedikit berubah. Bagaimana cara mengizinkan `EF` bekerja dengan struktur basis data yang berbeda saat run-time?

  2. ORA-01735:opsi ALTER TABLE tidak valid - Toad

  3. Metode Pengumpulan:Prosedur Pangkas Dalam Database Oracle

  4. Oracle - dapatkan format tanggal saat ini

  5. DBCA Buat Database buruk REMOTE_LISTENER