Hola.
Supongo que dtaBiblioteca2 es un
TDataModule y aunque desconozco que componente es ConsultaLibrosSQL, te diría que estás asignando mal el texto de la consulta. Debería ser:
{
AnsiString SQLStr = "SELECT * FROM COUNTRY";
TStrings *TS = new TStringList;
TS->Text = SQLStr;
Query->Close();
Query->SQL->Clear();
Query->SQL->Assign(TS);
Query->Open();
}
Pero de tu primer mensaje no divisé a donde apuntaba tu consulta, ahora viendo el uso, no tiene sentido todo ese código previo. Simplemente hace:
{
Query->Close();
Query->SQL->Text = "SELECT * FROM COUNTRY";
Query->Open();
}
Con el mismo resultado.
Si la consulta que envias al motor es muy extensa te conviente usar el método
Add() para darle mas legibilidad al código. Es importante en este caso usar previamente el métod
Clear(), para eliminar cualquier residuo de la propiedad
SQL(de tipo TStrings).
Por ejemplo:
{
Query->Close();
Query->SQL->Clear();
Query->SQL->Add("UPDATE TABLA SET PRECIO =");
Query->SQL->Add("CASE OPICION");
Query->SQL->Add("WHEN 'CASO1' THEN PRECIO * 0.5");
Query->SQL->Add("WHEN 'CASO2' THEN PRECIO * 0.3");
Query->SQL->Add("ELSE PRECIO * 0.25 END");
Query->Open();
}
Saludos