Page d'Accueil

Les colonnes d'un Tableau

 

Principes fondamentaux des colonnes

 

Introduction

Nous avons vu qu'un tableau était utilisé pour organiser les valeurs d'une liste en employant des catégories d'information. Voici un exemple :

 Nom Prénom Classe principale Années d'expérience
Pastore Albert Maths 4
Andong Gertrude Chimie 8
Missiano Helena ED physique 5
Jones Celestine Les sciences d'élém. 10

Avec ce type d'arrangement, chaque colonne contient une catégorie particulière d'information. Un tableau doit avoir au moins une colonne. Ceci signifie que, pour créer un tableau en utilisant la formule TableName de CREATE TABLE, vous devez indiquer les (au moins une) colonnes  .

Création de colonnes

Pour créer les colonnes d'un tableau, du côté droit du nom, tapez une parenthèses  ouverte et une autre fermée. Dans les parenthèses de l'expression CREATE TABLE TableName(), la formule de création d'une colonne est :

ColumnName DataType Options

Notez qu'il y a seulement l'espace qui sépare les sections de la formule. Cette formule est pour créer une colonne. Si vous voulez que le tableau ait plus d'une colonne, suivre cette formule autant de fois que possibles mais séparer les sections avec deux points. Ceci serait fait comme suit :

CREATE TABLE TableName(Column1 DataType1 Options1,
		       Column2 DataType2 Options2,
		       Column_n DataType_n Options_n);

Dans les prochaines sections, nous passerons en revue les facteurs de cette formule. Pour créer un tableau dans ADO, vous pouvez passer le rapport entier à la méthode Execute () de classe  connection.

Caractéristiques d'une colonne

 

Introduction

Comme un tableau d'une base de données, une colonne doit avoir un nom. Comme mentionné pour un tableau, le nom d'une colonne est très flexible. Pour cette raison, nous adopterons les mêmes types de conventions que nous avons passées en revue pour nommer les tableaux:

  • Le nom d'une colonne commencera par une lettre. Dans la plupart des cas, le nom commencera par une majuscule
  • Quand un nom est une combinaison des mots, chaque partie commencera par une majuscule. Les exemples sont Last Name ou Date Naissance
  • Dans la plupart des cas, nous éviterons d'inclure l'espace dans un nom mais si nous le faisons, le nom de la colonne sera inclus entre [et]

En créant le tableau, placez le nom de la colonne dans le placeholder de ColumnName de notre formule. Voici un exemple :

CREATE TABLE Students(FullName, DataType Options);

Noter que le nom de la colonne n'est pas inclus dans les citations.

Les types de colonnes

Pour exercer un bon niveau de contrôle des valeurs qui peuvent être écrites ou stockées dans une base de données, vous pouvez configurer chaque colonne pour permettre quelques types de valeur et/ou pour exclure quelques autres types. Ceci est fait en indiquant un type approprié de données pour la colonne. Pour indiquer le type de données d'une colonne, passez le nom du type de données comme deuxième facteur de la colonne.

Colonnes basées sur le texte  : Si les champs sous une colonne seront utilisés pour contenir n'importe quel type de valeur, y compris le texte régulier, telle une colonne traitée comme basée sur une chaîne. Il y a divers types de données que vous pouvez appliquer à une telle colonne. Vous pouvez indiquer le type de données en tant que CharText, Ttring ou Varchar. Voici les exemples de trois colonnes créées avec ces types :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ConnectionClass conDatabase = new ConnectionClass();

        try
        {
            object objAffected;
            string strStatement = "CREATE TABLE Customers(FirstName char, " +
                                                          "MiddleName String, " +
                                                          "LastName varchar);";
            string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                   "Data Source='C:\\Programs\\Exercise1.mdb';";

            conDatabase.Open(strConnection, "", "", 0);
            conDatabase.Execute(strStatement, out objAffected, 0);
        }
        finally
        {
            conDatabase.Close();
        }
        return 0;
    }
}

