Page d'Accueil

Saisie de données et entretien de disque

 

Détails sur la création record

 

La nullité d'un champ

En exécutant la saisie de données, vous pouvez s'attendre à ce que l'utilisateur saute n'importe quelle colonne dont la valeur n'est pas disponible et mouvement au prochain. Dans certains cas, vous pouvez requis que la valeur d'une colonne soit indiquée avant que l'utilisateur puisse passer. Si vous créez la table dans la vue de conception, pour exiger que l'utilisateur écrivent une valeur pour une colonne particulière, dans la section inférieure de la fenêtre, utilisation la propriété booléenne priée.

Par défaut, la valeur de la propriété exigée est placée au non, qui signifie que l'utilisateur ne doit pas fournir une valeur pour la colonne afin de créer le disque. Si vous voulez avoir besoin de la valeur, placer cette propriété à oui.

Si vous créez programmatically la colonne en utilisant le SQL, si vous voulez laissez l'utilisateur ajouter ou ne pas ajouter une valeur pour la colonne, dactylographier le mot-clé NUL du bon côté du type de données. Si vous voulez avoir besoin d'une valeur pour la colonne, dactylographier PAS LA NULLE. Voici les exemples :

Private Sub cmdTable_Click()
    DoCmd.RunSQL "CREATE TABLE Contractors(" & _
                 "FullName TEXT NOT NULL, " & _
                 "AvailableOnWeekend LOGICAL NULL, " & _
                 "OwnsACar BIT, " & _
                 "CanShareOwnCar YESNO);"
End Sub

Dans ce cas-ci, en exécutant la saisie de données, l'utilisateur doit toujours fournir une valeur pour la colonne de FullName afin de créer un disque. Si vous omettez pour indiquer la nullité d'un champ, c'est NULLE supposée.

Étude pratique : Exigence des valeurs de champ

  1. Commencer le Microsoft Access et ouvrir la base de données Shop1 automatique de parc d'université à partir de la leçon précédente
  2. Dans la fenêtre de base de données, cliquer le bouton de Tableaux. Droit-cliquer RepairOrders et cliquer la vue de conception
  3. Cliquer CustomerName et dans la section inférieure, placent la propriété requise à oui

Auto-incrément

Quand nous étudions des rapports, nous verrons que, sur une table, chaque disque devrait être uniquement identifié. Ceci devrait être le cas même si beaucoup de disques semblent avoir les mêmes valeurs pour chaque colonne. Nous avons vu déjà que vous pouvez avoir besoin de que l'utilisateur fournissent une valeur pour chaque disque d'une certaine colonne. Dans certains cas, l'utilisateur ne peut pas avoir la bonne valeur pour une colonne mais alors, le disque devrait être créé, même si il est provisoire. Pour résoudre ce type de problème et de beaucoup d'autres, vous pouvez créer une colonne qui fournit sa propre valeur. D'une part, pour créer une colonne spéciale qui peut être employée pour identifier uniquement chaque disque, vous pouvez appliquer un type de données de nombre entier à lui mais demander le moteur de base de données pour fournir automatiquement une valeur numérique pour la colonne.

Si vous créez une colonne dans la vue de conception d'une table, pour permettre au moteur de base de données de fournir une valeur pour la colonne, vous pouvez indiquer son type de données comme AutoNumber. Sur une table, seulement une colonne peut avoir le type de données d'AutoNumber.

Si vous créez programmatically la colonne en utilisant le SQL, vous pouvez placer son type de données à CONTRE- ou à AUTOINCREMENT. Seulement une colonne d'une table peut avoir un de ces types de données. Voici un exemple :

Private Sub cmdTable_Click()
    DoCmd.RunSQL "CREATE TABLE Contractors(" & _
                 "ContractorNo COUNTER, " & _
                 "AvailableOnWeekend LOGICAL NULL, " & _
                 "OwnsACar BIT, " & _
                 "CanShareOwnCar YESNO);"
End Sub

