Plaats de standaard waarden in een kolom (toegang db)

stemmen
3

Hoe kan ik voor het invoegen van een standaardwaarde in een kolom van een tabel in Access? Ik gebruik deze instructie:

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)

maar al deze leiden tot fouten. Hoe kan ik doen om dat te doen?

De vraag is gesteld op 09/12/2008 om 15:53
bron van user
In andere talen...                            


4 antwoorden

stemmen
2

Van MSDN :

De standaard verklaring kan alleen worden uitgevoerd via de Access OLE DB-provider en ADO. Het zal een foutmelding terug als het gebruikt wordt door de Access SQL-weergave gebruikersinterface.

Sooo ... vertel ons meer over wat je doet en hoe je het uitvoeren van uw SQL?

En waarom ben je niet met behulp van de tabel ontwerper?

antwoordde op 09/12/2008 om 15:59
bron van user

antwoordde op 09/12/2008 om 15:58
bron van user

stemmen
0

Ik heb deze typische Access functie om nieuwe velden + standaardwaarden naar Access tabellen toe te voegen :. Het veld wordt toegevoegd als het niet al bestaat in de tabel.

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
antwoordde op 09/12/2008 om 16:31
bron van user

stemmen
0

Je hoeft niet in te voegen een nieuwe standaardwaarde, moet u veranderen de bestaande.

Schakel eerst toegang tot een gezonde SQL smaak, net als in het antwoord gekoppeld hierboven, dan kun je zeggen:

alter table Tabella alter column Campo Double DEFAULT 0
antwoordde op 09/12/2008 om 16:06
bron van user

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