Générer une vue tabulaire (Gestion des données)

Récapitulatif

Crée une vue tabulaire à partir d'une classe d'entités ou d'une table en entrée. La vue tabulaire créée par l'outil est temporaire et disparaît à la fin de la session si le document n'est pas enregistré.

Utilisation

Syntaxe

MakeTableView_management (in_table, out_view, {where_clause}, {workspace}, {field_info})
ParamètreExplicationType de données
in_table

Table ou classe d'entités en entrée.

Table View;Raster Layer
out_view

Nom de la vue tabulaire à créer.

Table View ;Raster Layer
where_clause
(Facultatif)

Expression SQL permettant de sélectionner un sous-ensemble d'entités. La syntaxe de l'expression diffère légèrement en fonction de la source des données. Par exemple, lorsque vous interrogez des géodatabases fichier ou ArcSDE, des fichiers de formes ou des couvertures, placez le nom des champs entre guillemets doubles :

"MY_FIELD"

Si vous interrogez des géodatabases personnelles, placez les champs entre crochets :

[MON_CHAMP]

Dans Python, les chaînes se trouvent entre guillemets simples ou doubles. Pour créer une chaîne contenant des guillemets (comme c'est souvent le cas pour les clauses WHERE dans les expressions SQL), vous pouvez désactiver les guillemets (à l'aide d'une barre oblique inverse) ou placer la chaîne entre guillemets triples. Par exemple, si la clause WHERE souhaitée est

"CITY_NAME" = 'Chicago'

vous pouvez mettre la chaîne entière entre guillemets doubles, puis désactiver les guillemets doubles intérieurs de la manière suivante :

" \"CITY_NAME\" = 'Chicago' "

Ou vous pouvez mettre la chaîne entière entre guillemets simples, puis désactiver les guillemets simples intérieurs de la manière suivante :

' "CITY_NAME" = \'Chicago\' '

Ou vous pouvez mettre la chaîne entière entre guillemets triples sans désactiver les guillemets :

""" "CITY_NAME" = 'Chicago' """

Pour en savoir plus sur la syntaxe SQL et sur ses différences selon les sources de données, reportez-vous à la rubrique d'aide Référence SQL pour les expressions de requête utilisées dans ArcGIS.

SQL Expression
workspace
(Facultatif)

Espace de travail en entrée utilisé pour valider les noms des champs. Si l'entrée est une table de géodatabase et que l'espace de travail en sortie est une table dBASE, les noms de champs peuvent être tronqués car les champs dBASE ne doivent pas comporter plus de 10 caractères. Les nouveaux noms peuvent être révisés et modifiés à l'aide du contrôle des informations de champ.

Workspace
field_info
(Facultatif)

Spécifiez les champs de la table en entrée à renommer et à afficher dans la vue tabulaire en sortie.

Field Info

Exemple de code

Exemple 1 d'utilisation de l'outil MakeTableView (fenêtre Python)

Le script de fenêtre Python suivant illustre l'utilisation de l'outil MakeTableView en mode immédiat.

import arcpy

arcpy.MakeTableView_management("C:/data/input/crimefrequency.dbf", "crimefreq_tview")
Exemple 2 d'utilisation de l'outil MakeTableView (script autonome)

Le script autonome suivant montre comment utiliser l'outil MakeTableView avec un objet FieldInfo pour filtrer des champs dans la sortie.

# Name: MakeTableView_Example2.py
# Description: Uses a FieldInfo object to select a subset of fields and renaming one field's name.

# Import system modules
import arcpy

# Set data path
intable = "C:/data/tables.gdb/crimefreq"

# Get the fields from the input
fields= arcpy.ListFields(intable)

# Create a fieldinfo object
fieldinfo = arcpy.FieldInfo()

# Iterate through the fields and set them to fieldinfo
for field in fields:
    if field.name == "FREQUENCY":
        fieldinfo.addField(field.name, "NEWFREQ", "VISIBLE", "")
    elif field.name == "CRIME_CAT":
        fieldinfo.addField(field.name, field.name, "HIDDEN", "")
    elif field.name == "BEAT":
        fieldinfo.addField(field.name, field.name, "VISIBLE", "")

# The created crime_view layer will have fields as set in fieldinfo object
arcpy.MakeTableView_management(intable, "crime_view", "", "", fieldinfo)

# To persist the layer on disk make a copy of the view
arcpy.CopyRows_management("crime_view", "C:/temp/newfreq.dbf")

Environnements

Thèmes connexes

9/12/2013