Par défaut, quand vous appliquez le COMPTEUR ou le type de données AUTOINCREMENT, quand l'utilisateur crée le premier disque, le champ sous la valeur s'incrémentante automatiquement reçoit un certain nombre de 1. Si l'utilisateur crée un deuxième disque, la valeur s'incrémentante automatiquement reçoit un certain nombre de 1, et ainsi de suite. Si vous voulez, vous pouvez noter premier recevoir un nombre autre que 1. Vous pouvez également lui faire l'incrément à une valeur autre que 1. Pour appliquer ce dispositif, le COMPTEUR et les types AUTOINCREMENT emploient une graine en tant que leurs parenthèses : COMPTEUR (x, y) ou AUTO-INCRÉMENT (x, y). La valeur de x représente la valeur commençante des disques. La valeur de y indique combien serait ajouté à une valeur pour obtenir le prochain. Voici un exemple :

Private Sub cmdTable_Click()
    DoCmd.RunSQL "CREATE TABLE Contractors(" & _
                 "ContractorNo AUTOINCREMENT(5, 10), " & _
                 "AvailableOnWeekend LOGICAL NULL, " & _
                 "OwnsACar BIT, " & _
                 "CanShareOwnCar YESNO);"
End Sub

Tailles de champs

En passant en revue les types de données disponibles pour des champs, nous avons vu que certains d'entre eux pourraient employer un type de données corde-basé, à savoir TEXTE, CHAR, ou VARCHAR. Par défaut, dans la vue de conception d'une table et en créant une colonne, si vous placez son type de données au texte, il peut tenir (seulement) 50 caractères. Si vous créez programmatically une table et vous placez le type de données d'une colonne au TEXTE, au CHAR, ou au VARCHAR, il est fait pour tenir 255 caractères. Heureusement, vous pouvez commander le nombre maximum des caractères qui seraient permis dans une colonne pendant la saisie de données.

Si vous créez une table dans la vue de conception, pour commander le nombre de caractères qu'un utilisateur peut écrire sous une colonne, après réglage de son type de données au texte, dans la section inférieure de la fenêtre, utilisation la propriété de taille de champ d'exercer cette commande. Vous pouvez placer une valeur de 1 à 255.

Si vous créez programmatically une colonne corde-basée en utilisant la bibliothèque des programmes résultants de Microsoft Access ou DAO, pour indiquer le nombre maximum des caractères qu'il peut se tenir, fournir un troisième argument à la méthode de CreateField () et écrire le nombre désiré. Voici un exemple pour une colonne créée en utilisant la bibliothèque des programmes résultants de Microsoft Access :

Private Sub cmdAddColumn_Click()
    Dim curDatabase As Object
    Dim tblStudents As Object
    Dim colFullName As Object

    ' Get a reference to the current database
    Set curDatabase = CurrentDb
    ' Get a reference to a table named Customers
    Set tblStudents = curDatabase.TableDefs("Students")
    
    Set colFullName = tblCustomers.CreateField("FullName", DB_TEXT, 60)
    tblCustomers.Fields.Append colFullName
End Sub

Si vous créez la table en utilisant le SQL, pour indiquer le nombre de caractères de la colonne corde-basée, ajouter les parenthèses au TEXTE, au CHAR, ou aux types de données de VARCHAR, et dans les parenthèses, écrivent le nombre désiré. Voici les exemples :

Private Sub cmdTableCreator_Click()
    Dim conExercise As ADODB.Connection
    Dim strSQL As String
    
    Set conExercise = New ADODB.Connection
    conExercise.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                      "Data Source='C:\Programs\Exercise1.mdb'"
    
    strSQL = "CREATE TABLE Contractors (" & _
             "DateHired DateTime," & _
             "EmplNumber Text(6)," & _
             "Dept int," & _
             "FirstName VarChar(20)," & _
             "LastName varchar(20)," & _
             "Address varchar(50)," & _
             "City VARCHAR(40)," & _
             "State CHAR(2));"
    
    conExercise.Execute strSQL
    
    conExercise.Close
    Set conExercise = Nothing
