自从我升级到 WebMatrix 3 以来,我第一次尝试手动将数据添加到数据库之前,我没有遇到过这个问题,所以我不知道这是一个错误还是某种故障预防。
我定义了一个非常简单的表,主键为 asint
并将其设置为不允许空值,并且类型IsIdentity
为 int 值将根据需要自动递增。
一张照片显示在这里:
好的,看起来很简单,但是当我尝试手动向表中添加数据时,它应该不允许我以任何方式修改主键值(因为它是自动的)。
我所做的只是在type
andlocation
列中输入几个字符串值,它告诉我由于主键字段中的值无效,它无法向数据库提交更改(它的行为好像它会尝试抛出NULL
in 作为值,但是当它自动添加行时应该被覆盖。用户界面不允许我控制或编辑这个值)。
此处显示了一张图片:
这是什么?某种错误?WebMatrix 不允许开发人员手动向数据库添加值是新规则吗?每次我想向数据库添加一些东西时,我是否必须编写一个查询?我在暮光之城吗?(好吧,对不起最后一个......)
另外,我注意到如果我没有IsIdentity
设置,我可以编辑该字段,在其中放置一个 PERFECTLY VALID 整数,它仍然以同样的方式出错,所以我使用ESC
备份我的更改,然后点击刷新,只发现它确实确实添加了行:/。所以,这个界面一开始似乎有点错误。在我上面的场景中(使用IsIdentity
),不幸的是,它无论如何都不会添加行。
- - - - - - - - - - 更新 - - - - - - - - - - - - -
我最近刚刚下载了一个 WebMatrix 更新,看来他们已经解决了这个问题!耶!(直到现在我只是查询通用的 INSERT INTO 语句并从那里手动编辑它们)。