Images em base de dados.

Top_Web

Membro
Olá, estou a fazer um site em ASP para guardar vários campos de texto e um com uma foto por registo. O problema é que a DB começa a crescer...
Como estou em testes estou a usar access mas posso usar SQL, se necessário.
As dúvidas são:
Uso ACCESS ou o SQL é mais indicado? Porque?

O form de upload envia a imagem para o BD, se enviasse para uma pasta do site podia usar apenas link na DB. ALguém conhece um exemplo de código para isso?
A usar a DB para guardar as imagens, existe alguma coisa que se possa fazer para não ficar tão pesada, por exemplo antes do upload a foto passar a uma resolução prédefinida?

O meu obrigado a quem puder dar uma ajuda!:x2:
 
Olá, estou a fazer um site em ASP para guardar vários campos de texto e um com uma foto por registo. O problema é que a DB começa a crescer...
Como estou em testes estou a usar access mas posso usar SQL, se necessário.
As dúvidas são:
Uso ACCESS ou o SQL é mais indicado? Porque?


Sql Server ou outra BD (Mysql, postgres,etc). Access "não é uma BD" embora muita gente pense assim.

O form de upload envia a imagem para o BD, se enviasse para uma pasta do site podia usar apenas link na DB. ALguém conhece um exemplo de código para isso?

Existem (n) desvantagens em colocar imagens na BD. e basicamente uma vantagem. Usa o filesystem. Existe muito codigo na net.. usa o google.


A usar a DB para guardar as imagens, existe alguma coisa que se possa fazer para não ficar tão pesada, por exemplo antes do upload a foto passar a uma resolução prédefinida?

Podes empre reduzir a qualidade da imagem e grava-la como jpeg. MAS PERDES SEMPRE ALGO (qualidade, cor, etc etc).

Outra abordagem que requer mais "versatilidade" é guardar as imagens na BD e fazeres uma cache em disco das imagens lidas pelo utilizador. Cache com tempos de expiração. esta abordagem requer uma boa analise antes de ser implementada.

/ing
 
dark_splinter disse:
Access n é BD porque?? (n tou criticar :))

são tantas as razões que não sei por onde começar :)

basta pesquisares na net.

eis algumas limitações...

Microsoft Access database table specifications
Attribute Maximum
Number of characters in a table name 64
Number of characters in a field name 64
Number of fields in a table 255
Number of open tables 2048. The actual number may be less because of tables open internally by Microsoft Access.
Table size 1 gigabyte
Number of characters in a Text field 255
Number of characters in a Memo field 65,535 when entering data through the user interface;
1 gigabyte when entering data programmatically.
Size of an OLE Object field 1 gigabyte
Number of indexes in a table 32
Number of fields in an index 10
Number of characters in a validation message 255
Number of characters in a validation rule 2,048
Number of characters in a table or field description 255
Number of characters in a record (excluding Memo and OLE Object fields) 2,000
Number of characters in a field property setting 255

The following are general Access limitations:

Microsoft Access database general specifications
Attribute Maximum
Microsoft Access database (.mdb) file size 2 gigabytes. However, because your database can include linked tables in other files, its total size is limited only by available storage capacity.
Number of objects in a database 32,768
Modules (including forms and reports with the HasModule property set to True) 1,000
Number of characters in an object name 64
Number of characters in a password 14
Number of characters in a user name or group name 20
Number of concurrent users 255

ODBC Driver (very slow)

etc etc....

O M$ Access é para projectos muito caseiros. Por exemplo se tentares usar isso como BD num software distribuido, então dá barraca devido às limitações existentes...

/ing
 
inginheiiro disse:
são tantas as razões que não sei por onde começar :)

basta pesquisares na net.

eis algumas limitações...

Microsoft Access database table specifications
Attribute Maximum
Number of characters in a table name 64
Number of characters in a field name 64
Number of fields in a table 255
Number of open tables 2048. The actual number may be less because of tables open internally by Microsoft Access.
Table size 1 gigabyte
Number of characters in a Text field 255
Number of characters in a Memo field 65,535 when entering data through the user interface;
1 gigabyte when entering data programmatically.
Size of an OLE Object field 1 gigabyte
Number of indexes in a table 32
Number of fields in an index 10
Number of characters in a validation message 255
Number of characters in a validation rule 2,048
Number of characters in a table or field description 255
Number of characters in a record (excluding Memo and OLE Object fields) 2,000
Number of characters in a field property setting 255

The following are general Access limitations:

Microsoft Access database general specifications
Attribute Maximum
Microsoft Access database (.mdb) file size 2 gigabytes. However, because your database can include linked tables in other files, its total size is limited only by available storage capacity.
Number of objects in a database 32,768
Modules (including forms and reports with the HasModule property set to True) 1,000
Number of characters in an object name 64
Number of characters in a password 14
Number of characters in a user name or group name 20
Number of concurrent users 255

ODBC Driver (very slow)

etc etc....

O M$ Access é para projectos muito caseiros. Por exemplo se tentares usar isso como BD num software distribuido, então dá barraca devido às limitações existentes...

/ing

ok :-D... eu nunca fiz nada em ACCESS tou agora a começar a dar uns toques em MySQL...
 
Por acaso permite :p Existe uma opção de colocar as tabelas como globais, claro que a BD tem de estar partilhada..., e não é das melhores para usar em trabalhos a sério..., mas de facto dá para partilhar por mais computadores/utilizadores :)

abraços, HecKel
 
Estou a fazer um em php.. pa guardar algum texto e uma img, mt parecido com o teu trabalho ! Devido ao peso com k a bd ia fikar fix um programa em c# para redimensionar as imgs ! Estou a usar sql-server ! Só tou com problemas com a ligaçao ah bd =/
 
Back
Topo