End Sub

Étude pratique : Réglage des tailles de champ

  1. Placer les tailles de champs comme suit :
      
    Nom de champ Type de données Taille de champ Format
    CustomerName   80  
    CustomerAddress   80  
    CustomerCity   50  
    CustomerState   2  
    CustomerZIPCode   20  
    CarMakeModel   40  
    CarYear   8  
    Part1Name   60  
    Part1UnitPrice Nombre Double Fixe
    Part1Quantity Nombre Byte  
    Part1SubTotal Nombre Double Fixe
    Part2Name   60  
    Part2UnitPrice Nombre Double Fixe
    Part2Quantity Nombre Byte  
    Part2SubTotal Nombre Double Fixe
    Part3Name   60  
    Part3UnitPrice Nombre Double Fixe
    Part3Quantity Nombre Byte  
    Part3SubTotal Nombre Double Fixe
    Part4Name   60  
    Part4UnitPrice Nombre Double Fixe
    Part4Quantity Nombre Byte  
    Part4SubTotal Nombre Double Fixe
    Part5Name   60  
    Part5UnitPrice Nombre Double Fixe
    Part5Quantity Nombre Byte  
    Part5SubTotal Nombre Double Fixe
    JobPerformed1   60  
    JobPrice1 Nombre Double Fixe
    JobPerformed2   60  
    JobPrice2 Nombre Double Fixe
    JobPerformed3   60  
    JobPrice3 Nombre Double Fixe
    JobPerformed4   60  
    JobPrice4 Nombre Double Fixe
    JobPerformed5   60  
    JobPrice5 Nombre Double Fixe
    TotalParts Nombre Double Fixe
    TotalLabor Nombre Double Fixe
    TaxRate Nombre Double Pour cent
    TaxAmount Nombre Double Fixe
    RepairTotal Nombre Double Fixe
    RepairDate Date/heure Date moyenne  
    TimeReady Date/heure Temps moyen  
  2. Économiser et fermer la table

Masquer une valeur

Un masque est une technique d'indiquer comment une valeur montrerait à l'utilisateur. Ceci dépend du type de valeur, des arrangements de langue dans le panneau de commande, et probablement des habitudes des utilisateurs. Le masque employé par les valeurs d'une colonne est placé dans le domaine de masque d'entrée dans la section inférieure de la table ou de la fenêtre de propriétés d'une forme, dans la vue de conception.

Étude pratiqueÉtude pratique : Masquer les champs

  1. Rouvrir la base de données GCS2
  2. Dans la section supérieure de la vue, cliquer CustomerPhone
  3. Dans la section inférieure de la vue, cliquer le masque d'entrée pour choisir sa valeur et pour serrer l'effacement pour enlever le masque de défaut
  4. Rouvrir la base de données Shop1 automatique de parc d'université 
  5. Ouvrir la table de RepairOrders dans la vue de conception et cliquer RepairDate
  6. Dans la section inférieure de la fenêtre, placer la propriété de masque d'entrée à 99 \ - >L<LL \ - 00 ; 0 ; _
  7. Dans la section supérieure de la fenêtre, cliquer TimeReady
  8. Dans la section inférieure de la fenêtre, placer la propriété de masque d'entrée à 09:00 \ >LL ; 0 ; _
  9. Économiser et fermer la table
  10. Dans la fenêtre de base de données, cliquer le bouton de formes
  11. Droit-cliquer NewRepairOrder et cliquer la vue de conception
  12. Changer les propriétés de quelques commandes comme suit :
     
    Nom Format
    txtPart1UnitPrice Fixe
    txtPart1Quandity Nombre général
    txtPart1SubTotal Fixe
    txtPart2Name  
    txtPart2UnitPrice Fixe
    txtPart2Quandity Nombre général
    txtPart2SubTotal Fixe
    txtPart3Name  
    txtPart3UnitPrice Fixe
    txtPart3Quandity Nombre général
    txtPart3SubTotal Fixe
    txtPart4Name  
    txtPart4UnitPrice Fixe
    txtPart4Quandity Nombre général
    txtPart4SubTotal Fixe
    txtPart5Name  
    txtPart5UnitPrice Fixe
    txtPart5Quandity Nombre général
    txtPart5SubTotal Fixe
       
    txtJobPerformed1  
    txtJobPrice1 Fixe
    txtJobPerformed2  
    txtJobPrice2 Fixe
    txtJobPerformed3  
    txtJobPrice3 Fixe
    txtJobPerformed4  
    txtJobPrice4 Fixe
    txtJobPerformed5  
    txtJobPrice5 Fixe
       
    txtTotalParts Devise
    txtTotalLabor Devise
    txtTaxRate Pour cent
    txtTaxAmount Devise
    txtRepairTotal Devise
    txtRepairDate Date moyenne
    Masque d'entrée : 99 \ - >L<LL \ - 00 ; 0 ; _
    txtTimeReady Temps moyen
    Masque d'entrée : 09:00 \ >LL ; 0 ; _
  13. Économiser et fermer la forme

