2008-09-06 7 views
5

Aktualizowanie starej strony ASP/Access dla klienta - potrzebuję SQL, aby dodać kolumnę do istniejącej tabeli i ustawić domyślną wartość. Nie działa - jakieś pomysły?SQL do dodania kolumny z wartością domyślną - Access 2003

Działa to dobrze

ALTER TABLE documents ADD COLUMN membersOnly NUMBER 

chcę to do pracy:

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 

Czy google i widoczne instrukcje wartości domyślnych pracować dla innych typów pól, ale chcę dodać numer. Dzięki!

+0

Dzięki, że pracował idealnie [] (http://stackoverflow.com/questions/47535/sql-to-add-column-with-default-value-access- 2003 # 47552). Ale to oznacza, że ​​muszę pobrać MDB, aby to zrobić i chciałem SQL, więc nie musiałem go odbierać w trybie offline! Dowiedziałem się, że YESNO ma wewnętrzną domyślną wartość, więc przy tej okazji mogę sobie z tym poradzić. Wspaniale jest jednak wiedzieć o trybie kompatybilnym z ANSI - wielkie dzięki. – Polsonby

Odpowiedz

8

Narzędzia - > Opcje - > Tabele/Zapytania - > (W prawym dolnym rogu) Sql Server Compatible Syntax - włącz opcję dla tej bazy danych.

następnie można wykonać zapytanie:

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 
+1

To nie działa dla mnie. Tworzy kolumnę, ale nie ustawia wartości domyślnej. – JohnMerlino

+0

+1 Dzięki, nie wiedziałem o tej opcji. Nie jest konieczne dodawanie klauzuli DEFAULT i nie pozwala ona na dodanie domyślnego CONSTRAINT przy użyciu standardowej składni, ale jestem pewien, że będzie przydatna dla czegoś. – harpo

+4

Ustawienie w opcjach dostępu dotyczy tylko operacji wykonywanych w bazie danych za pomocą interfejsu użytkownika programu Access (aw programie Access ma szereg niefortunnych efektów ubocznych, które mogą uszkodzić działającą aplikację Access). Jeśli chcesz składni SQL 92 z zewnątrz Access, po prostu użyj ADO, aby wykonać instrukcję DDL. –

0

Jak masz połączenia z bazą danych, aby uruchomić SQL aktualizacji? Możesz użyć trybu kompatybilnego z ODBC przez ADO. Bez otwierania bazy danych w programie Access.

0

Możesz znaleźć Kompatybilny z Sql Server Składnia jest już włączona, więc na pewno warto po prostu próbować uruchomić powyższą instrukcję sql (przez połączenie ADO z ASP) przed odwołaniem się do db w trybie offline. Dzięki, to mi pomogło.

6

Za pomocą ADO można wykonać instrukcję DDL, aby utworzyć pole i ustawić jego domyślną wartość.

CurrentProject.Connection.Execute _ 
    "ALTER TABLE discardme ADD COLUMN membersOnly SHORT DEFAULT 0" 
+1

A ponieważ jest za pośrednictwem ADO, użyje trybu SQL 92. Wiele innych informacji w odpowiedziach na to pytanie to zwykłe śmieci. –

0

Narzędzia -> Opcje -> Stoły/Pytania -> (w prawym dolnym rogu :) SQL Server Kompatybilny Składnia - kolej opcja w tej bazie danych.

nie znajduje się na MS Access 2010