Dodawanie załączników do bazy danych

0

Witam Was serdecznie !

Proszę o pomoc w pewnej sprawie. Mianowicie nigdy tego nie robiłem więc proszę o wyrozumiałość.
Chciałbym stworzyć aplikację z możliwością dodawania załączników w postaci pliku.pdf tj.

Nie wiem jak do tego się zabrać. Chciałbym aby była aplikacja pozwalała na:

  • dodawanie plików do bazy danych ( poprze wybranie z dysku konkretnego pliku.pdf i wczytanie go do bazy) oraz kasowanie z bazy danych.
  • po zaznaczeniu np jakiegoś rekordu i po wciśnięciu np przycisku odczytaj plik. otworzył się plik wcześniej przypisany do tego rekordu wyświetlając plik.pdf

Bazę danych mam MySQL łączę się z nią prze ADO....

Dodam tylko iż może być np katalog na dysku w którym znajduje się pliki: np 0001.pdf, 0002.pdf itd... i z tego katalogu chciałbym dołanczać do bazy oraz odczytywać je z bazy.

Proszę o pomoc.

0

Panowie a może coś w tym stylu:

  1. Wybór pliku do zapisania w bazie, pobranie jego nazwy i zapis do bazy jego nazwy z rozszerzenie.

  2. A odczyt by wyglądał tak, wyświetlamy dany rekord w którym jest zapisana nazwa pliku, klikamy na buttona w celu otwarcia tego pliku?

  3. Tylko jak zapisać OnClick Butona żeby otworzył konkretny plik pdf w Acrobacie?

Czy może znacie jakiś prostszy sposób?

0

Nie zapisuj plików w bazie, chyba, że faktycznie inaczej się nie da.
Zapisuj ścieżki do plików.

A jak otworzyć? ShellExecute.

0

Tak może to i łatwiejsze ale głównie chodzi o to, że mam jakieś tam dane zapisane w bazie, do których chciałbym dołączyć plik.pdf do konkretnego rekordu. Może ktoś z was coś takiego kiedyś robił, bo naprawdę nie wiem od czego zacząć.

W katalogu C:\test mam z 1000 plików np aaaaa.pdf, bbbbb.pdf itd... z nie powtarzającymi się nazwami i po prostu chciałbym je powiązać z rekordami w tabeli.

np

Tabela 1
| id | indeks | Nazwa | Numer rysunku |
| 1 | aaaaa | AAAAA | aaaa.pdf |
| 2 | bbbbb | BBBBB | bbbb.pdf |

Taki mechanizm:
1 wybieram plik, z czytuje nazwe,
2 zapisując nazwę do pola [ Numer rysunku ]- to wiem jak zrobić :)

Następnie przy przeglądaniu danych klikam np . na przycisk odczytaj:

3 znajduje konkretny plik i otwiera go w Acrobacie

Nie wiem jak zrobić punkty: 1 i 3. Pomóżcie.

0
elofura napisał(a)

Tak może to i łatwiejsze ale głównie chodzi o to, że mam jakieś tam dane zapisane w bazie, do których chciałbym dołączyć plik.pdf do konkretnego rekordu.

Naprawdę musisz to robić?
Nie wystarczy Ci ścieżka do pliku?

0

wczytujesz plik do strema i zapisujesz do pola typu blob, ot cala filozofia

0

Jak zapisać filestream do bazy danych mysql - kucze googluje i nic nie znalazłem powiedzcie proszę co jest nie tak

procedure TForm.Button2Click(Sender: TObject);
Var 
 SS: TFileStream;
 S: string;
Begin 
 SS := TFileStream.Create(Edit1.Text, fmOpenRead);

 SS.ReadBuffer(S,SizeOf(S));

 SQL.CommandText := 'REPLACE INTO pliki SET pl_Typ='''+ComboBox1.Text+''', pl_Plik='''+S+''', pl_Data='''+DateToStr(NOW())+''',pl_User='''+form1.StatusBar1.Panels[1].Text+'''';
 try
   SQL.ExecSQL(True);
 finally
   SS.Free;
 end;
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1