Valeurs par défaut

 

Introduction

Une valeur par défaut permet à une colonne d'employer une valeur qui est censée être commune à la plupart des cellules d'une colonne particulière. La valeur par défaut peut être placée comme valeur constante ou elle peut employer une fonction qui s'adapterait au temps où la valeur est nécessaire.

Étude pratiqueÉtude pratique : Réglage des valeurs par défaut

  1. Rouvrir la base de données GCS2 et ouvrir la forme de NewCleaningOrder dans la vue de conception 
  2. Dans la section supérieure de la vue, cliquer CustomerPhone
  3. Dans la section inférieure de la vue, cliquer la valeur par défaut et le type « (000) 000-0000 »
  4. De la même manière, placer les valeurs par défaut des colonnes suivantes :
     
    Nom de champ Valeur par défaut
    CustomerPhone « (000) 000-0000 »
    UnitPriceShirts 1.25
    UnitPricePants 1.75
    Item1 « Aucun »
    Item2 « Aucun »
    Item3 « Aucun »
    Item4 « Aucun »
    TaxRate 0.0575
  5. Économiser la table
  6. Dans la fenêtre de base de données, cliquer les formes et double-cliquer CleaningOrders
  7. Droit-cliquer sa barre de titre et cliquer en forme de projet
  8. En utilisant la fenêtre de propriétés, placer les formats des commandes de Windows comme suit :
     
    Nom Format
    txtSubTotalShirts Devise
    txtSubTotalPants Devise
    txtSubTotalItem1 Devise
    txtSubTotalItem2 Devise
    txtSubTotalItem3 Devise
    txtSubTotalItem4 Devise
    txtCleaningTotal Devise
    txtTaxRate Pour cent
    txtTaxAmount Devise
    txtOrderTotal Devise
  9. Économiser la forme et la commuter à la vue de forme
  10. Écrire quelques disques et fermer la forme

Valeurs par défaut des expressions

Quand il vient à placer des valeurs par défaut, la table a de diverses limitations. Par exemple, si vous créez une table avec trois colonnes telles que FirstName, LastName, et FullName, évidemment vous pouvez vouloir que le FullName combine le prénom et le dernier nom mais donne toujours à l'utilisateur l'occasion de changer le résultat. Si vous écrivez une expression pour faire ceci dans la propriété de valeur par défaut de la colonne de FullName, vous n'obtiendriez pas le résultat prévu. Pour indiquer une valeur par défaut dans un scénario aimer celui-ci, vous devriez employer la forme ou rapporter qui montrera les valeurs. Heureusement, quand les valeurs sont changées sous la forme, la table serait également mise à jour.

Pour indiquer la valeur par défaut d'une colonne en utilisant une forme, vous pouvez écrire une expression qui serait appliquée si nécessaire.