Chacun des types de données char, string, ou varchar produirait le même effet. Une colonne avec le type de données string, char, ou varchar permet n'importe quel type de valeur fait en n'importe quel caractère jusqu'à 255 symboles. Si vous voulez que la colonne stocke un plus long texte, indiquer son type de données comme Memo, NOTE, ou LONGTEXT. Une telle colonne peut contenir n'importe quel type de texte, n'importe quelle combinaison des caractères, et des symboles, jusqu'à 64000 caractères. Voici les exemples :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ConnectionClass conDatabase = new ConnectionClass();

        try
        {
            object objAffected;
            string strStatement = "CREATE TABLE Employees(FullName String, " +
                                                      "JobDescription Text, " +
                                                      "Comments Memo, " +
                                                      "ShortTimeGoals Note, " +
                                                      "LongTimeGoals LongText);";
            string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                   "Data Source='C:\\Programs\\Exercise1.mdb';";

            conDatabase.Open(strConnection, "", "", 0);
            conDatabase.Execute(strStatement, out objAffected, 0);
        }
        finally
        {
            conDatabase.Close();
        }
        return 0;
    }
}

Colonnes booléennes : Si vous voulez créer une colonne pour contenir seulement des valeurs en tant qu'étant vraie ou fausse, indiquer son type de données comme YESNO, BIT, ou LOGICAL. Voici les exemples :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ConnectionClass conDatabase = new ConnectionClass();

        try
        {
            object objAffected;
            string strStatement = "CREATE TABLE Contractors(" +
                                            "FullName String, " +
                                            "IsFullTime BIT, " +
                                            "CanTeachVariousSubjects LOGICAL, " +
                                            "IsMarried YESNO);";
            string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                   "Data Source='C:\\Programs\\Exercise1.mdb';";

            conDatabase.Open(strConnection, "", "", 0);
            conDatabase.Execute(strStatement, out objAffected, 0);
        }
        finally
        {
            conDatabase.Close();
        }
        return 0;
    }
}

Byte et Integer1 : Si vous voulez qu'une colonne contienne des nombres naturels, vous pouvez indiquer son type de données comme byte ou Integer1. Ceci est approprié à une colonne qui contiendra de petites valeurs numériques qui n'excédent pas 255. Voici les exemples :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ConnectionClass conDatabase = new ConnectionClass();

        try
        {
            object objAffected;
            string strStatement = "CREATE TABLE EmploymentStatus(" +
                                                "StatusID Byte, " +
                                                "Category Integer1);";
            string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                   "Data Source='C:\\Programs\\Exercise1.mdb';";

            conDatabase.Open(strConnection, "", "", 0);
            conDatabase.Execute(strStatement, out objAffected, 0);
        }
        finally
        {
            conDatabase.Close();
        }
        return 0;
    }
}

Short et Integer2 : Si vous voulez que la colonne contienne de plus grands nombres qui peuvent excéder 255, indiquer son type de données en tant que SHORT ou INTEGER2

Long : Si la colonne contiendra de petits aux nombres très grands, indiquer son type de données comme INT, ENTEGER, INTEGER4 ou Long.

Valeur à point flottant avec simple précision : Si vous voulez créer une colonne qui contiendra des valeurs décimales régulières sans respect de la précision sur sa valeur, indiquez son type de données comme single

Valeur à point flottant avec double précision : Si les valeurs d'une colonne exigeront un bon niveau de précision, indiquer son type de données comme double, ou numeric. Voici un exemple :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ConnectionClass conDatabase = new ConnectionClass();

        try
        {
            object objAffected;
            string strStatement = "CREATE TABLE Students(" +
                                            "FullName varchar, " +
                                            "Height Single, " +
                                            "Weight Numeric, " +
                                            "GPA Double);";
            string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                   "Data Source='C:\\Programs\\Exercise1.mdb';";

            conDatabase.Open(strConnection, "", "", 0);
            conDatabase.Execute(strStatement, out objAffected, 0);
        }
        finally
        {
            conDatabase.Close();
        }
        return 0;
    }
}

Colonnes Monnaie et devise : Si vous voulez que les valeurs d'une colonne contiennent des valeurs monétaires, indiquer son type de données en tant que Money ou Currency. Voici un exemple :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
            ADODB.ConnectionClass  conADO = new ADODB.ConnectionClass();
	 string  strCreate;
	 object obj = new object();

	 conADO.Open("Provider=Microsoft.Jet.OLEDB.4.0;" +
	          "Data Source='C:\\Programs\\Exercise1.mdb'", "", "", 0);
     strCreate = "CREATE TABLE Customers(" +
                 		"FullName Text, " +
             			"WeeklyHours Double, " +
             			"HourlySalary Money, " +
				"WeeklySalary Currency);";
	 conADO.Execute(strCreate, out obj, 0);
     Console.WriteLine("A table named Customers has been added to the database");
	 conADO.Close();

        return 0;
    }
}

Money et Currency ont le même effet.

Date et Heure : Si vous créez une colonne dont les valeurs se composeraient de la date, de l'heure, ou date et heure, indiquer son type de données comme DATE ou DATETIME. Voici les exemples :

