MSSQL 表列的默认值与MSSQL-DMO Column对象的Default属性和DRIDefault属性有关.Default属性保存的是数据库Defaults集合中的Default对象的名称(Name),而不是Default对象本身.
Default作为数据库的独立对象,不从属于任何列对象,它是通过与指定的列绑定来实现列的默认值的.
而DRIDefault对象则不是独立的对象,是从属与列对象的,DREDefault本身就是对象.
列的默认值只能由列绑定的数据库的Default对象或列的DRIDefault对象中的一个来决定,不能同时共存.在MSSQLSERVER企业管理器表设计窗口中,可以从列的<默认值>栏直接输入DRIDefault常量值或从下拉组合框中选择Default对象名称.判断一个列是否设置了默认值的方法是:判断列对象的Default属性和DRIDefault.text的属性均为空时表示无默认值,否则只要有一个不为空则表示有默认值.
列的Default属性与DRIDefault属性的区别就是:
1.Default属性返回值是字符串,代表Defaults集合的Default对象的名称,而DRIDefault属性返回值是对象.
2.DRIDefault对象可以通过DMO对象直接指定常量值,而Default对象必须先被创建,然后再被绑定到指定的列上.二者的共同点是:
对Default对象和DRIDefault对象的text属性赋值时必须是与所属列的数据类型相符的常量,而text属性的返回值则是字符串,运行时MSSQLSERVER会自动将text属性的字符串转换成相应数据类型的常量.