TEST LABORATORIO DI INFORMATICA CLASSE 5C Informatica 28 Gennaio 2006 ALUNNO:_________________________________ Il test è composto da 30 domande: 30 a risposta multipla (+3 punti risposta esatta; -1 punto risposta errata; zero punti se non si risponde) A cosa serve avere più indici su una stessa tabella ? Per Per Per Per definire relazioni che coinvolgono più campi. aiutare il DBMS a cercare i dati della chiave primaria. definire regole di convalida per i campi indice. aiutare il DBMS a cercare i dati con maggiore efficienza. Con che strumento, in Access, si collegano fra di loro le tabelle ? Chiave Primaria. Indici. Relazioni. Integrità Referenziale. In Access quando si usa il tipo dato "Contatore" ? Quando si vuole avere un valore univoco per ogni nuovo record creato. Quando, per sicurezza, si vuole avere un altro campo chiave oltre a quello definito. Quando si vuole gestire il numero totale dei record presenti nella tabella. Quando si vuole avere la creazione automatica delle chiavi. Quando, in Access, un campo testo supera i 255 caratteri che altro tipo di dato si deve utilizzare ? Oggetto OLE. Memo. Collegamento Ipertestuale. Testo. Sono date le due relazioni: i) Libri ------- Prestito-Persona; ii) Squadra-------- Giocatore (riferita ad un solo anno senza cambio di squadra) Quali tra le seguenti risposte rappresenta la definizione corretta dei due tipi di relazione? 1:∞; 1:∞; ∞:∞; ∞:∞; 1:∞; ∞:∞; ∞:∞; 1: ∞; In una ListBox qual'è il codice corretto per poter inserire 10 elementi con valori che vanno da 1..10? for for for for (int (int (int (int y y y y =1; =1; =1; =1; y y y y <=10; <=10; <=10; <=10; y++) y++) y++) y++) { { { { ListBox1.AddItem y; } ListBox1->Items->Add(y); ListBox1(y) = i ListBox1 = Listbox1 + y } } } Qual'è il primo evento eseguito quando si lancia (RUN) un programma in B.C++B. 3.1? TForm1::FormActivate() TForm1::FormLoad() TForm1::LoadFormProject() TForm1::FormCreate() Durante la programmazione di un progetto visuale il B.C++B. 3.1 crea molti file con estensioni diverse. Quali sono le estensioni che mi permettono la modifica del progetto? I I I I File File File File con con con con estensioni estensioni estensioni estensioni Bpr, Bpr, Bpr, Bpr, Exe, Obj. Cpp, h, Dfm. Cpp, Obj, Res. Exe, Cpp, Frm. Cosa implica, in Access97, la selezione di "Applica Integrità Referenziale" e "Aggiorna Record Correlati a Catena" e "Elimina Record Correlati a Catena". Impedisce (sicurezza dei database) la variazione delle chiave primaria e delle chiavi esterne. Aggiorna/Elimina automaticamente tutti i valori delle chiave esterne se si cambia/cancella il valore di una chiave primaria. Non aggiorna/elimina i valori delle chiavi esterne quando si cambia/cancella il valore della chiave primaria. Aggiorna ma non elimina (sicurezza dei dati) i valori delle chiavi esterne quando si cambia la chiave primaria. A cosa serve, in B.C++B. 3.1, il controllo GroupBox ? Consente Consente Consente Consente la la di di gestione di più form simultaneamente. gestione di file AVI (filmati). raggruppare oggetti Image per ottenere un effetto d'animazione. raggruppare oggetti RadioButton rendendoli indipendenti ed identificabili. E' possibile, in Access97, avere due chiavi primarie distinte in una stessa tabella ? Si. No. Si, ma i campi delle due chiavi devono essere entrambi di tipo contatore. Si, ma un campo delle due chiavi primarie deve essere di tipo contatore. Dato il seguente schema entità/relazione: Qta ARTICOLI Cod_art Descrizione Giacenza N fornisce M FORNITORI Cod_forn Indirizzo Part_Iva Quale tra i seguenti schemi relazionali lo traduce correttamente? ARTICOLI(Cod_art, Descrizione, Giacenza) FORNITORI(Cod_forn, Indirizzo, Part_Iva) ARTICOLI(Cod_art, Descrizione, Giacenza) FORNITORI(Cod_forn, Indirizzo, Part_Iva) FORNISCE(Cod_art, Cod_forn, Qta) ARTICOLI(Cod_art, Descrizione, Giacenza) FORNITORI(Cod_forn, Indirizzo, Part_Iva) FORNISCE(Cod_art, Cod_forn) ARTICOLI(Cod_art, Descrizione, Giacenza, Cod_forn, Qta) FORNITORI(Cod_forn, Indirizzo, Part_Iva) Cosa si può inserire impostando questi valori sulla proprietà "Valido se": ">#01/01/90# Or (>#01/01/50# And <#01/01/60#)" Si può inserire la data odierna. Si possono inserire date prima del 01/01/1950. Non si possono inserire date tra il 02/01/1950 e il 31/12/1959. Si possono inserire date comprese tra 02/01/1960 e 01/01/1990. Che cosa è successo se il B.C++B.3.1 riporta questo tipo di errore? [LinkerError] Unresolved external 'TForm1::Button1Click(System::TObject*) __fastcall Abbiamo scritto in maniera errata il nome dell’oggetto Button1 Il linker non trova la funzione Button1Click il cui prototipo è stato definito nella classe TForm1 Il linker ci informa che non è stata definita la classe TForm1. Abbiamo scritto in maniera errata il nome della classe:non è “TForm1” ma “Form1”. Che cosa permettono le seguenti linee di codice in un progetto visuale di B.C++B.3.1 ? void __fastcall TForm1::Edt_bKeyPress(TObject *Sender, char &Key) { if (((Key < 48) || (Key >57)) && (Key != 13)) Key = 0; } P.S. I numeri 0..9 nel codice ASCII sono compresi tra 48..57. Inserire Inserire Inserire Inserire solo solo solo solo cifre e accettare il carattere CR (Invio). lettere e accettare il carattere CR (Invio). cifre e non accettare il carattere CR (Invio). lettere e non accettare il carattere CR (Invio). Quando, in Access97, si utilizza la scheda “Ricerca” (Controllo “Casella di Riepilogo”) durante la definizione dei campi in struttura tabella ? Quando Quando Quando Quando si si si si devono devono devono devono indicare valori combinati. indicare i valori della chiave esterna. indicare i valori della chiave primaria della stessa tabella. inserire valori esterni al database. Come viene gestito il valore “Null” in Access? Si gestisce come la stringa vuota “”. Si può confrontare solo con valori “Null”. “Null” non è uguale a nessun altro valore, neppure ad un altro “Null”. “Null” è un tipo di valore inesistente. Quando inseriamo dati in una tabella è possibile aggiornare in input il valore di un campo di tipo contatore ? Si. No. Si, però si deve impostare la proprietà modifica su “Si”. Si, però si deve disabilitare l’aggiornamento automatico. Un record di un database è: Una riga di una tabella, che contiene dati diversi relativi allo stesso soggetto. Una colonna di una tabella in cui sono contenuti dati omogenei. Tutte le colonne che contengono dati numerici. Tutte le righe di una tabella che contengono dati esclusivamente testuali. Cosa comporta l’impostazione della proprietà “Richiesto” sul valore “Si” durante la definizione dei campi in struttura tabella Immissione richiesta di un valore tramite una casella di riepilogo. Immissione facoltativa di un valore per quel determinato campo. Immissione richiesta di un valore tramite una finestra d’input. Immissione obbligatoria di un valore per quel determinato campo. Perché per assegnare un valore alla proprietà di un oggetto (es. Label1->Caption = “Hello World”) si utilizza l’operatore freccia ? Non si utilizza l’operatore freccia ma l’operatore . (punto) che è lo standard per la programmazione visuale. Perché è l’operatore standard della programmazione visuale. Perché nella classe della form i vari oggetti dell’interfaccia sono dichiarati come puntatori. Nessuna delle precedenti risposte è corretta. Un ambiente di sviluppo RAD permette: uno sviluppo rapido di applicazioni una programmazione orientata agli oggetti una compilazione in ambiente windows un’esecuzione del programma sotto qualsiasi Sistema Operativo. Supponendo di avere le tabelle: Aziende(Codice, Denominazione, Indirizzo, Comune, Settore) Dipendenti(Matricola, Cognome, Nome, Professione, Reddito, CodAzienda) quale delle seguenti frasi SQL consente di ottenere cognome, nome e reddito (in ordine crescente) dei dipendenti di una data azienda ? SELECT Cognome,Nome, Reddito FROM Aziende, Dipendenti WHERE Codice= CodAzienda GROUP BY Reddito; SELECT Cognome, Nome, Reddito FROM Dipendenti WHERE CodAzienda = [Inserire il codice dell’Azienda] ORDER BY Reddito; SELECT (*) FROM Aziende, Dipendenti WHERE Codice= CodAzienda AND Cognome = [Inserire il Cognome del dipendente] AND Nome = [Inserire il nome del dipendente]; SELECT Cognome,Nome, Indirizzo, Comune FROM Aziende, Dipendenti WHERE Codice= CodAzienda AND Denominazione = [Inserire il nome dell’azienda]; Nel modello relazionale, una relazione è: un’associazione tra tabelle un’istanza dell’entità l’insieme degli attributi dell’entità una tabella Che cosa è un Web Server ? E’ E’ E’ E’ un un un un programma che si occupa della gestione della rete Internet computer Host della rete Internet programma che gestisce le richieste che gli utenti fanno sulla porta TCP/IP 80 programma che serve per la realizzazione di siti web Tabella: Dipendente(coddip, cognome, nome, livello, datastipendio, stipendio) Si vogliono estrarre tutti i dipendenti con stipendio maggiore di 2000 euro. SELECT COUNT(stipendio) FROM dipendente WHERE stipendio > 2000; SELECT cognome, nome, stipendio FROM dipendente WHERE coddip = codiceazienda AND stipendio > 2000; SELECT cognome, nome, stipendio FROM dipendente WHERE coddip = [inserisci il codice dipendente] AND stipendio > 2000; SELECT cognome nome stipendio FROM dipendente WHERE stipendio > 2000; Che cosa significa il seguente codice: Class TForm1 : public TForm { _ published: //IDE-managedComponents TButton *Button1; void_ fastcall Button1Cick(TObject *Sender) ; vold_ fastcall FormDestroy(TObject *Sender) ; private: // User declarations public: // User decarations _ fastcall Tf orm1(TComponent* Owner) ; }; è la classe che gestisce la form ed i suoi oggetti creata automaticamente dal compilatore C++ B.3. è la libreria di classi da utilizzare quando si programma in ambiente visuale con il compilatore C++ B.3. è l’intestazione del file di progetto creato dal compilatore C++ B.3. quando si programma ad eventi. è il file di inclusione (#include <tform1.h>) che ci permette la programmazione in ambiente windows con il compilatore C++ B. 3 Che cosa è MySQL ? DB (database) DBC (database client) DBMS (database managemant system) DBFES (database front end server) Che cosa è PHPMYADMIN ? Front End Web (o programma client) per MySQL Programma Amministratore di MySQL Il Programma che gestisce il Server di MySQL Il Programma che interpreta la gestione PHP di MySQL Dato il seguente schema entità / relazione: Quale tra i seguenti schemi relazionali lo traduce correttamente ? Appartamento(CodApp, NumeroVani, Superficie, Indirizzo, Quota); Persone(CodPersona, Cognome, Nome, Indirizzo, Telefono); HaVersato(CodPersona, CodApp, DataVersamento, Importo); Appartamento(CodApp, NumeroVani, Superficie, Indirizzo, Quota); Persone(CodPersona, Cognome, Nome, Indirizzo, Telefono); HaVersato(DataVersamento, Importo); Appartamento(CodApp, NumeroVani, Superficie, Indirizzo, Quota, CodPersona); Persone(CodPersona, Cognome, Nome, Indirizzo, Telefono, CodApp); HaVersato(DataVersamento, Importo); Appartamento(CodApp, NumeroVani, Superficie, Indirizzo, Quota, DataVersamento); Persone(CodPersona, Cognome, Nome, Indirizzo, Telefono, DataVersamento); HaVersato(DataVersamento, Importo);