Re: [nl-users] Update van mijn vraag: update van veld door info uit een andere tabel, enkel bij overeenkomende ID - opgelost

2023-04-04 Berichten over hetzelfde onderwerp Ivo Raepsaet

Beste,

Er is een oplossing (die ik niet begrijp, maar ok :-) )

Met behulp van:

https://ask.libreoffice.org/t/lo-base-tool-sql-update-statement-problems/52868/2

Heb ik volgende werkende code:

update "persoon" set "GSM"=(select  "nieuw"."GSM" from "nieuw" where 
"nieuw"."IDpersoon"="persoon"."IDpersoon")
where 1 in (select 1 from "nieuw" where 
"nieuw"."IDpersoon"="persoon"."IDpersoon")


Groeten, Ivo

Op 4/04/2023 om 10:00 schreef Ivo Raepsaet:

Beste,

hulp gezocht bij update van veld info door info die in een andere 
tabel te vinden is. Dit enkel voor records in tabel persoon waar 
persoon.IDpersoon een match heeft met nieuw.IDpersoon


Probleem:
Ik wil in LO-base. waarden in een tabel aanpassen.
Maar niet door een vaste waarde zoals "fiets" of 1234 maar door inhoud 
vanuit een andere tabel

waarbij er een link is via eenzelfde ID.

create table "persoon"
(IDpersoon int, GSM varchar(13), primary key(IDpersoon));

insert into table "persoon" values
(1, '0499228833');
insert into table "persoon" values
(2, '0492 84 22 33');
insert into table "persoon" values
(3, '0422 33 44 86');
insert into table "persoon" values
(4, '0428885523');

create table "nieuw" as n
(IDpersoon int, GSM varchar(13), primary key (IDpersoon));

insert into table "nieuw" values
(1, '0499 22 88 33');
insert into table "nieuw" values
(4, '0428 88 55 23');

Onderstaande update opdracht verandert in
record 2 en 3 van persoon de GSM in een leeg veld. Dat is natuurlijk 
niet de bedoeling. :-)


update "persoon"
set "GSM"=(select  "nieuw"."GSM" from "nieuw" where 
"nieuw"."IDpersoon"="persoon"."IDpersoon")


Dank vooraf. Groeten, Ivo




--
Unsubscribe instructions: E-mail to users+unsubscr...@nl.libreoffice.org
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/nl/users/
Privacy Policy: https://www.documentfoundation.org/privacy


[nl-users] Update van mijn vraag: update van veld door info uit een andere tabel, enkel bij overeenkomende ID

2023-04-04 Berichten over hetzelfde onderwerp Ivo Raepsaet

Beste,

hulp gezocht bij update van veld info door info die in een andere tabel 
te vinden is. Dit enkel voor records in tabel persoon waar 
persoon.IDpersoon een match heeft met nieuw.IDpersoon


Probleem:
Ik wil in LO-base. waarden in een tabel aanpassen.
Maar niet door een vaste waarde zoals "fiets" of 1234 maar door inhoud 
vanuit een andere tabel

waarbij er een link is via eenzelfde ID.

create table "persoon"
(IDpersoon int, GSM varchar(13), primary key(IDpersoon));

insert into table "persoon" values
(1, '0499228833');
insert into table "persoon" values
(2, '0492 84 22 33');
insert into table "persoon" values
(3, '0422 33 44 86');
insert into table "persoon" values
(4, '0428885523');

create table "nieuw" as n
(IDpersoon int, GSM varchar(13), primary key (IDpersoon));

insert into table "nieuw" values
(1, '0499 22 88 33');
insert into table "nieuw" values
(4, '0428 88 55 23');

Onderstaande update opdracht verandert in
record 2 en 3 van persoon de GSM in een leeg veld. Dat is natuurlijk 
niet de bedoeling. :-)


update "persoon"
set "GSM"=(select  "nieuw"."GSM" from "nieuw" where 
"nieuw"."IDpersoon"="persoon"."IDpersoon")


Dank vooraf. Groeten, Ivo


--
Unsubscribe instructions: E-mail to users+unsubscr...@nl.libreoffice.org
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/nl/users/
Privacy Policy: https://www.documentfoundation.org/privacy