Étude pratiqueÉtude pratique : Utilisation des expressions pour placer des valeurs par défaut

  1. Rouvrir la base de données GCS2
  2. Dans la section supérieure de la vue, cliquer CustomerPhone
  3. Dans la section inférieure de la vue, cliquer le masque d'entrée pour choisir sa valeur et pour serrer l'effacement pour enlever le masque de défaut
  4. Rouvrir la base de données Shop1 automatique de parc d'université 
  5. Ouvrir la table de RepairOrders dans la vue de conception et cliquer RepairDate
  6. Dans la section inférieure de la fenêtre, placer la propriété de masque d'entrée à 99 \ - >L<LL \ - 00 ; 0 ; _
  7. Dans la section supérieure de la fenêtre, cliquer TimeReady
  8. Dans la section inférieure de la fenêtre, placer la propriété de masque d'entrée à 09:00 \ >LL ; 0 ; _
  9. Économiser et fermer la table
  10. Dans la fenêtre de base de données, cliquer le bouton de formes
  11. Droit-cliquer NewRepairOrder et cliquer la vue de conception
  12. Changer les propriétés de quelques commandes comme suit :
     
    Nom Format Positions décimales Valeur par défaut
    txtCustomerName      
    txtCustomerAddress      
    txtCustomerCity      
    txtCustomerState      
    txtCustomerZIPCode      
    txtCarMakeModel      
    txtCarYear 0  
    txtProblemDescription      
    txtPart1Name      
    txtPart1UnitPrice Fixe   0
    txtPart1Quandity Nombre général 0 0
    txtPart1SubTotal Fixe   0
    txtPart2Name      
    txtPart2UnitPrice Fixe   0
    txtPart2Quandity Nombre général 0 0
    txtPart2SubTotal Fixe   0
    txtPart3Name      
    txtPart3UnitPrice Fixe    
    txtPart3Quandity Nombre général 0  
    txtPart3SubTotal Fixe   0
    txtPart4Name      
    txtPart4UnitPrice Fixe   0
    txtPart4Quandity Nombre général 0 0
    txtPart4SubTotal Fixe   0
    txtPart5Name      
    txtPart5UnitPrice Fixe   0
    txtPart5Quandity Nombre général 0 0
    txtPart5SubTotal Fixe   0
    txtJobPerformed1      
    txtJobPrice1 Fixe   0
    txtJobPerformed2      
    txtJobPrice2 Fixe   0
    txtJobPerformed3      
    txtJobPrice3 Fixe   0
    txtJobPerformed4      
    txtJobPrice4 Fixe   0
    txtJobPerformed5      
    txtJobPrice5 Fixe   0
    txtTotalParts Devise   0
    txtTotalLabor Devise   0
    txtTaxRate Pour cent   0.0775
    txtTaxAmount Devise   0
    txtRepairTotal Devise   0
    txtRepairDate Date moyenne
    Masque d'entrée : 99 \ - >L<LL \ - 00 ; 0 ; _
      =Date ()
    txtTimeReady Temps moyen
    Masque d'entrée : 09:00 \ >LL ; 0 ; _
      =Time ()
  13. Économiser la forme
  14. Créer un disque comme suit :
     
  15. Cliquer le bouton d'ordre de réparation de soumission
  16. Créer un autre ordre de réparation comme suit :
     
  17. Fermer la nouvelle forme d'ordre de réparation

Conclusion d'une valeur

 

Introduction

Considérer les disques dans la table suivante appelée Videos et ce fait partie d'une base de données appelée Video Collection :

Beaucoup d'informations sont absentes de cette table et quelques autres montrent une erreur. Comme les objets réguliers d'une base de données, des disques doivent être visités, changés, mis, et maintenus à jour. Le Microsoft Access fournit les moyens d'effectuer visuellement ces opérations. Quelques autres fois, vous pouvez les exécuter programmatically. La manière que vous procédez peut dépendre de votre résultat prévu, du comportement cherché, et de la bibliothèque vous voulez employer.

