用sql設(shè)置access的默認(rèn)值
如何定義字段默認(rèn)值
問(wèn)題:
如何設(shè)定表的某字段默認(rèn)值?
方法一:
用 JET SQL 來(lái)完成
ALTER TABLE TABLENAME ALTER COLUMN FIELDNAME TEXT(40) DEFAULT 默認(rèn)值
請(qǐng)注意,上述語(yǔ)句要用 ADODB.CONNECTION.EXECUTE 等方法來(lái)執(zhí)行,直接用上述代碼建立一個(gè)查詢無(wú)法保存或者運(yùn)行,會(huì)得到 ACCESS 的錯(cuò)誤提示。
方法二:
ADOX 可以。
Function ChengTableFieldPro_ADO()
Dim MyTableName As String
Dim MyFieldName As String
Dim GetFieldDesc_ADO
Dim GetFieldDescription
MyTableName = "ke_hu"
MyFieldName = "dw_name"
Dim MyDB As New ADOX.Catalog
Dim MyTable As ADOX.Table
Dim MyField As ADOX.Column
On Error GoTo Err_GetFieldDescription
MyDB.ActiveConnection = CurrentProject.Connection
Set MyTable = MyDB.Tables(MyTableName)
GetFieldDesc_ADO = MyTable.Columns(MyFieldName).Properties("Description")
Dim pro As ADODB.Property
For Each pro In MyTable.Columns(MyFieldName).Properties
Debug.Print pro.Name & " : " & pro.Value & " ---- type : " & pro.Type
Next
With MyTable.Columns(MyFieldName)
'.Properties("nullable") = True '必填
'必填無(wú)法用上述代碼設(shè)置,出錯(cuò)提示為:
'多步 OLE DB 操作產(chǎn)生錯(cuò)誤。如果可能,請(qǐng)檢查每個(gè) OLE DB 狀態(tài)值。沒(méi)有工作被完成。
'目前可以用以下語(yǔ)句設(shè)置:
'CurrentDb.TableDefs("ke_hu").Fields("DW_NAME").Properties("Required") = False
.Properties("Jet OLEDB:Allow Zero Length") = True '允許空
.Properties("default") = "默默默默認(rèn)認(rèn)認(rèn)認(rèn)" '默認(rèn)值
End With
Set MyDB = Nothing
Bye_GetFieldDescription:
Exit Function
Err_GetFieldDescription:
Beep
Debug.Print Err.Description
MsgBox Err.Description, vbExclamation
GetFieldDescription = Null
Resume Bye_GetFieldDescription
End Function
關(guān)于“多步錯(cuò)誤”的一些參考:
Sub ChangeUnicode()
Dim tdf As TableDef
Dim fld As Field
Dim db As Database
Dim pro As Property
Set db = CurrentDb
For Each tdf In db.TableDefs
For Each fld In tdf.Fields
If fld.Type = dbText Then
If DBEngine.Errors(0).Number = 3270 Then
Set pro = fld.CreateProperty("UnicodeCompression", 1, 0)
fld.Properties.Append p
End If
fld.Properties("UnicodeCompression") = True
End If
Next fld
Next tdf
End Sub
相關(guān)文章
asp Driver和Provider兩種連接字符串連接Access時(shí)的區(qū)別
Microsoft OLE DB Provider for ODBC Drivers 錯(cuò)誤 '80040e21' 多步 OLE DB 操作產(chǎn)生錯(cuò)誤。如果可能,請(qǐng)檢查每個(gè) OLE DB 狀態(tài)值。沒(méi)有工作被完成。2009-12-12asp Access數(shù)據(jù)備份,還原,壓縮類代碼
asp Access數(shù)據(jù)備份,還原,壓縮類實(shí)現(xiàn)代碼,大家可以參考下。2009-11-11asp獲取數(shù)據(jù)庫(kù)中表名和字段名的代碼
今天冒出來(lái)一個(gè)想法,在僅知道數(shù)據(jù)庫(kù)名的情況下,用asp得到數(shù)據(jù)庫(kù)中的所有表名、所有表的字段名、以及所有字段中的內(nèi)容。經(jīng)過(guò)一段時(shí)間查詢資料和修改,終于做出來(lái)了,現(xiàn)在與大家分享。2008-09-09用Asp備份與恢復(fù)SQL Server 數(shù)據(jù)庫(kù)
用Asp備份與恢復(fù)SQL Server 數(shù)據(jù)庫(kù)...2006-08-08asp經(jīng)典入門教程 在ASP中使用SQL 語(yǔ)句
五花八門的SQL產(chǎn)品多得要命,或許你早顧不得其它甩開(kāi)袖子就動(dòng)手干了。但你要同時(shí)采用ASP和SQL的話就可能會(huì)頭暈2012-08-08使用 Osql 工具管理 SQL Server 桌面引擎 (MSDE 2000)應(yīng)用介紹
SQL Server 桌面引擎(也叫 MSDE 2000)沒(méi)有自己的用戶界面,因?yàn)樗饕O(shè)計(jì)為在后臺(tái)運(yùn)行2012-11-11set rs=server.CreateObject("adodb.recordset") 的中文詳
這是創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)實(shí)例,但是什么是數(shù)據(jù)庫(kù)實(shí)例?還有rs這個(gè)東西也不是一個(gè)變量,他在程序里邊rs.update 等操作是如何進(jìn)行的?打開(kāi)的表示如何接收rs傳過(guò)來(lái)的數(shù)據(jù)的?2010-08-08asp 在線備份與恢復(fù)sqlserver數(shù)據(jù)庫(kù)的代碼
asp 在線備份 恢復(fù) sql server 數(shù)據(jù)庫(kù),對(duì)于遠(yuǎn)程沒(méi)有提供sqlserver遠(yuǎn)程連接或打包下載的朋友是個(gè)臨時(shí)解決方法,對(duì)于大數(shù)據(jù)來(lái)說(shuō)可能效果不好。2010-07-07如何在不支持?jǐn)?shù)據(jù)庫(kù)的asp主頁(yè)上運(yùn)用ado
如何在不支持?jǐn)?shù)據(jù)庫(kù)的asp主頁(yè)上運(yùn)用ado...2006-09-09