-
MY PROJECTS
-
Recent Posts
- SpringBoot.Making our first starter and autoconfiguration
- Spring. Creating main annotation to start business logic
- Spring.Reading from properties file
- Spring.How to define spring version inside springBoot ?
- SpringBoot App inside Docker
- Kafka.FirstExperience
- Docker.MySql and Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0
- Gradle.Tips
- Spring.AppConfig
- Leetcode.Best-time-to-buy-and-sell-stock
- LeetCode.ClimbStairs.Fibbonacci
- Leetcode.Roman-to-integer
- LeetCode.Palindrome-number
- Java.DesignPatterns.Lightweight
- Java.DesignPatterns.Proxy
- Java.DesignPatterns.Facade
- Java.DesignPatterns.Composite
- Java.DesignPatterns.Bridge
- Java. Strange OOP thing
- Java.Classpath
Categories
- Aptana
- Azure
- C#
- DataSnap
- DBExpress
- Delphi
- Delphi и сети
- Delphi. Язык программирования
- ExtJS
- FastReport
- FireDAC
- FireMonkey
- GIT
- ICS
- IDE
- IIS
- Indy
- InnoSetup
- javascript
- jQuery
- JSON
- LiveBindings
- MSHTML
- MySQL
- PHP
- REST
- Ribbons
- SMS
- SQL инструкции
- SVN
- TRichView
- UniGui
- WebBroker
- WinAPI
- Windows
- Алгоритмы
- Без рубрики
- Деревья
- Ищу ответ
- Компонентостроение
- Мои компоненты
- Начальный уровень
- Обработка исключений
- Парсинг
- Потоки(Threads)
- Регулярные выражения
- Тестирование приложений
Daily Archives: 04.06.2016
Delphi. TRichView. Как записать контрол в базу и прочитать его оттуда?
Код для примера, без обработки ошибок. Предполагается, что подключение у нас уже создано в отдельном модуле и на форме добавлен компонент FDQuery. Также в базе создано BLOB поле. Запись в базу через поток MemoryStream
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
procedure TMainForm.bTestClick(Sender: TObject); var ms:tmemortStream; wmp: TWindowsMediaPlayer; begin ms:=tmemorystream.Create; ms.position:=0; FDQuery.Connection:=DBConnection.FDConnection; //Создаем и вставляем контрол wmp:=TWindowsMediaPlayer.Create(Self); RichViewEdit1.InsertControl('',wmp,rvvaBaseline); //Готовим поток ms.Clear; ms.Position:=0; //Записываем в него RichViewEdit1.SaveRVFToStream(ms,false); ms.Position:=0; //Чистим базу FDQuery.SQL.Text:='delete from test_db.htmltable where id>1;'; FDQuery.ExecSQL; FDQuery.SQL.Text:='SELECT * FROM test_db.htmltable;'; FDQuery.Open(); // Вставка в базу FDQuery.Insert; TBlobfield(FDQuery.FieldByName('Blobfield')).LoadFromStream(MS); FDQuery.Post; Freeandnil(ms); end; |
Чтение из базы через поток … Continue reading
Posted in Без рубрики
Comments Off on Delphi. TRichView. Как записать контрол в базу и прочитать его оттуда?
Delphi.TRichView. Как сохранить контрол в поток данных и прочитать его оттуда?
Рассмотрим на примере TWindowsMediaPlayer. Тут всё достаточно просто. Сохранять будем в поток, в дальнейшем этот поток можно передать в Blobstream и далее в базу, Для корректного чтения из потока нужно выполнить процедуру RegisterClass, чтобы TRichView понимал что это такое. В … Continue reading