Recherche d'une valeur

Une des actions primaires que vous pouvez effectuer sur les valeurs d'une table ou une forme se compose rechercher une valeur. Ceci peut être une chose nécessaire à beaucoup d'autres opérations. Après qu'ouvrant une table dans une vue de Datasheet ou une forme dans la vue de forme, pour rechercher une valeur, sur le toolbar, vous pouvez cliquer le bouton de trouvaille Trouvaille. Ceci ouvrirait la trouvaille et remplacerait la zone de dialogue :

La trouvaille de quelle boîte combo te permet de dactylographier la valeur à la recherche. Normalement, c'est une boîte combo mais, par défaut, il est vide. Si vous aviez exécuté une recherche avant, les valeurs précédentes seraient dans la trouvaille quelle boîte combo ainsi toi pouvez les employer.

Quand la trouvaille et remplacent la zone de dialogue monte, le champ qui a été cliqué avant d'appeler cette fenêtre montrerait dans le regard dans la boîte combo. Si la trouvaille quelle boîte combo contient la valeur vous veulent rechercher, alors vous pouvez la garder. Si vous voulez rechercher la valeur dans la table entière, alors cliquer la flèche du regard dans la boîte combo et choisir l'option de Tableau.

La boîte combo de match te permet d'indiquer si vous voulez considérer la corde complète du champ ou seulement d'une section de elle. La valeur par défaut est champ entier. Pour la changer, vous pouvez cliquer la flèche de sa boîte combo et choisir une autre option.

Si vous employez le Microsoft Access 2000 et si les options par défaut ne sont pas assez, vous pouvez cliquer davantage >> bouton pour augmenter la zone de dialogue :

Une fois que vous êtes prêt à rechercher la valeur, trouvaille de clic après.

Édition d'une valeur

 

Visuellement édition d'une valeur

L'édition de valeur se compose changer la valeur tenue dans un domaine avec une autre valeur. Pour faire ceci, un utilisateur examine habituellement les disques pour localiser la valeur d'abord. Pour faire ceci, l'utilisateur peut employer la zone de dialogue de remplacement. Pour l'ouvrir, après avoir montré une table ou une forme, sur le toolbar, l'utilisateur peut cliquer le bouton de trouvaille Trouvaille et cliquer le remplacement tableau. Comme une alternative, sur le menu principal, l'utilisateur peut cliquer éditent - > remplacer :

La zone de dialogue de remplacement présente quelques options semblables comme la zone de dialogue de trouvaille. Celles-ci incluent la trouvaille ce qui, regard les boîtes combo dedans et de match, aussi la trouvaille après, l'annulation et plus de boutons. Le remplacement avec la boîte combo te permet d'indiquer la valeur qui remplacera la valeur existante. Voici un exemple :

Après l'indication des valeurs, vous pouvez cliquer remplacez. Si vous voulez remplacer plus d'une occurrence de la corde peu désirée, vous pouvez cliquer la trouvaille à côté de les localisez un et remplacez seulement ceux que vous voulez. Si vous voulez remplacer toutes les occurrences d'une valeur, vous pouvez cliquer remplacez tous.

Édition d'une valeur avec le SQL

Pour éditer une valeur en utilisant le SQL, vous commencez par le mot-clé de MISE À JOUR et suivez cette formule :

UPDATE TableName
SET ColumnName = NewValue

Dans notre formule, le facteur de TableName doit être le nom d'une table dans la base de données choisie ou courante. Le ColumnName doit être une colonne valide dans la table de TableName. Le facteur de NewValue de notre formule est la nouvelle valeur qui remplacera l'ancien. Si vous employez cette formule, tous les disques du ColumnName seraient donnés le NewValue. Dans certains cas, vous pouvez vouloir changer seulement un ou plusieurs la valeur particulière. Pour faire ceci, vous devez indiquer une condition qui serait employée pour identifier un disque. La formule à employer est :

UPDATE TableName
SET ColumnName = NewValue
WHERE Condition