using System;
using ADODB;

public class Program
{
    static int Main()
    {
        ADODB.ConnectionClass  conADO = new ADODB.ConnectionClass();
        string  strCreate;
        object obj = new object();
            
        conADO.Open("Provider=Microsoft.Jet.OLEDB.4.0;" +
                    "Data Source='C:\\Programs\\Exercise1.mdb'", "", "", 0);
        strCreate = "CREATE TABLE Teachers(" +
                    "FullName Text, " +
                    "DateHired Date, " +
                    "DateLastReviewed DateTime);";
	 
        conADO.Execute(strCreate, out obj, 0);
        Console.WriteLine("A table named Teachers has " +
			"been added to the database");
        conADO.Close();

        return 0;
    }
}

Les deux types de données ont le même effet dans le Microsoft Access.

Binaire : Le type de données binaire peut laisser une colonne accepter n'importe quel type de données mais il est équipé pour interpréter la valeur. Par exemple, il peut être utlisé pour recevoir des nombres hexadécimaux. Pour indiquer ceci en créant une colonne, placez son type de données comme BINAIRE ou à VARBINARY.

Image : Si vous créez une colonne qui contiendra les documents externes, tels que les images, formatées (de Microsoft Word par exemple), ou le bilan, etc., indiquer son type de données comme un de ce qui suit : IMAGE, OLEOBJECT, LONGBINARY, ou GÉNÉRAL.

Maintenace des colonnes

 

Introduction

L'entretien des colonnes consiste à ajouter une nouvelle colonne ou supprimer une colonne existante. Puisque les colonnes appartiennent à un tableau, leur entretien est lié à ce tableau. Pour exécuter cet entretien, vous commencez par l'expression ALTER TABLE suivie du nom du tableau.

Ajouter une nouvelle colonne

Après qu'un tableau avec une ou plusieurs colonnes ait été créée, vous pouvez lui ajouter une nouvelle colonne. Pour ajouter une nouvelle colonne, après l'énoncé ALTER TABLE et le nom du tableau, incluez une expression ADD COLUMN en utilisant la formule suivante :

ALTER TABLE TableName
ADD COLUMN ColumnName DataType

Le facteur ColumnName doit être un nom valide pour la nouvelle colonne et vous devez suivre les règles pour nommer des colonnes. Le type de données doit être l'un de ceux que nous avons passés en revue. Voici un exemple qui ajoute une nouvelle colonne basée sur une chaîne appelée CellPhone à un tableau appelé Employees :

using System;
using ADODB;

public static class Program
{
    static int Main()
    {
            ADODB.Connection conADO = new ADODB.Connection();
            object obj = new object();
            string strStatement;

            conADO.Open("Provider=Microsoft.Jet.OLEDB.4.0;" +
                        "Data Source='C:\\Programs\\Exercise1.mdb'", "", "", 0);
            strStatement = "ALTER TABLE Employees ADD COLUMN CellPhone string;";
            conADO.Execute(strStatement, out obj, 0);

            Console.WriteLine("A new column named CellPhone has been added " +
                              "to the Employees table.");

            conADO.Close();

        return 0;
    }
}

Il est important de comprendre que l'expression ADD COLUMN crée une nouvelle colonne à la fin des colonnes existantes. Elle ne peut pas être utilisée pour insérer une colonne dans un tableau.

Supprimer une colonne

Pour supprimer une colonne, commencez avec l'expression  ALTER TABLE suivi du nom du tableau. Après l'expression TableName de ALTER TABLE, suivez avec une expression DROP COLUMN en utilisant cette formule :

ALTER TABLE TableName DROP COLUMN ColumnName;

Remplacer le facteur ColumnName de notre formule avec le nom de la colonne peu désirée. Voici un exemple :

using System;
using ADODB;

public static class Program
{
    static int Main()
    {
            ADODB.Connection conADO = new ADODB.Connection();
            object obj = new object();
            string strStatement;

            conADO.Open("Provider=Microsoft.Jet.OLEDB.4.0;" +
                         "Data Source='C:\\Programs\\Exercise1.mdb'", "", "", 0);
            strStatement = "ALTER TABLE Employees DROP COLUMN Comments;";
            conADO.Execute(strStatement, out obj, 0);

            Console.WriteLine("The Comments column has been " +
				"deleted from the Employees table.");

            conADO.Close();

        return 0;
    }
}
 

Précédent Copyright © 2007, Yevol Suivant