Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pojemność rekordów SQL w praktyce, czyli o integralności danych w konkretnym projekcie
blackstone
post
Post #1





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 19.03.2015

Ostrzeżenie: (0%)
-----


Tworze stronę internetową na której artykuły mają być zapisane w bazie danych i zastanawiam się jak mam to wykonać w praktyce. Chcę zapytać o dwie rzeczy :

1 ) Ile maksymalnie znaków może pomieścić jeden rekord bazy SQL ?
2) Co mogę zrobić jeżeli okazałoby się że artykuł zawiera więcej znaków niż jest w stanie pomieścić rekord w bazie danych ? Czy moge jakoś za pomocą jakiś komend PHP , SQL sprawić by automatycznie podczas dodawania artykułu jego treść została podzielona na kilka rekordów a potem łącznie (jako całość) zczytana z bazy danych, lub cokolwiek innego by nie przejmować się tym że tekst będzie za długi i będą problemy z jego >> INTEGRALNYM<< zapisem oraz odczytem ?

Pierwszy raz tworzę taki projekt a moja wiedza o bazach SQL i ich współpracy z PHP nie jest obszerna, więc nie mam żadnego wyborażenia jak to rozwiązać. Prosze o sugestie. Pozdrawiam i z góry dzięki za odpowiedzi (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Jeszcze odpowiadając na 2. Normalna baza sypnie wyjątkiem
  1. CREATE TABLE test.test
  2. (
  3. id serial NOT NULL,
  4. nazwa character varying(10),
  5. CONSTRAINT test_pkey PRIMARY KEY (id)
  6. )
  7. WITH (
  8. OIDS=FALSE
  9. );
  10.  
  11. INSERT INTO test.test(nazwa) VALUES('aaa');
  12. -- Zapytanie zostało wykonane: dotyczyło jednego wiersza, w czasie 32 ms.
  13. INSERT INTO test.test(nazwa) VALUES('aaa1234567890');
  14. -- BŁĄD: wartość zbyt długa dla typu znakowego zmiennego (10) Stan SQL: 22001


W mysql różnie to bywa (IMG:style_emoticons/default/wink.gif) Strict mode chyba wymuszał ale już nie pamiętam. W innnym wypadku po porstu ucinał do długości nie przejmując się że dane są niepełne.
W przypadku przechwycenia błędu transakcja jest cofana. Duże pola mogą pomieścić około 1GB danych - w zależności od systemu.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 20:10