Le facteur de condition indique comment la valeur sera localisée.

De la table ci-dessus, imaginer que vous voulez remplacer Peter Sagal avec Peter Segal. Le TableName est Videos. La colonne qui tient la valeur est appelée directeur. Le NewValue est Peter Segal. La condition peut être que le nombre d'étagère est CM-8842. Basé sur ceci, pour éditer la valeur, vous pouvez employer le code suivant :

UPDATE 	Videos
SET 	Director = "Peter Segal"
WHERE 	ShelfNumber = "CM-8842"

Ceci peut être fait en code comme suit :

Private Sub cmdMaintenance_Click()
    Dim strDataUpdate As String
    
    strDataUpdate = "UPDATE Videos " & _
                    "SET Director = 'Peter Segal' " & _
                    "WHERE ShelfNumber = 'CM-8842';"
    
    DoCmd.RunSQL strDataUpdate
End Sub

De la même manière, dans la liste de videos, noter que les videos intitulés « proposition indécente » et « attraction mortelle » ont un nom du directeur qui regarde la même chose. Après vérification des videos, vous découvrez qu'ils ont été dirigés réellement par la même personne. Ainsi vous décidez de l'éditer prgrammatically. Vous pouvez écrire le rapport de SQL comme suit :

UPDATE 	Videos
SET 	Director = "Adrian Lynn"
WHERE 	ShelfNumber = "DM-7426"

Avant d'exécuter le rapport, vous vérifiez la table encore mais découvrez que, par erreur ou autre chose, une autre vidéo emploie le même nombre d'étagère. Ceci signifie que si vous exécutez le rapport, n'importe quelle vidéo qui emploie le même nombre d'étagère aurait son directeur remplacé, y compris ces videos qui n'ont pas la même erreur. La solution à ceci est de s'assurer que vous avez toujours une manière de distinguer chaque vidéo des autres. C'est pourquoi la clef primaire est importante. Nous avons vu dans les leçons précédentes que, quand vous employez le type de données d'AutoNumber sur une colonne, le Microsoft Access prendrait sur la responsabilité d'assigner à chaque disque une marque unique. Cette valeur est en outre exigée si la colonne est une clef primaire. Basé sur ceci, vous pouvez sans risque employer la valeur de ce disque en faire l'entretien de données, tel que mettre à jour une valeur. Par conséquent, le changement ci-dessus peut être exécuté en employant la valeur du VideoID correspondant à la vidéo dont le directeur vous voulez mettre à jour :

UPDATE 	Videos
SET 	Director = "Adrian Lynn"
WHERE 	VideoID = 5

Ceci serait fait programmatically comme suit :

Private Sub cmdMaintenance_Click()
    Dim strDataUpdate As String
    
    strDataUpdate = "UPDATE Videos1 " & _
                    "SET Director = 'Adrian Lynn' " & _
                    "WHERE VideoID = 5;"
    
    DoCmd.RunSQL strDataUpdate
End Sub

Cette fois, parce que nous savons que seulement une vidéo a un VideoID égal à 5, seulement son disque sera changé.

Entretien record

 

Introduction

L'entretien record se compose copier un disque, supprimer un disque, ou importer des disques d'une table dans une autre base de données. Le Microsoft Access ne laisse pas des disques s'insérer (créant un nouveau disque entre deux disques existants), de se déplacer (changeant la position d'un disque tel que d'index 8 à index 4 ou d'index 2 à index 5) ou de changement (tels que mettre disque 2 à position 5 et mettre disque 5 à position 2).

Copier un disque

Imaginer que, dans une table, vous avez un disque existant qui tient déjà beaucoup de valeurs d'un nouveau disque que vous voulez créer. Au lieu de retaper toutes les valeurs, vous pouvez copier le disque existant au nouveau disque et faire seulement les quelques changements nécessaires. Si vous montrez une table dans la vue de Datasheet, pour copier un disque, vous pouvez droit-cliquez la boîte du côté gauche du champ le plus gauche de la colonne et cliquez la pâte :

