SQL server中:常见问题汇总(如:修改表时不允许修改表结构、将截断字符串或二进制数据等)

SQL server中:常见问题汇总

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中

外键表一般都为当前表,键为要设置的外键

主键表非当前表,键为另一个表中要设置的主键

这样更容易理解一点

待续


以上就是今日博客的全部内容了

创作不易,若对您有帮助,可否点赞、关注一二呢,感谢支持.

相关推荐
码途行者17 分钟前
网站的SQL 注入:从攻击原理到防御措施
开发语言·sql·php
.痞老板.23 分钟前
mysql初阶--数据库设计
数据库·mysql·oracle
Decay__2 小时前
SQL Server 数据库全栈运维实战系列 — 合集索引(24 篇)
运维·数据库·sql·mysql·架构
Thanks_ks2 小时前
SQL 的 GROUP BY 与聚合函数:从会写 SELECT 到会做统计
数据库·sql·mysql·group by·数据统计·聚合函数·having
Decay__10 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
笃行35011 小时前
AI数据库的库内四层结构,KingbaseES 产品拆解
数据库
我是大猴子12 小时前
redis
数据库·redis·缓存
苏宸啊15 小时前
MySQL(一)
数据库·mysql
2603_9696948515 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
这个DBA有点耶15 小时前
库内语义构建 vs 外挂向量库:业务语义缺失,才是RAG“胡说八道”的根源
数据库·mysql·aigc