Legen Sie die Standardwerte in einer Spalte (Zugang db)

stimmen
3

Wie kann ich einen Standardwert in eine Spalte einer Tabelle in Access zum Einfügen? Ich benutze diese Anweisung:

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)

aber alle diese verursachen Fehler. Wie kann ich tun, es zu tun?

Veröffentlicht am 09/12/2008 um 15:53
quelle vom benutzer
In anderen Sprachen...                            


4 antworten

stimmen
2

Von MSDN :

Die STANDARD-Anweisung kann nur über die Access OLE DB-Provider und ADO ausgeführt werden. Es wird eine Fehlermeldung zurück, wenn die Access-SQL-Ansicht Benutzeroberfläche verwendet, um durch.

Sooo ... erzählen Sie uns mehr über das, was Sie tun und wie Sie ausführen Ihre SQL?

Und warum nicht verwenden Sie die Tabellen-Designer?

Beantwortet am 09/12/2008 um 15:59
quelle vom benutzer

stimmen
1

Sehen Sie diese Antwort?

SQL hinzufügen Spalte mit Standardwert - Access 2003

Beantwortet am 09/12/2008 um 15:58
quelle vom benutzer

stimmen
0

Ich habe diese typische Access-Funktion, um neue Felder + hinzufügen Tabellen Standardwerte für den Zugriff auf :. Das Feld wird hinzugefügt, wenn es nicht bereits in der Tabelle vorhanden.

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
Beantwortet am 09/12/2008 um 16:31
quelle vom benutzer

stimmen
0

Sie müssen nicht einfügen einen neuen Standardwert, müssen Sie ändern die vorhandenen.

Die erste Schalter Zugang zu einer gesunden SQL Aroma, wie in der Antwort oben verbunden, dann kann man sagen:

alter table Tabella alter column Campo Double DEFAULT 0
Beantwortet am 09/12/2008 um 16:06
quelle vom benutzer

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