Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 389

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
Подскажите, плиз, как занести фото в БД paradox?

vikki Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задала: vikki (статус: Посетитель)
Вопрос отправлен: 3 февраля 2009, 14:58
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Ученый

Здравствуйте, vikki! Посмотрел в интернете, таких вопросов не много, но есть...

Цитата:

Вопрос по БД: БД - Paradox, есть компонент - TDBImage, в БД есть поле типа Graphics (вроде), использую Post, все данные нормально сохраняются в БД и считываются из нее. Но картинка не хочет, пробовал и BMP и JPEG, все равно. В чем проблема, или что я делаю не так. Подскажите, как можно нормально сохранять и считывать картинки. Заранее спасибо.

Код ответа в приложении.

Также можете поискать здесь
и здесь

З.Ы. Удачи:)

Приложение:
  1.  
  2. unit Unit2;
  3.  
  4. interface
  5.  
  6. uses
  7. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  8. Dialogs, ExtCtrls, DBCtrls, DB, StdCtrls, DBTables, Clipbrd, Mask, jpeg,
  9. ExtDlgs;
  10.  
  11. type
  12. TForm2 = class(TForm)
  13. Table1: TTable;
  14. DBImage1: TDBImage;
  15. Button1: TButton;
  16. Button2: TButton;
  17. DataSource1: TDataSource;
  18. DBNavigator1: TDBNavigator;
  19. Table1Vvv: TGraphicField;
  20. OpenPictureDialog1: TOpenPictureDialog;
  21. procedure Button2Click(Sender: TObject);
  22. procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  23. procedure FormCreate(Sender: TObject);
  24. procedure Button1Click(Sender: TObject);
  25. private
  26. { Private declarations }
  27. public
  28. { Public declarations }
  29. end;
  30.  
  31. var
  32. Form2: TForm2;
  33.  
  34. implementation
  35.  
  36. {$R *.dfm}
  37.  
  38. procedure TForm2.Button1Click(Sender: TObject);
  39. var
  40. C: TClipboard;
  41. begin
  42. C := TClipboard.Create;
  43. try
  44. if Clipboard.HasFormat(CF_BITMAP) then
  45. DBImage1.PasteFromClipboard
  46. else
  47.  
  48. finally
  49. C.Free;
  50. end;
  51. table1.FlushBuffers;
  52. end;
  53.  
  54. procedure TForm2.FormCreate(Sender: TObject);
  55. begin
  56. Table1.Open;
  57. end;
  58.  
  59. procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  60. begin
  61. table1.Close;
  62. CanClose:=true;
  63. end;
  64.  
  65. procedure TForm2.Button2Click(Sender: TObject);
  66. var
  67. j: TJPEGImage;
  68. b:TBitmap;
  69. ext:string;
  70. begin
  71. j := TJPEGImage.Create;
  72. b:=tbitmap.Create;
  73. try
  74. if OpenPictureDialog1.Execute then begin
  75. ext:=ExtractFileExt(OpenPictureDialog1.FileName);
  76. if (ext='jpg') or (ext='jpeg') then
  77. begin
  78. j.LoadFromFile(OpenPictureDialog1.FileName);
  79. b.Assign(j);
  80. end
  81. else b.LoadFromFile(OpenPictureDialog1.FileName);
  82. DBImage1.Picture.Assign(B);
  83. end;
  84. finally
  85. B.Free;
  86. j.free;
  87. end;
  88. Table1.FlushBuffers;
  89. end;
  90.  
  91. end.


Ответ отправил: Ученый (статус: 8-ой класс)
Время отправки: 4 февраля 2009, 15:42
Оценка за ответ: 4


Мини-форум вопроса

Всего сообщений: 2; последнее сообщение — 3 февраля 2009, 17:00; участников в обсуждении: 2.
vikki

vikki (статус: Посетитель), 3 февраля 2009, 16:20 [#1]:

через буфер обмена в режиме работающего приложения файлы .bmp, это понятно, а иначе?
Косолапов Дмитрий Юрьевич

Косолапов Дмитрий Юрьевич (статус: 8-ой класс), 3 февраля 2009, 17:00 [#2]:

Поле типа BLOB или путь к файлу

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:53
Выполнено за 0.03 сек.