Pour appliquer le disque copié à un neuf, droit-cliquer la boîte gauche du premier disque vide et cliquer la pâte.

Avant de copier un disque sous une forme, la forme devrait avoir la propriété record de sélecteurs réglée à oui. Pour copier un disque, vous pouvez droit-cliquez le sélecteur record et cliquez le copy :

Après avoir copié le disque, vous pouvez obtenir au premier disque vide, droit-cliquez son sélecteur record et cliquez la pâte.

Après empâtage d'un disque, vous pouvez faire le changement nécessaire. Vous devez également manuellement prendre soin d'assurer l'unicité des valeurs dans les domaines appropriés. Par exemple, si une colonne est censée pour tenir des valeurs uniques telles que des nombres des employés ou des nombres de sécurité sociale, après empâtage du disque, pour le mener à bonne fin, vous devez s'assurer vous changement la valeur du nouveau disque. Autrement, avant de passer, vous recevriez une erreur.

Pour copier programmatically un disque, vous pouvez rechercher la valeur de chaque colonne et créer un nouveau disque en utilisant ces valeurs.

Supprimer un disque

Supprimer un disque se compose l'enlever d'une table (ou d'une forme). à visuellement faire ceci, après avoir montré une table dans la vue de Datasheet, vous pouvez droit-cliquez la boîte du côté gauche du disque et cliquez le disque d'effacement :

Vous pouvez également cliquer la coupe. La différence est que l'option de coupe copierait le disque au presse-papiers ainsi vous pouvez le coller à nouveau.

Pour supprimer programmatically un disque en utilisant le SQL, vous combinez l'opérateur d'EFFACEMENT dans la formule primaire suivante :

DELETE FROM TableName

Quand ce rapport est exécuté, tous les disques de la table de TableName seraient enlevés. Voici un exemple :

Private Sub cmdClearCustomers_Click()
    DoCmd.RunSQL "DELETE FROM Customers"
End Sub

Dans ce cas-ci, tous les disques de client d'une table appelée Customers dans la base de données courante seraient supprimés. Une alternative à la formule ci-dessus est :

DELETE *
FROM TableName

Dans cette formule, vous employez * l'opérateur comme placeholder de colonne. Vous pouvez le remplacer avec un ou plusieurs noms des colonnes mais il n'importe pas parce que l'opérateur d'EFFACEMENT signifie que le disque de totalité sera supprimé, indépendamment du nom de colonne.

Le TableName doit être un nom valide d'une table dans la base de données indiquée ou courante. Voici un exemple :

Private Sub cmdDeleteRecords_Click()
    DoCmd.RunSQL "DELETE * FROM Videos;"
End Sub

Si vous exécutez ce type de rapport, tous les disques de la table seraient supprimés. Nous avons vu au-dessus de celui que l'utilisateur peut indiquer ce que le disque particulier à l'effacement au lieu de tout enregistre. Vous pouvez également indiquer quel disque à enlever d'une table. Pour faire ceci, employer la formule suivante de l'opérateur d'EFFACEMENT :

DELETE *
FROM TableName
WHERE Condition

Cette fois, le facteur de condition te permet de placer la condition qui serait appliquée pour localiser le disque. Considérer la table suivante :

Voici un exemple d'indiquer une condition pour supprimer un disque :

Private Sub cmdDeleteRecords_Click()
    DoCmd.RunSQL "DELETE * " & _
                 "FROM Videos " & _
                 "Director = 'Adrian Lynn';"
End Sub

Quand ce code fonctionne, tous les videos dirigés par Adrian Lynn seraient supprimés de la table. Au lieu de supprimer tous les disques aimer ceci, vous peut vouloir enlever seulement une vidéo particulière. Pour faire ceci, vous devez placer une condition qui place ce disque distant. De nouveau, la condition peut être facilement manipulée par la clef primaire.

 


Précédent Copyright © Yevol, 2007 Suivant