Fwd: [nl-users] hulp gezocht bij update van veld info door info die in een andere tabel te vinden is.

2023-04-03 Berichten over hetzelfde onderwerp Ivo Raepsaet

Dag Rob,

Dank voor de info. Lijkt me veel belovend.
Bij deze is de info ook voor de anderen te lezen.

Groeten, Ivo



 Doorgestuurd bericht 
Onderwerp: 	Re: [nl-users] hulp gezocht bij update van veld info door 
info die in een andere tabel te vinden is.

Datum:  Mon, 3 Apr 2023 21:57:29 +0200
Van:Rob Westein 
Aan:Ivo Raepsaet 



Hallo Ivo,

Excuses voor mijn late antwoord.
Wat mij betreft bestaat er geen "normale" SQL Database. met MySQL kan je 
bv ook niet meerdere records in 1 INSERT statement aanmaken.


Wil je toch regelmatig ee insert van meerdere records willen uitvoeren, 
dan kan je gebruik maken van Formulieren binnen de formulieren kan je 
dan ook evt gebruik maken van macro's.Dan  is het niet nodig om elke 
keer een insert statement te typen.


Het blijft wat SQL betreft altijd wel een beetje zoeken hoe e.e.a. 
precies werkt.
Documentatie voor HSQLDB kan je hier vinden: 
http://hsqldb.org/web/hsqlDocsFrame.html


Voor wat betreft het updaten van een record vanuit een andere tabel vond 
ik deze post:


https://ask.libreoffice.org/t/how-to-update-fields-in-base-from-another-table/20527

Ik heb het niet getest, maar het zou kunnen werken.

of anders deze:

https://ask.libreoffice.org/t/updating-a-table-field-with-data-from-another-table/27989

aub de volgende keer via de lijst beantwoorden, dan kunnen anderen ook 
profijt van hebben...


mvg,

Rob



On 02-04-2023 20:25, Ivo Raepsaet wrote:


Dag Rob,

Dank voor info. Ik heb inderdaad  HSQLDB.
Kan je me een suggestie doen. Welke database zou ik dan gebruiken om 
"normale" sql instructies te kunnen gebruiken?
Ik las dat ik kon verbinden met een mySQL database. Weet je wat ik 
hiervoor moet doen om een mySQL database op te starten? Of is dat geen 
goed idee?


Groeten, Ivo

Op 2/04/2023 om 15:44 schreef Rob Westein:


Hi Ivo,

De gebruikte database staat onderaan het scherm wanneer Base is geopend.

mvg,
Rob Westein

On 01-04-2023 19:18, Ivo Raepsaet wrote:

Dag Rob,

Dank voor je antwoord. Waar kan ik vinden welke db ik heb? Ik 
vermoed dat ik de standaard genomen heb en dus een HSQLDB heb. Maar 
zeker ben ik dat niet.


Groeten, Ivo

Op 1/04/2023 om 15:25 schreef Rob Westein:

Hallo Ivo,

Welke database gebruik je?
Tussen de diverse databases bestaan wat syntax verschillen nl.

Zo is het in HSQLDB (standaard database als je een nieuwe .ODB 
aanmaakt) niet toegestaan om meerdere records aan te maken in 1 
INSERT opdracht.


mvg,
Rob Westein


On 31-03-2023 10:21, Ivo Raepsaet wrote:

Beste,

LO versie 7.1.2.2

hulp gezocht bij update van veld info door info die in een andere 
tabel te vinden is.


Probleem:
Ik wil in LO-base. waarden in een tabel aanpassen.
Maar niet door een vaste waarde zoals "fiets" of 1234 maar door 
inhoud vanuit een andere tabel

waarbij er een link is via eenzelfde ID.

create table persoon as p
(IDpersoon int, GSM varchar(13), primary key(IDpersoon));

insert into table persoon values
(1, '0499228833'),
(2, '0492 84 22 33'),
(3, '0422 33 44 86'),
(4, '0428885523');

create table nieuw as n
(IDpersoon int, GSM varchar(13), primary key (IDpersoon));

insert into table persoon values
(1, '0499 22 88 33'),
(4, '0428 88 55 23');

Ik dacht dat dit kon met een sql als volgt, maar het lukt niet. 
Kan iemand helpen? Dank vooraf.


