Insérez les valeurs par défaut dans une colonne (accès db)

voix
3

Comment puis-je faire pour insérer une valeur par défaut dans une colonne d'une table dans Access? J'utilise cette instruction:

ALTER TABLE Tabella ADD Campo Double DEFAULT 0
ALTER TABLE Tabella ADD Campo Double DEFAULT (0)
ALTER TABLE Tabella ADD Campo DEFAULT 0
ALTER TABLE Tabella ADD Campo DEFAULT (0)
ALTER TABLE Tabella ADD Campo SET DEFAULT 0
ALTER TABLE Tabella ADD Campo SET DEFAULT (0)

mais tous ces provoquer l'erreur. Comment puis-je faire pour le faire?

Créé 09/12/2008 à 15:53
source utilisateur
Dans d'autres langues...                            


4 réponses

voix
2

De MSDN :

La déclaration DEFAULT peut être exécutée que par le fournisseur OLE DB d'accès et ADO. Il renvoie un message d'erreur si elle est utilisée par l'accès SQL View interface utilisateur.

Sooo ... nous en dire plus sur ce que vous faites et comment vous exécuter SQL?

Et pourquoi ne vous utilisez le concepteur de la table?

Créé 09/12/2008 à 15:59
source utilisateur

Créé 09/12/2008 à 15:58
source utilisateur

voix
0

J'ai cette fonction typique d'accès à ajouter de nouveaux champs + valeurs par défaut pour accéder aux tables :. Le champ est ajouté si elle n'existe pas déjà dans le tableau.

Public Function addNewField( _
    m_tableName as string, _
    m_fieldName As String, _
    m_fieldType As Long, _      'check syntax of .createField method for values'
    m_fieldLength As Long, _    'check syntax of .createField method for values'
    Optional m_defaultValue As Variant = Null)

Dim myTable As DAO.TableDef
Dim myField As DAO.Field

On Error GoTo addNewField_error

Set myTable = currentDb.TableDefs(m_tableName)
Set myField = myTable.CreateField(m_fieldName, m_fieldType, m_fieldLength)

If Not IsNull(m_defaultValue) Then
    myField.DefaultValue = m_defaultValue
End If

myTable.Fields.Append myField

Set myTable = Nothing
Set myField = Nothing

Exit Function

addNewField_error:
If Err.Number = 3191 Or Err.Number = 3211 Then
    'The field already exists or the table is opened'
    'nothing to do but exit the function'
Else
    debug.print Err.Number & " - " & Error$
End If

End Function
Créé 09/12/2008 à 16:31
source utilisateur

voix
0

Vous n'insérez une nouvelle valeur par défaut, vous devez modifier l'existant.

Premier commutateur accès à un goût sain d'esprit SQL, comme dans la réponse ci-dessus liée, vous pouvez dire:

alter table Tabella alter column Campo Double DEFAULT 0
Créé 09/12/2008 à 16:06
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more