• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    用sql设置access的默认值
    简述:
    如何定义字段默认值 

    问题: 
    如何设定表的某字段默认值?

    方法一:

    用 JET SQL 来完成
    ALTER TABLE TABLENAME ALTER COLUMN FIELDNAME TEXT(40) DEFAULT 默认值 


    请注意,上述语句要用 ADODB.CONNECTION.EXECUTE 等方法来执行,直接用上述代码建立一个查询无法保存或者运行,会得到 ACCESS 的错误提示。


    方法二:

    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    '必填
            '必填无法用上述代码设置,出错提示为:
            '多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。
            '目前可以用以下语句设置:
            'CurrentDb.TableDefs("ke_hu").Fields("DW_NAME").Properties("Required") = False
            .Properties("Jet OLEDB:Allow Zero Length") = True   '允许空
            .Properties("default") = "默默默默认认认认"      '默认值
        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

     
    关于“多步错误”的一些参考:

    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
    您可能感兴趣的文章:
    • 列出SQL Server中具有默认值的所有字段的语句
    • input之怎么清除默认值
    • MySQL表字段设置默认值(图文教程及注意细节)
    上一篇:不用模板只用ASP+FSO生成静态HTML页的一个方法
    下一篇:用ASP+DLL实现WEB方式修改服务器时间
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    用sql设置access的默认值 用,sql,设置,access,的,默认值,