1 2 3 4 5 6 | explain SELECT SQL_NO_CACHE `video_id` FROM `video_tag_link` WHERE `tag_id` = 2721 OR `tag_id` = 245 GROUP BY `video_id` HAVING COUNT(`video_id`) = 2 LIMIT 0, 20 |
1 2 3 4 5 6 | CREATE TABLE `video_tag_link` ( `video_id` int(11) NOT NULL, `tag_id` int(11) NOT NULL, PRIMARY KEY (`tag_id`,`video_id`), KEY `video_id_index` (`video_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
1 2 3 4 5 6 | CREATE TABLE `video_tag_link` ( `video_id` int(10) unsigned NOT NULL, `tag_id` int(10) unsigned NOT NULL, PRIMARY KEY (`tag_id`,`video_id`), KEY `video_id` (`video_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;[ |
Mja, met 'krijg een -1 van de storage engine' kan ik niet zo veel.quote:Op dinsdag 17 februari 2015 13:13 schreef Chandler het volgende:
Ik heb
[ code verwijderd ]
27,400,090 rows, MyISAM, latin1_swedish_ci, 952,3 MiB
En krijg dan met dezelfde query als hierboven Using where; Using index; Using temporary; Using filesort
-edit-
Inderdaad MyIsam, heb gepoogd InnoDB te gebruiken maar heb daar vele problemen mee om de data in te voeren op juiste manier zonder fouten...
-edit2-
En het tabel omzetten naar InnoDB wil MySQL nietKrijg een -1 van de storage engine...
quote:Op dinsdag 17 februari 2015 13:13 schreef Chandler het volgende:
Ik heb
En het tabel omzetten naar InnoDB wil MySQL nietKrijg een -1 van de storage engine...
http://www.percona.com/do(...)mporting_tables.htmlquote:If you see the following message, then you must enable innodb_file_per_table and create the table again: ERROR 1030 (HY000): Got error -1 from storage engine
Voor archieven wordt het nog wel gebruikt. Kost stuk minder ruimte qua opslag.quote:Op dinsdag 17 februari 2015 14:58 schreef KomtTijd... het volgende:
Volgens mij heb ik nog nooit anders dan InnoDB gebruikt? Ik dacht dat MyIsam een beetje ouderwets was?
Wat zegt select * from video_tag_link je? en hoe ziet die tabel eruit?quote:Op dinsdag 17 februari 2015 18:01 schreef Chandler het volgende:
Helaas niet, want alle data in de myisam tabel is uniek en zou dus geen probleem moeten opleveren... heb al een uurtje zitten googlen maar kan geen 'oplossing' hiervoor vinden...
1 2 3 4 5 6 | CREATE TABLE IF NOT EXISTS `video_tag_link` ( `video_id` int(10) unsigned NOT NULL, `tag_id` int(10) unsigned NOT NULL, PRIMARY KEY (`tag_id`,`video_id`), KEY `video_id` (`video_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
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 31 | INSERT INTO `video_tag_link` (`video_id`, `tag_id`) VALUES (1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1), (10, 1), (11, 1), (13, 1), (15, 1), (17, 1), (18, 1), (19, 1), (20, 1), (21, 1), (22, 1), (23, 1), (25, 1), (26, 1), (27, 1), (29, 1), (30, 1), (31, 1), (32, 1), (33, 1), (35, 1), (36, 1); |
1 2 3 4 5 6 | SELECT SQL_NO_CACHE `video_id` FROM `video_tag_link` WHERE `tag_id` = 2721 OR `tag_id` = 245 GROUP BY `video_id` HAVING COUNT(`video_id`) = 2 LIMIT 0, 20 |
1 2 3 4 5 6 7 8 9 10 | 1 SIMPLE video_tag_link range PRIMARY,video_id PRIMARY 4 NULL 6480 Using where; Using index; Using temporary; Using filesor |
Deze post uit het vorige topic verdient ook nog wel even een reactie aangezien het concept 'index' in deze reeks vaak niet echt begrepen lijkt en men enkel weet dat 'queries er sneller van worden', zonder het wat en waarom van een index te snappen. Deze site heeft wel prima verdere uitleg.quote:Op maandag 16 februari 2015 23:14 schreef raptorix het volgende:
[..]
Volgens mij heeft een index geen zin op een integer, maar daar twijfel ik even over, of dat puur op numeriek is of een autoID (bestaat dat in MySql?)
1 2 3 4 | <select name="divisie" form="divisieform"> <option value="1">Super lig</option> <option value="2">2. Lig</option> </select> |
Thx, ik kende deze theorie wel, ik weet niet hoet met mysql zit, maar in sqlserver kun je bij een index ook een fragmentation rate aangeven. Gebruik je niet heel vaak, maar met name wanneer performance belangrijk is valt er wel mee te tunen.quote:Op woensdag 18 februari 2015 09:46 schreef Monolith het volgende:
[..]
Deze post uit het vorige topic verdient ook nog wel even een reactie aangezien het concept 'index' in deze reeks vaak niet echt begrepen lijkt en men enkel weet dat 'queries er sneller van worden', zonder het wat en waarom van een index te snappen. Deze site heeft wel prima verdere uitleg.
Voor read only kun je tegenwoordig dan weer beter noSQL databases gebruiken doorgaans qua performance.quote:Op woensdag 18 februari 2015 18:39 schreef raptorix het volgende:
[..]
Thx, ik kende deze theorie wel, ik weet niet hoet met mysql zit, maar in sqlserver kun je bij een index ook een fragmentation rate aangeven. Gebruik je niet heel vaak, maar met name wanneer performance belangrijk is valt er wel mee te tunen.
Zelf heb ik in verleden veel aan Funda gewerkt, met name aan de eerste versies heb ik veel aan de search gewerkt dus wel bekend met tuning
De eerste versie van Funda was ook een readonly database, dat scheelt je al snel 30 procent performance omdat zodra een database in readonly is, hij geen rekening hoeft te houden met locking of aangepaste indices.
Fragmentatie is volgens mij in deze betekenis de mogelijkheden om je index te updaten, zoals ik het altijd begrepen hebt werkt het net als in papieren index dat je meer ruimte hebt om wijzigingen te doen (wat uiteraard wel ten koste gaat van meer opslag, en dus performance).quote:Op woensdag 18 februari 2015 19:09 schreef Monolith het volgende:
[..]
Voor read only kun je tegenwoordig dan weer beter noSQL databases gebruiken doorgaans qua performance.
Fragmentatie is de mate waarin je index verspreid is over je opslag. Hoe meer fragmentatie, des te trager het gebruik van de index.
Nee, dat is een ander concept, fragmentatie heeft te maken met logische versus fysieke ordening, waardoor het lezen van de schijf trager gaat.quote:Op woensdag 18 februari 2015 20:03 schreef raptorix het volgende:
[..]
Fragmentatie is volgens mij in deze betekenis de mogelijkheden om je index te updaten, zoals ik het altijd begrepen hebt werkt het net als in papieren index dat je meer ruimte hebt om wijzigingen te doen (wat uiteraard wel ten koste gaat van meer opslag, en dus performance).
Klopt, ik doelde dus nie op fragmentatie maar op fillfactorquote:Op woensdag 18 februari 2015 20:19 schreef Monolith het volgende:
[..]
Nee, dat is een ander concept, fragmentatie heeft te maken met logische versus fysieke ordening, waardoor het lezen van de schijf trager gaat.
Zie bv:
https://msdn.microsoft.com/en-us/library/ms189858.aspx
Tinyint(1) = 0 t/m 9quote:Op woensdag 18 februari 2015 21:18 schreef Monolith het volgende:
Als het een Tinyint(1) is, dan klopt dat ook gewoon.
Volgens mij moet je even opzoeken wat die 1 betekent.quote:Op woensdag 18 februari 2015 21:19 schreef mstx het volgende:
[..]
Tinyint(1) = 0 t/m 9
Boolean = true/false
Hoe is dat het zelfde?
die 1 betekend 1 teken lezen toch?quote:Op woensdag 18 februari 2015 21:21 schreef Monolith het volgende:
[..]
Volgens mij moet je even opzoeken wat die 1 betekent.
Nee, tinyint(1) is een integer van 1 bit, dus een boolean.quote:
http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.htmlquote:Op woensdag 18 februari 2015 21:22 schreef wipes66 het volgende:
[..]
die 1 betekend 1 teken lezen toch?
mysql heeft geen echte boolean, dus 'boolean' is gewoon een allias voor tinyint(1) wat 8-bit is.quote:Op woensdag 18 februari 2015 21:22 schreef KomtTijd... het volgende:
[..]
Nee, tinyint(1) is een integer van 1 bit, dus een boolean.
Als ik het verander naar tinyint(3) zegt hij nog steeds dat het een boolean is.quote:Op woensdag 18 februari 2015 21:22 schreef KomtTijd... het volgende:
[..]
Nee, tinyint(1) is een integer van 1 bit, dus een boolean.
dat heb ik fout. Maar een boolean wordt wel altijd als tinyint(1) opgeslagen. Dus zo gek is het niet dat Doctrine die aanname doet.
Op zich wel, maar omdat doctrine types mapt tussen PHP en MySQL stelt het tinyint gelijk aan boolean kennelijk. Zie ook:quote:Op woensdag 18 februari 2015 21:31 schreef mstx het volgende:
[..]
Als ik het verander naar tinyint(3) zegt hij nog steeds dat het een boolean is.
Ik wil gewoon het aantal versnellingen van een auto opslaan, een tinyint leek me daar het juiste type voor.
Waarom maak je je uberhaupt druk om het database format? Laat dat lekker aan doctrine over. Die zal er waarschijnlijk een int van maken. Mocht je dat nog willen micro-optimaliseren naar een tinyint kun je dat doen na uitrol van je applicatie.quote:Op woensdag 18 februari 2015 21:31 schreef mstx het volgende:
[..]
Als ik het verander naar tinyint(3) zegt hij nog steeds dat het een boolean is.
Ik wil gewoon het aantal versnellingen van een auto opslaan, een tinyint leek me daar het juiste type voor.
Omdat ik die database al had en ik altijd de juiste datatypes probeer te gebruiken.quote:Op woensdag 18 februari 2015 21:37 schreef KomtTijd... het volgende:
[..]
Waarom maak je je uberhaupt druk om het database format? Laat dat lekker aan doctrine over. Die zal er waarschijnlijk een int van maken. Mocht je dat nog willen micro-optimaliseren naar een tinyint kun je dat doen na uitrol van je applicatie.
Dat krijg je met dat soort systemen. PostgreSQL heeft geen tinyint en sqllite weer wel dus mappen ze inderdaad een tinyint naar een boolean.quote:Op woensdag 18 februari 2015 21:36 schreef Monolith het volgende:
[..]
Op zich wel, maar omdat doctrine types mapt tussen PHP en MySQL stelt het tinyint gelijk aan boolean kennelijk. Zie ook:
http://stackoverflow.com/(...)ype-in-entity-column
ENUM ('TRUE','FALSE')quote:Op woensdag 18 februari 2015 21:19 schreef mstx het volgende:
[..]
Tinyint(1) = 0 t/m 9
Boolean = true/false
Hoe is dat het zelfde?
Je kunt je entities toch wel handmatig aanpassen naar het goeie format lijkt me?quote:Op woensdag 18 februari 2015 21:45 schreef mstx het volgende:
[..]
Omdat ik die database al had en ik altijd de juiste datatypes probeer te gebruiken.En dan is het gewoon een beetje vreemd dat een auto ineens "true" versnellingen heeft terwijl er "6" in de database staat.
Daar is een boolean inderdaad niet voor bedoeld en het levert in SQL en veel andere talen doorgaans wel vrij onverwachte informatie op als je er logische operaties mee gaat uitvoeren.quote:Op donderdag 19 februari 2015 08:51 schreef raptorix het volgende:
Alles kan, zo had ik een collega die het een goed idee vond om een nullable bool te gebruiken, en op die manier tristate te kunnen opslaan, nog nooit zoveel gezeik gehad met exports![]()
Ja klopt, er moest een sync proces via een automatisch tool naar Oracle worden gezet, in die tooling kon geen cast worden gedaan waardoor enige mogelijkheid was om al die velden te gaan omzetten, dit leverde ook weer allemaal gezeik op omdat een boolean in die tijd formeel geen null kon zijn in SQL Server, heeft echt weken gekost om dat goed gefixed te krijgen.quote:Op donderdag 19 februari 2015 09:36 schreef Monolith het volgende:
[..]
Daar is een boolean inderdaad niet voor bedoeld en het levert in SQL en veel andere talen doorgaans wel vrij onverwachte informatie op als je er logische operaties mee gaat uitvoeren.
1 2 3 4 5 | <?php SELECT * FROM bestellen INNER JOIN users ON ( bestellen.userdienodigheeft = users.IdUser ) ?> |
1 2 3 4 5 6 7 | <?php SELECT * FROM bestellen INNER JOIN users ON ( bestellen.userdienodigheeft = users.IdUser ) INNER JOIN users ON ( bestellen.userdiebesteldheeft = users.IdUser ) ?> |
Je doet twee Inner Joins op dezelfde tabel, volgens mij kun je er dan beter twee aparte queries van maken.quote:Op woensdag 25 februari 2015 20:35 schreef wobbel het volgende:
Help, ik zit in de knoei met een SQL query in PHP....
Ik heb een tabel met daarin hardware die besteld moet worden, zie onderstaande tabel:
tabel "bestellen"
volgende velden:
product
userdienodigheeft
userdiebesteldheeft
De user velden zijn ID's die ik vanuit een andere tabel "users" kan joinen
tabel "users"
iduser
naam
Als ik een JOIN die op de volgende manier kan dat prima als ik maar 1 user wil ophalen, maar hoe doe ik dat als ik de gegevens van 2 users wil ophalen? De bestelling kan nodig zijn voor user 1000 en besteld zijn door user 1028 namelijk![]()
Huidige query waarmee ik maar 1 user ophaal
[ code verwijderd ]
Mijn idee, welke uiteraard niet werkt was het volgt, maar hoe moet het wel??
[ code verwijderd ]
In beide gevallen krijg ik maar 1 veld terug, dat is 'naam' maar ik wil eigenlijk naamNodig en naamBesteld ofzo krijgen
Dat met die keywords/bijnamen begrijp ik, maar niet hoe ik aan de 2 namen van de users kom. Ik doe inderdaad twee joins op 1 tabel maar dat werkt uiteraard niet...quote:Op woensdag 25 februari 2015 20:40 schreef robin007bond het volgende:
[..]
Je doet twee Inner Joins op dezelfde tabel, volgens mij kun je er dan beter twee aparte queries van maken.
Maar je kunt het keyword 'as' gebruiken om bijnamen te geven aan kolomnamen.
Sorry, maar dan heb je je database waarschijnlijk niet optimaal ingericht.quote:Op woensdag 25 februari 2015 21:02 schreef wobbel het volgende:
[..]
Dat met die keywords/bijnamen begrijp ik, maar niet hoe ik aan de 2 namen van de users kom. Ik doe inderdaad twee joins op 1 tabel maar dat werkt uiteraard niet...
Ik zou een 2e query kunnen doen, maar dan zou ik dat voor élk resultaat moeten doen. Bij een pagina met 20 resultaten heb ik dan 21 queries (1 querie voor de resultaten inclusief join voor de 1e naam, en 20 voor de andere namen)
Je hebt mogelijk kolommen met eenzelfde naam zodat in het resultaat er één (unieke naam) overblijft.quote:Op woensdag 25 februari 2015 21:02 schreef wobbel het volgende:
[..]
Dat met die keywords/bijnamen begrijp ik, maar niet hoe ik aan de 2 namen van de users kom. Ik doe inderdaad twee joins op 1 tabel maar dat werkt uiteraard niet...
Ik zou een 2e query kunnen doen, maar dan zou ik dat voor élk resultaat moeten doen. Bij een pagina met 20 resultaten heb ik dan 21 queries (1 querie voor de resultaten inclusief join voor de 1e naam, en 20 voor de andere namen)
1 2 3 4 5 6 7 8 | SELECT b.*, u1.idUser AS idUser1, u1.naam AS naam1 u2.idUser AS idUser2, u2.naam AS naam2 FROM bestellen AS b INNER JOIN users AS u1 ON b.userdienodigheeft = u1.IdUser INNER JOIN users AS u2 ON b.userdiebesteldheeft = u2.idUser |
Top, dit is hem inderdaadquote:Op woensdag 25 februari 2015 21:43 schreef Aether het volgende:
[..]
Je hebt mogelijk kolommen met eenzelfde naam zodat in het resultaat er één (unieke naam) overblijft.
Je kunt het oplossen door alternatieve namen in de SELECT te gebruiken. Bijvoorbeeld:
[ code verwijderd ]
(Ik weet niet welke kolommen er verder voorkomen).
Die kans is aanwezig, maar soms moet je werken met wat je hebtquote:Op woensdag 25 februari 2015 21:04 schreef robin007bond het volgende:
[..]
Sorry, maar dan heb je je database waarschijnlijk niet optimaal ingericht.
http://appserver.io/quote:The objective of the project is to develop a multithreaded application server for PHP, written in PHP. Yes, pure PHP! You think we aren't serious? Maybe! But we think, in order to enable as many developers in our great community, this will be the one and only way. So with your help we hopefully establish a solution as the standard for enterprise applications in PHP environments.
Ik heb een beter idee. Leer Java.quote:Op donderdag 26 februari 2015 10:07 schreef Aether het volgende:
Stabiele versie 1.0.0 appserver.io uitgebracht.
[..]
http://appserver.io/
https://github.com/appserver-io/appserver
Je hebt met PHP te maken, elke idioot kan dat bedacht hebben (Ik heb de draad gelezen, het komt door mysql..)quote:Op woensdag 18 februari 2015 21:14 schreef mstx het volgende:
Ben sinds kort iets aan het maken met Symfony2/Doctrine. Dus ik heb in mijn database een TINYINT veld, zegt dat systeem dat het een boolean is. Welke idioot heeft dat bedacht?
Docterine zit fout m.i. De MySQL docs zeggen:quote:Op woensdag 18 februari 2015 21:37 schreef KomtTijd... het volgende:
[..]
Waarom maak je je uberhaupt druk om het database format? Laat dat lekker aan doctrine over. Die zal er waarschijnlijk een int van maken. Mocht je dat nog willen micro-optimaliseren naar een tinyint kun je dat doen na uitrol van je applicatie.
Dat wilt dus zeggen dat een tinyint(1) veld dus: 0 of niet 0 moet teruggeven, als je if ($bool) doet, gaat die logica vanzelf goed, daar hoeven ze geen "true" of "false" van de maken. En mocht je echt willen dat een tinyint een boolean is, dan moet je dat ergens in je schema kunnen opnemen.quote:A value of zero is considered false. Nonzero values are considered true
hoezo? ohhh omdat 0 === true is?quote:Op zaterdag 28 februari 2015 08:57 schreef Monolith het volgende:
Dat gaat je problemen opleveren wanneer je b.v. === true doet. De == operator in PHP is aardig verneukt.
Nee, omdat bijvoorbeeld 3 === true false oplevert en dergelijke checks dus falen als je de daadwerkelijke int waarden gebruikt.quote:Op zaterdag 28 februari 2015 10:38 schreef slacker_nl het volgende:
[..]
hoezo? ohhh omdat 0 === true is?
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.quote:Op zaterdag 28 februari 2015 10:45 schreef Monolith het volgende:
[..]
Nee, omdat bijvoorbeeld 3 === true false oplevert en dergelijke checks dus falen als je de daadwerkelijke int waarden gebruikt.
Doctrine zelf is gewoon een ORM framework. Volgens mij gebruikt betreffende user gewoon een tooltje om op basis van een database schema de bijbehorende code te kunnen genereren. Doctrine werkt net als allerhande andere ORM frameworks met annotaties, waarbij je ook types op kunt geven.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.
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?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |