04. marts 2012 - 11:11Der er
7 kommentarer og 1 løsning
En af mine database tabeller - Felter virker ikke
Hej! :-)
Jeg sidder ikke med et decideret problem, men nærmere noget jeg har oplevet efterhånden et par gange, eftersom jeg er begyndt at benytte mig af PDO (Prepared Statements). Jeg har oplevet at når jeg har tilføjet et nyt felt til databasen, så vil systemet simpelthen bare ikke sætte nogle data ind. Jeg har prøvet at ændre databasetypen m.m. men uden held.
Jeg har fået det til at virke ved: - At rykke det pågældende felt længere til "venstre", altså mod starten af tabellen, så det ikke ligger i slutningen.
- Slette nogle af de andre felter (fandt to jeg ikke brugte)
De felter der ligger i slutningen af tabellen er typisk nogle med standardværdier, men jeg har aldrig haft problemer med at tilføje et nyt felt, og få indsat data i det..
Bruger typisk Varchar til tekst - til længere tekst benytter jeg TEXT, da LONGTEXT ikke virker i PDO, af hvad jeg har erfaret. Til tal bruger jeg typisk INT, eller Varchar i nogle tilfælde.
Jeg håber på at kunne få et svar på hvorfor den kan drille mig på den måde? :-)
Sig endelig til hvis andre oplysninger skal bruges.
"så vil systemet simpelthen bare ikke sætte nogle data ind" ... der kommer ingen fejlbesked? Og din kode sørger for at du kan se en eventuel fejlbesked?
Den indsætter jo fint i andre felter, undtagen det nye felt. Hvis jeg har problemer, plejer jeg at lave en var_dump, og det har jeg også prøvet, og giver blot NULL.
Men jeg har som sagt ikke noget decideret problem. Det virker fint nu. Og jeg har KUN ændret det, at databasefeltet er blevet rykket længere mod de første felter i tabellen..
Som sagt har jeg ikke noget problem i øjeblikket, udover at jeg ikke forstår hvorfor at det hænder sommetider, at jeg simpelthen ikke kan indsætte noget i feltet. Der kommer ingen fejl, der bliver sat ind i de øvrige felter - den ENESTE handling jeg har udført, for at det er kommet til at virke er, at jeg har "flyttet" mit felt, længere mod starten af tabellen dvs:
id, bla, bla1, bla2, bla3, bla4, bla5 ... nyt bla-felt
Det virker ikke, men flytter jeg det så hen på
id, bla, bla1, nyt bla-felt bla2, bla3, bla4, bla5
Jeg har ikke oplevet det før min brug af Prepared statments.
Der er ikke problemer med ovenstående kode - den virker i hvert fald. Jeg ønsker bare at vide hvorfor at den pludselig kan overføre sig sådan? Altså når jeg tilføjer et nyt felt i tabellen bla_tabel..
Jeg har tænkt: - Har jeg oprettet for mange felter i denne database tabel (27 felter?) - Bruger jeg forkerte databasetyper?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.