2008-09-06 17 views
5

bir müşteri için eski bir ASP/Erişim sitesini güncelleniyor - Varolan tabloya bir sütun eklemek ve varsayılan değer ayarlamak için SQL gerekir. Çalışmıyor - herhangi bir fikir?SQL varsayılan değerle sütun eklemek için - Erişim 2003

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 

googled ve varsayılan değerler için talimatlar diğer alan türleri için çalışır ama numara eklemek istediğiniz gördünüz mü:

bu özelliktir çalışmak istiyorum

ALTER TABLE documents ADD COLUMN membersOnly NUMBER 

çalışıyor. Teşekkürler!

+0

Teşekkür, [o mükemmel çalıştı] (http://stackoverflow.com/questions/47535/sql-to-add-column-with-default-value-access- bulunamazsa 2003 # 47552). Ama bunu yapmak için MDB'yi indirmem gerekiyor ve SQL'i istedim, böylece çevrimdışına almam gerekmedi! YESNO'nun kendiliğinden bir varsayılan değere sahip olduğunu anladım, böylece bu vesileyle bunun yerine geçebilirim. ANSI uyumlu mod hakkında bilmek çok güzel - gerçekten çok teşekkürler. – Polsonby

cevap

8

Araçlar - > Seçenekler - > Tablolar/Sorgular - > (Sağ altta :) Sql Server Uyumlu Sözdizimi - bu veritabanı için seçeneği etkinleştirin.

o zaman sorguyu çalıştırabilirsiniz:

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 
+1

Bu benim için çalışmıyor. Sütun oluşturur, ancak varsayılanı ayarlamaz. – JohnMerlino

+0

+1 Teşekkürler, bu seçenek hakkında bilmiyordum. Bu sadece DEFAULT deyimi eklenmesine gerek yoktur, ve standart sözdizimi kullanılarak varsayılan SıNıRLAMA eklemenize izin vermez, ama bir şey için faydalı olacaktır eminim. – harpo

+4

Erişim seçenekleri içindeki ayar, yalnızca Access kullanıcı arabirimi aracılığıyla yapılan veritabanındaki işlemler ile ilgilidir (Access'in içinde, çalışan bir Access uygulamasını bozabilecek bir takım talihsiz yan etkileri vardır). Dış Access'in SQL 92 sözdizimini istiyorsanız, DDL deyimini yürütmek için yalnızca ADO'yu kullanın. –

0

nasıl güncelleme SQL çalıştırılmasına veritabanına bağlanıyorsanız? ODBC uyumlu modu ADO üzerinden kullanabilirsiniz. Access'te veritabanını açmadan.

0

Sen SQL Server uyumlu Sözdizimi zaten sadece db çevrimdışı yapma başvurmadan önce (ASP bir ADO bağlantısı üzerinden) Yukarıda belirtilen sql deyimini çalıştırmak için çalışırken çok değer kesinlikle, açık olduğundan bulabilirler. Teşekkürler, bu bana yardımcı oldu. ADO ile

6

, bir alan oluşturmak ve varsayılan değerini ayarlamak için bir DDL ifadesi çalıştırabilirsiniz.

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

Ve ADO üzerinden olduğundan, bu SQL 92 modunu kullanır. Bu sorudaki cevaplarda yer alan diğer bilgilerin çoğu, tamamen saçmadır. –

0

Araçlar -> Seçenekler -> Tablolar/Sorgular -> (Sağ alttaki :) SQL Server uyumlu Sözdizimi - Bu veritabanı için üzerinde dönüş seçeneği.

MS Access 2010

İlgili konular