SQL server中:常见问题汇总
- 1.修改表时提示:不允许修改表结构
- 2.将截断字符串或二进制数据。
- [3.在将 varchar 值 'null' 转换成数据类型 int 时失败。](#3.在将 varchar 值 'null' 转换成数据类型 int 时失败。)
- [4.插入insert 、更新update、删除drop数据失败,主外键FOREIGN KEY 冲突](#4.插入insert 、更新update、删除drop数据失败,主外键FOREIGN KEY 冲突)
- 5.列不允许有NuIl值,插入INSERT失败
- [6.修改表 ALTER TABLE 语句与外键 FOREIGN KEY 约束冲突](#6.修改表 ALTER TABLE 语句与外键 FOREIGN KEY 约束冲突)
- [7.sql server中命令提示:对象名无效,但是可以执行成功](#7.sql server中命令提示:对象名无效,但是可以执行成功)
- [警告: 聚合或其他 SET 操作消除了 Null 值](#警告: 聚合或其他 SET 操作消除了 Null 值)
- 外键表与主键表
- 待续
1.修改表时提示:不允许修改表结构
步骤
选择菜单栏中的"工具"-"选项",在选项对话框左栏中找到"设计器",在设计器右边取消勾选"阻止保存要求重新创建表的更改"即可。
图例
注意
设计表时,尽量一次性设计成功,避免使用alter修改表,修改起来有各种约束,不容易修改。
2.将截断字符串或二进制数据。
你设置的数据类型长度(9)比你输入的数据长度(11)短
解决方法:
需要重新设置数据类型长度
3.在将 varchar 值 'null' 转换成数据类型 int 时失败。
int转换为char类型
4.插入insert 、更新update、删除drop数据失败,主外键FOREIGN KEY 冲突
问题:
1.INSERT 语句与 FOREIGN KEY 约束"FK__departmen__leade__29572725"冲突。该冲突发生于数据库"xmgl",表"dbo.staff", column 'sno'。
解决方法:
先删除该约束,插入数据后,再加上约束
5.列不允许有NuIl值,插入INSERT失败
原因:
没有设置id为标识:是
int数据类型,并且双击为:是
注意:
数据类型为int时,才可设置表规范为:是
打开SQL dbms软件,右键表------设计------列属性:
如图:
6.修改表 ALTER TABLE 语句与外键 FOREIGN KEY 约束冲突
问题:
"FK__departmen__leade__19DFD96B"冲突。该冲突发生于数据库"xmgl",表"dbo.staff", column 'sno'。
原因:
因为该Student表中是有数据的,所以增加不了外键。
解决:
创建外键中,把"在创建或重新启动时检查现有数据"改为否!!!
注意:
如果数据表中都没有数据,可以默认为是。但是数据表中都有数据才创建外键,就要把这里改为否,才能创建成功。
7.sql server中命令提示:对象名无效,但是可以执行成功
原因:
修改表结构后,使用SQL语句时,会出现列名无效,原因为SQL Server的intellisense(智能感知功能)
解决:
使用 Ctrl+Shift+R 快捷键即可
警告: 聚合或其他 SET 操作消除了 Null 值
外键表与主键表
在数据库DBMS中
外键表一般都为当前表,键为要设置的外键
主键表非当前表,键为另一个表中要设置的主键
这样更容易理解一点
待续
以上就是今日博客的全部内容了
创作不易,若对您有帮助,可否点赞、关注一二呢,感谢支持.