Имеется таблица БД с двумя столбами id_textb и textb. Как будет выглядить SQL запрос для вывода текста из столба "textb" и помещение его в memo1.
С помощью SQL запроса можно только лишь получить какой-то набор данных. К примеру, запрос вида
SELECT `textb` FROM `table_name` WHERE id_textb = 1
вернет, грубо говоря, значение поля textb
. Это первая часть.
Дальше, Вам требуется это поместить в Memo. Для этого, вам можно сделать что-то подобное:
Memo1.Text := textBStr;
где textBStr
это текстовая переменная, куда поместили значение, полученное из запроса. Как все это связать. Вам нужно рассмотреть компоненты для работы с БД, ранее (Delphi 7) это были TADOConnection, TADODataSet, TADOTable, TDataSource, TADOQuery и с ними уже работать.
Пример работы с ADO:
procedure TForm2.FormCreate(Sender: TObject);
const
{ Connection string }
ConnString =
'Provider=SQLOLEDB.1;Persist Security Info=False;' +
'User ID=%s;Password=%s;Data Source=%s;Use Procedure for Prepare=1;' +
'Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;'+
'Tag with column collation when possible=False';
{ SQL Query }
SQLStr = 'SELECT * FROM customer WHERE customer_id = :AnId;';
{ User access }
UserName = 'db_user_name';
PassWord = 'db_pass_word';
Server = 'my.db.server';
var
ADOConn : TADOConnection;
ADOQuery : TADOQuery;
DataSrc : TDataSource;
Param : TParameter;
begin
{ Create an ADO connection }
ADOConn := TADOConnection.Create(Self);
{ Setup the provider engine }
{ Setup the connection string }
ADOConn.ConnectionString := Format(ConnString,
[UserName, PassWord, Server]);
{ Disable login prompt }
ADOConn.LoginPrompt := False;
try
ADOConn.Connected := True;
except
on e: EADOError do
begin
MessageDlg('Error while connecting', mtError,
[mbOK], 0);
Exit;
end;
end;
{ Create the query }
ADOQuery := TADOQuery.Create(Self);
ADOQuery.Connection := ADOConn;
ADOQuery.SQL.Add(SQLStr);
{ Update the parameter that was parsed from the SQL query: AnId }
Param := ADOQuery.Parameters.ParamByName('AnId');
Param.DataType := ftInteger;
Param.Value := 1;
{ Set the query to Prepared - will improve performance }
ADOQuery.Prepared := true;
try
ADOQuery.Active := True;
except
on e: EADOError do
begin
MessageDlg('Error while doing query', mtError,
[mbOK], 0);
Exit;
end;
end;
{ Create the data source }
DataSrc := TDataSource.Create(Self);
DataSrc.DataSet := ADOQuery;
DataSrc.Enabled := true;
{ Finally initilalize the grid }
DBGrid1.DataSource := DataSrc;
end;
Подробно можно посмотреть вот тут - http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/ADODB_TADOConnection.html
Вот рабочий код, кому нужно ловите
Form24.SQLQuery1.Close;
Form24.SQLQuery1.SQL.Clear;
Form24.SQLQuery1.SQL.Add('SELECT textb from name_textb WHERE id_textb = 1');
Form24.SQLQuery1.Open;
Memo1.Lines.add(Form24.SQLQuery1.Fieldbyname('textb').AsString);
Form24.SQLQuery1.Next;
Виртуальный выделенный сервер (VDS) становится отличным выбором
Пишу отправку сообщений на Django сервере и столкнулся с такой проблемой: при нажатии на input типа submit в форме типа post происходит передача методом...
Могу ли я вместо, например, открывающего тега < писать < ? И как браузер будет это интерпретировать?