Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

CLR:Multi Param Aggregate, argument nie znajduje się w ostatecznym wyniku?

Problem polega na tym, że ogranicznik nie jest serializowany. Dodaj:

w.Write(delimiter)

jako pierwszy wiersz w metodzie Write i

delimiter = r.ReadString();

jako pierwszy wiersz w metodzie Read.

Jeśli chodzi o Twoje pytania do sugerowanego obejścia:

To nie. Po prostu działał z twoim scenariuszem testowym.

Metoda Write musi być zgodna z metodą Read. Jeśli napiszesz dwa ciągi i odczytasz tylko jeden, to nie zadziała. Pomysł polega na tym, że twój obiekt może zostać usunięty z pamięci, a następnie załadowany. To właśnie mają robić Write and Read. W twoim przypadku - tak się rzeczywiście działo i nie byłeś w stanie zachować wartości obiektu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Index znajdował się poza granicami Array. (Microsoft.SqlServer.smo)

  2. Kiedy należy używać średników w SQL Server?

  3. Dlaczego CTE (Common Table Expressions) w niektórych przypadkach spowalnia zapytania w porównaniu do tabel tymczasowych w SQL Server

  4. Dodaj unikalne ograniczenie do kombinacji dwóch kolumn

  5. SQL — pobierz podciąg po pierwszej i drugiej spacji w osobnych kolumnach