update persoon as p
set GSM=n.GSM
inner join nieuw as n
on p.IDpersoon=n.IDpersoon

probleem 1:
meerdere records tegelijk invoeren lukt niet.

insert into table persoon
(IDpersoon, GSM)
values(
1, '0499228833'),
(2, '0492 84 22 33'),
(3, '0422 33 44 86'),
(4, '0428885523');

lukt wel:
insert into table persoon
(IDpersoon, GSM)
values(
1, '0499228833');

insert into table persoon
(IDpersoon, GSM)
values(2, '0492 84 22 33')
;

insert into table persoon
(IDpersoon, GSM)
values(3, '0422 33 44 86');

insert into table persoon
(IDpersoon, GSM)
values(4, '0428885523');

Wat kan de reden zijn dat ',' tussen twee values niet wordt aanvaard?

===
probleem2:
de inhoud voor set kan niet met een kolom zoals NIEUW.GSM gelinkt 
worden. Enkel met een expliciete waarde zoals "test" of 1234.


Waarom kan dit niet?

===
Probleem 3:
update set instructie laat blijkbaar geen inner join toe.
Hoe moet het dan wel?

Dank vooraf. Groeten, Ivo



--
Ik gebruik LibreOffice - het gratis, vrije en open source kantoor 
pakket:https://www.libreoffice.org
Respecteert uw privacy en geeft u de controle over uw gegevens terug


--
Ik gebruik LibreOffice - het gratis, vrije en open source kantoor 
pakket:https://www.libreoffice.org
Respecteert uw privacy en geeft u de controle over uw gegevens terug

--
Unsubscribe instructions: E-mail to users+unsubscr...@nl.libreoffice.org
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/nl/users/
Privacy Policy: https://www.documentfoundation.org/privacy


[nl-users] hulp gezocht bij update van veld info door info die in een andere tabel te vinden is.

2023-03-31 Berichten over hetzelfde onderwerp Ivo Raepsaet

Beste,

LO versie 7.1.2.2

hulp gezocht bij update van veld info door info die in een andere tabel 
te vinden is.


Probleem:
Ik wil in LO-base. waarden in een tabel aanpassen.
Maar niet door een vaste waarde zoals "fiets" of 1234 maar door inhoud 
vanuit een andere tabel

waarbij er een link is via eenzelfde ID.

create table persoon as p
(IDpersoon int, GSM varchar(13), primary key(IDpersoon));

insert into table persoon values
(1, '0499228833'),
(2, '0492 84 22 33'),
(3, '0422 33 44 86'),
(4, '0428885523');

create table nieuw as n
(IDpersoon int, GSM varchar(13), primary key (IDpersoon));

insert into table persoon values
(1, '0499 22 88 33'),
(4, '0428 88 55 23');

Ik dacht dat dit kon met een sql als volgt, maar het lukt niet. Kan 
iemand helpen? Dank vooraf.


update persoon as p
set GSM=n.GSM
inner join nieuw as n
on p.IDpersoon=n.IDpersoon

probleem 1:
meerdere records tegelijk invoeren lukt niet.

insert into table persoon
(IDpersoon, GSM)
values(
1, '0499228833'),
(2, '0492 84 22 33'),
(3, '0422 33 44 86'),
(4, '0428885523');

lukt wel:
insert into table persoon
(IDpersoon, GSM)
values(
1, '0499228833');

insert into table persoon
(IDpersoon, GSM)
values(2, '0492 84 22 33')
;

insert into table persoon
(IDpersoon, GSM)
values(3, '0422 33 44 86');

insert into table persoon
(IDpersoon, GSM)
values(4, '0428885523');

Wat kan de reden zijn dat ',' tussen twee values niet wordt aanvaard?

===
probleem2:
de inhoud voor set kan niet met een kolom zoals NIEUW.GSM gelinkt 
worden. Enkel met een expliciete waarde zoals "test" of 1234.


Waarom kan dit niet?

===
Probleem 3:
update set instructie laat blijkbaar geen inner join toe.
Hoe moet het dan wel?

Dank vooraf. Groeten, Ivo


--
Unsubscribe instructions: E-mail to users+unsubscr...@nl.libreoffice.org
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/nl/users/
Privacy Policy: https://www.documentfoundation.org/privacy