Campo Not null a condizione

gp75

Nuovo Utente
7 Gen 2020
7
0
1
Buonasera ho un db di anagrafica tra i vari campi ci sono:
"PersonaFisica" con indicazione SI/NO
"Cognome" Null
"Nome" Null
Vorrei che se nel campo PersonaFisica fosse presente SI i campi Cognome e Nome diventassero obbligatori, da applicazione che si collega al database ci riesco tramite codice di programmazione che si attiva nella maschera di inserimento dati, ma preferirei risolvere a monte, esiste un altro modo ?
Grazie
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
ma preferirei risolvere a monte, esiste un altro modo ?
Se i dati ancora non sono presenti nel DB come fai a rendere obbligatori i fields? Giusto per curiosità....

I vincoli si applicano con una base dati esistenti, no su dati potenziali (a livello di DBMS).
 

gp75

Nuovo Utente
7 Gen 2020
7
0
1
Ho risolto inserendo il seguente vincolo
SQL:
ALTER TABLE clienti
ADD CHECK (IF(PERSONAFISICA = 'SI',  LENGTH(NOME_C) > 1, LENGTH(NOME_C) = 0));
Grazie
 

gp75

Nuovo Utente
7 Gen 2020
7
0
1
Ciao, puoi spiegarti meglio? anche se credo che continuerò ad effettuare la verifica direttamente dalla maschera da dove inserisco i dati, dove una msgbox mi avvisa dell'errore non facendomi proseguire e settando il focus sul campo da compilare.
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
Vorrei che se nel campo PersonaFisica fosse presente SI i campi Cognome e Nome diventassero obbligatori
vincoli si applicano con una base dati esistenti, no su dati potenziali

Ciao, puoi spiegarti meglio?
Quello che hai scritto non obbliga minimamente l'inserimento del nome e del cognome, in quanto agisce sull'insert/update del DB, ed appunto il tuo vincolo agisce in modo silente nell'inserimento del record, senza dare nessun feedback al Client.

L'alter table che hai scritto, serve a tutt'altro, a completare dei dati nel database con valori booleani e/o calcoli, non a imporre l'inserimento un determinato field...

Parli di maschera, ma non siamo su access...

Se avessi detto "access" concordo con te, in quanto è possibile recuperare tali eccezioni e compilare a dovere il tutto, ma con mysql NO.

Ammettendo la correttezza di ciò che hai fatto... Hai controllato tramite un "try" che l'inserimento viene effettuato, e nel caso di mancato inserimento recuperi e gestisci l'errore?
Se la risposta è no, fallo da codice!
 

gp75

Nuovo Utente
7 Gen 2020
7
0
1
Non mi obbliga all'inserimento del cognome e del nome ma non viene effettuato l'insert, non parlo di access ma di libreoffice connesso ad un db mysql(su lb si chiamano formulari e non maschere) e si riesce a recuperare le eccezioni e ad intervenire.
 

gp75

Nuovo Utente
7 Gen 2020
7
0
1
mi scuso io per non aver esposto in maniera completa il quesito.
Grazie per l'attenzione.
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Valore del campo id maggiore di 9999 MySQL 0
S da casella di testo a campo tabella Database 0
M Vendo il mio sito web teknosurfng.com, che trasmette nel campo della tecnologia Compravendita siti e domini 0
F errore 1062 su campo nuovo MySQL 4
R Aprire maschera con Openform filtrando un campo testuale con un valore recuperato da un'altra maschera MS Access 10
D Visualizzazione pagina basata sul valore di un campo del database PHP 2
A pulsante di update campo mysql con javascript Javascript 2
M Creare un campo input select quantità di un numero intero prelevato dal db PHP 3
D riempire campo inserendo un valore in un altro campo PHP 2
S riflettere valore di campo input range in live Javascript 0
P Ricerca campo data PHP 1
M Aggiornare stesso campo in due tabelle PHP 0
U Campo vuoto data errore Fatal error: PHP 2
Alex_70 Aggiornare campo da un altro campo PHP 16
F Steps campo input field Javascript 1
N Chiave Primaria in Campo Calcolato Windows e Software 1
I Focus su un campo Javascript 9
Alex_70 Nascondere label tab se campo vuoto PHP 2
G Impostare suggerimenti campo text di un form Javascript 2
Shyson Inserire placeholder nel campo cerca PHP 5
B Campo ricerca domini HTML e CSS 4
D verifica codice fiscale persona fisica /aziendale stesso campo HTML e CSS 1
M [PHP] Compilare automaticamente il campo data PHP 5
M [PHP] Problemi di salvataggio su campo calcolato PHP 0
M [PHP] Salvare campo di una tabella in una variabile PHP 14
M [MySQL] CREARE UN LINK SU UN DETERMINATO CAMPO DI UNA TABELLA RISULTATO DI UNA QUERY SQL MySQL 3
D [ASP] Leggere Campo decimal MYSQL Classic ASP 1
S [ASP] SALVARE VALORE SELECT OPTION SU CAMPO TABELLA ACCESS Classic ASP 9
M [PHP] Drop down in campo select PHP 1
elpirata [RISOLTO][Javascript] Datapicker e autocompletamento campo input Javascript 2
elpirata [RISOLTO][Mysql] Contare le occorrenze in un campo tipo varchar MySQL 2
elpirata [MYSQL] Schedulare evento per update del campo data su tabella MySQL 0
G Campo HTML input file con jQuery jQuery 0
D [MS Access] problemi con inserimento campo in una maschera MS Access 6
Arcadia [MS Access] Focus su campo specifico MS Access 1
A [MS Access] Pulsante per inserire allegati in campo maschera MS Access 0
L [Javascript] Drag and drop. Aggiornamento Campo Javascript 2
A [MySQL] Ottenere più risultati in un unico campo MySQL 7
A [MS Access] Somma Campi se in altro campo presente un determinato testo MS Access 1
Monital [PHP]Far riconoscere stringa o numerico epr creazione campo tabella PHP 6
Monital Funzione php e campo database come variabile PHP 6
C [PHP] Creare un Pulsante che ricopia valori di un campo in altro record PHP 4
G [Javascript] Campo a comparsa di select Javascript 0
A [Javascript] Somma di un campo in una tabella dinamica Javascript 0
L [PHP] case then e campo non riconosciuto PHP 0
A [PHP] Modificare campo database in base alla scelta dell'utente PHP 2
C [PHP] Estrapolare solo l'anno da una data di nascita inserita in un campo PHP 8
Store creazione campo search in php PHP 1
A [MySQL] riordinare campo criptato MySQL 1
M [PHP] valore tabella in campo form PHP 1

Discussioni simili