如何解决在ms访问中检查约束
我正在尝试在ms访问(SQL视图)中执行此语句,但是当我从数值中删除(3,2)并删除最后2个约束时,这显示了检查约束和numeric(3,2)..上的错误然后检查 这将成功执行...但是我想在表中添加最后一个检查约束。当我再次添加时,这将显示错误..
CREATE TABLE COMPUTER(
SerialNumber Int NOT NULL,Make Char(12) NOT NULL,Model Char(24) NOT NULL,ProcessorType Char(24) NULL,ProcessorSpeed Numeric(3,2) NOT NULL,MainMemory Char(15) NOT NULL,DiskSize Char(15) NOT NULL,CONSTRAINT COMPUTER_PK PRIMARY KEY(SerialNumber),CONSTRAINT MAKE_CHECK CHECK(Make IN ('Dell','Gateway','HP','Other')),CONSTRAINT SPEED_CHECK CHECK(ProcessorSpeed BETWEEN 1.0 AND 4.0)
);
我该怎么办?我有MS ACCESS 2007
解决方法
尝试在Visual Basic编辑器中使用VBA / ADO运行CREATE TABLE:
Sub CreateMyTable()
Dim cnn As New ADODB.Connection
Set cnn = CurrentProject.Connection
cnn.Execute ("CREATE TABLE ... plus the rest of your create here")
Set cnn = Nothing
End Sub
使用Access SQL视图可以定义的内容与通过VBA / ADO可以定义的内容之间存在(令人遗憾的)不一致。在这种情况下,我相信Numeric(3,2)
在Access SQL视图中将不起作用,我也不认为约束也将起作用。我假设您已将数据库选项设置为与SQL-92 ANSI兼容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。