Doctrine gebruikt ook de interne definitie. Als je aangeeft dat een veld een boolean bevat, krijg je een kolom voor booleans. Maar als je vervolgens een database gebruikt die geen booleans ondersteunt (zoals MySQL) dan krijg je een automatische fallback naar het kleinste numerieke formaat, ofwel de tinyint. Dat staat ook in de documentatie.quote:Op zaterdag 28 februari 2015 11:06 schreef slacker_nl het volgende:
[..]
Doctorine moet gewoon niet naar het interne storageformaat kijken maar ergens in z'n schema files een definitie plaatsen van de kolom: boolean. Dat ie dat vervolgens mapped maar tinyint of supersmallint of weet ik het maakt dan niet uit. Null == false, idem voor 0 en de rest is true. Fixed. Dan kan je tinyint gebruiken in je DB en booleans zonder gezeik met true versnellingen.
Beetje ala
http://search.cpan.org/~g(...)ateColumn/Boolean.pm
En toch gaat het fout, want de beste man heeft true versnellingen ipv 6. Daarom zeg ik: Docterine zit fout, omdat ze ervanuit gaan dat een tinyint een booleanish value is.quote:Op zondag 1 maart 2015 00:21 schreef Light het volgende:
[..]
Doctrine gebruikt ook de interne definitie. Als je aangeeft dat een veld een boolean bevat, krijg je een kolom voor booleans. Maar als je vervolgens een database gebruikt die geen booleans ondersteunt (zoals MySQL) dan krijg je een automatische fallback naar het kleinste numerieke formaat, ofwel de tinyint. Dat staat ook in de documentatie.
Doctrine gaat uit van meersere databasedrivers. Dan krijg je compromissenquote:Op zondag 1 maart 2015 10:01 schreef slacker_nl het volgende:
[..]
En toch gaat het fout, want de beste man heeft true versnellingen ipv 6. Daarom zeg ik: Docterine zit fout, omdat ze ervanuit gaan dat een tinyint een booleanish value is.
Het lijkt mij dat er na de AND weer een P.id = personB_id moet komen, maar dan wel waar de P.eyeColor = "blue" is.quote:SELECT P.name
FROM Persons P, Likes L
WHERE P.id = L.personA_id AND ............
Aha, vraag me niet waarom maar ik dacht steeds Likes 2 keer te moeten joinen.quote:Op dinsdag 3 maart 2015 09:18 schreef KomtTijd... het volgende:
Selecten naar likes, persons 2x joinen.
1 2 3 | SELECT DISTINCT P1.name FROM Persons P1, Persons P2, Likes L WHERE P1.id = L.personA_id AND P2.id = L.personB_id AND P2.eyeColor ="blue" |
Je zou het zelf dus anders gedaan hebben bedoel je?quote:Op dinsdag 3 maart 2015 09:34 schreef KomtTijd... het volgende:
Ik blijf het een irritante notatie vinden die impliciete joins, maar zo kan ook inderdaad
Ik begrijp niet zo goed wat javascript er mee te maken heeft, het beste kan je het ID dan laten genereren in PHP. In SQL zou ik het niet zo snel doen.quote:Op dinsdag 3 maart 2015 10:01 schreef justme27 het volgende:
Hoi,
Kan ik mbv SQL ook nummers genereren die voldoen aan de 11-proef?
Ik zoek dus een manier om, op basis van bv een gegeven als data of tijd, een nummer te genereren die ook nog eens voldoet aan de 11-proef voor het kunnen verkrijgen van een geldig BSN-nummer.
Momenteel gebruik ik een statement wat, op basis van een view en vaste gegevens, nummers toevoegt om zo tot een getal van 6 cijfers te komen:
to_char( sysdate, 'WW')||lpad(pst_vnr_seq.nextval,4,0 )
Is het mogelijk of moet het echt met een apart javascript?
Je kunt stored procedures schrijven in Mysql.quote:Op dinsdag 3 maart 2015 10:01 schreef justme27 het volgende:
Hoi,
Kan ik mbv SQL ook nummers genereren die voldoen aan de 11-proef?
Ik zoek dus een manier om, op basis van bv een gegeven als data of tijd, een nummer te genereren die ook nog eens voldoet aan de 11-proef voor het kunnen verkrijgen van een geldig BSN-nummer.
Momenteel gebruik ik een statement wat, op basis van een view en vaste gegevens, nummers toevoegt om zo tot een getal van 6 cijfers te komen:
to_char( sysdate, 'WW')||lpad(pst_vnr_seq.nextval,4,0 )
Is het mogelijk of moet het echt met een apart javascript?
Javascript was een voorbeeld. En ook omdat ik geen PHP kan gebruiken; mijn selectie als invoertaal is beperkt tot:quote:Op dinsdag 3 maart 2015 10:03 schreef Scorpie het volgende:
[..]
Ik begrijp niet zo goed wat javascript er mee te maken heeft, het beste kan je het ID dan laten genereren in PHP. In SQL zou ik het niet zo snel doen.
Ik ben helaas geen ontwikkelaar dus dit onderdeel (ik heb ff gelezen) wordt al snel te ingewikkeld voor mij.quote:Op dinsdag 3 maart 2015 10:28 schreef Monolith het volgende:
[..]
Je kunt stored procedures schrijven in Mysql.
Wat is precies je vraag dan? Hoe je überhaupt een 11-proef nummer kunt genereren? Lijkt me dat hier wel rekenvoorbeelden voor te vinden zijn toch?quote:Op dinsdag 3 maart 2015 10:47 schreef justme27 het volgende:
[..]
Ik ben helaas geen ontwikkelaar dus dit onderdeel (ik heb ff gelezen) wordt al snel te ingewikkeld voor mij.
http://nl.wikipedia.org/wiki/Elfproefquote:Op dinsdag 3 maart 2015 11:43 schreef KomtTijd... het volgende:
[..]
Wat is precies je vraag dan? Hoe je überhaupt een 11-proef nummer kunt genereren? Lijkt me dat hier wel rekenvoorbeelden voor te vinden zijn toch?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | <?php try { $options = array( PDO::ATTR_PERSISTENT => true,//can help to improve performance PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //throws exceptions whenever a db error occurs PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8' //>= PHP 5.3.6 ); $con= new PDO('mysql:host=localhost;dbname=dbname', 'dbuser', 'dbpass', $options); $sql= "SELECT * FROM A"; $stmt=$con->prepare($sql); $stmt->execute(); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<tr>'; echo '<td>' . $row['A'] . '</td>'; echo '<td>' . $row['B'] . '</td>'; echo '<td>' . $row['C'] . ' - ' . $row['D'] . '</td>'; echo '<td>' . $row['E'] . '</td>'; echo '</tr>'; } } catch(PDOException $e) { echo '<pre>'; echo 'Regel: '.$e->getLine(). '<br />'; echo 'Bestand: '.$e->getFile(). '<br />'; echo 'Foutmelding: '.$e->getMessage(); echo '</pre>'; } ?> |
1 2 3 4 | <?php $con= new PDO('mysql:host=localhost;dbname=dbname', 'dbuser', 'dbpass' , array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8')); ?> |
1 2 3 | <?php $stmt=$con->prepare($sql, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8')); ?> |
1 2 3 4 | <?php error_reporting(E_ALL); ini_set('display_errors', 1); ?> |
Gedaan. Geen foutmeldingen. Het wordt in zijn geheel niet meer weergegeven.quote:Op dinsdag 3 maart 2015 12:51 schreef Monolith het volgende:
Blanco pagina's betekenen doorgaans dat je een error krijgt die je niet zet.
Zet in ieder geval de error reporting / weergave even aan:
[ code verwijderd ]
quote:Op dinsdag 3 maart 2015 13:24 schreef Chandler het volgende:
Kan het zijn dat je de data al verkeerd hebt opgeslagen in de database?? heb ik ook wel eens gehad...
Thanks, zal het zo doornemen!quote:Op dinsdag 3 maart 2015 13:27 schreef raptorix het volgende:
MUST READ, REPEAT, MUST READ!
http://www.joelonsoftware.com/articles/Unicode.html
Heb je de PHP-file zelf ook in UTF-8 opgeslagen? Kan zijn dat je ook nog even een meta-tag moet toevoegen in de pagina waarin je dit weergeeft.quote:Op dinsdag 3 maart 2015 13:20 schreef zarGon het volgende:
[..]
Gedaan. Geen foutmeldingen. Het wordt in zijn geheel niet meer weergegeven.
Ervoor:
[ afbeelding ]
Erna:
[ afbeelding ]
1 2 3 | SELECT DISTINCT P1.name FROM Persons P1, Persons P2, Likes L WHERE P1.id = L.personA_id AND P2.id = L.personB_id AND P2.eyeColor ="blue" |
Als het goed is wel, zal ik vanavond naar kijken. Thanks.quote:Op dinsdag 3 maart 2015 13:53 schreef robin007bond het volgende:
[..]
Heb je de PHP-file zelf ook in UTF-8 opgeslagen? Kan zijn dat je ook nog even een meta-tag moet toevoegen in de pagina waarin je dit weergeeft.
Waarom dat?quote:Op dinsdag 3 maart 2015 14:29 schreef DannyDeko het volgende:
[ code verwijderd ]
Om even terug te komen op dit. Hoe verander ik dit nu zodat nu alleen de persoon wordt weergegeven die minstens twee personen met blauwe ogen aardig vindt? Volgens mij is het nog niet de bedoeling om COUNT te gebruiken, dus hoe kan ik dit dan oplossen?
I know, ik ben ook niet op zoek naar directe antwoorden. (;quote:Op dinsdag 3 maart 2015 15:29 schreef Monolith het volgende:
Dit is geen huiswerktopic.![]()
maar om je een hint te geven, je moet in ieder geval 3x iets uit Persons selecteren in dit geval.
Omdat het per onderdeel wordt uitgelegd ( voor zover dat wordt gedaan, documentatie is echt minimaal) en daarna enkele opgaven gegeven worden. En HAVING en COUNT komen pas later aan de orde.quote:Op dinsdag 3 maart 2015 15:32 schreef zarGon het volgende:
[..]
Waarom dat?
De simpelste oplossing lijkt mij eerst GROUP BY en een COUNT(). Vervolgens een select daaromheen met een WHERE en COUNT() > 1.
Een HAVING is makkelijker, maar ook dan heb je een COUNT.
Lukt het hiermee?
Wat mag je nu wel gebruiken dan? Er moet op de een of andere manier toch een telling plaatsvinden...quote:Op dinsdag 3 maart 2015 15:43 schreef DannyDeko het volgende:
Omdat het per onderdeel wordt uitgelegd ( voor zover dat wordt gedaan, documentatie is echt minimaal) en daarna enkele opgaven gegeven worden. En HAVING en COUNT komen pas later aan de orde.
Ik ga er weer even mee stoeien. Alvast bedankt
Ik heb het maar gewoon gebruikt, want zoals je al zei zal er toch op een manier geteld moeten worden.quote:Op dinsdag 3 maart 2015 15:46 schreef zarGon het volgende:
[..]
Wat mag je nu wel gebruiken dan? Er moet op de een of andere manier toch een telling plaatsvinden...
1 2 3 4 5 | SELECT DISTINCT P1.name FROM Persons P1, Persons P2, Likes L WHERE P1.id = L.personA_id AND P2.id = L.personB_id AND P2.eyeColor ="green" GROUP BY P1.name HAVING COUNT(P2.eyeColor = "green") > 1 |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |