SQLserver各种报错解决:建表后更改列,显示不允许保存更改;‘go‘附近有语法错误; 附加数据库时出错;列名或所提供值的数目与表定义不匹配

本文记录了解决数据库学习过程中遇到的四个问题:建表后修改列需取消阻止设置、去除go后的语法错误、附加数据库时的权限问题和列名或数据类型匹配错误。提供详细步骤帮助读者快速解决问题。
摘要由CSDN通过智能技术生成

  前言

今天学习数据库时,发生了各种问题,在网上查了很久,终于都解决了。先声明,我只是抱着记录以及帮助大家的心态写这个文章,参考了多篇文章,如果你觉得我抄袭,那容我真诚地道声歉。

1.建表后更改列

 建表后更改列,显示不允许保存更改,您所做的更改要求删除并重新创建以下表。

*解决方法:工具选项卡 ——> 选项 ——> 设计器,去掉“阻止保存要求重新创建表的更改”的勾选就行了。

2.'go'附近有语法错误

不加'go'可以运行,但加了后报'go'附近有语法错误。应该是字符问题,常见于复制粘贴文本而导致的问题中。

解决方法:把你的A.SQL用记事本打开,新建一个TXT,重命名为B.SQL,把A.SQL里的内容复制到B.SQL,最后在SMSS新建一个查询,将B.SQL粘贴上去执行即可。

加了GO后报 'GO' 附近有语法错误-CSDN博客

3.附加数据库时出错

添加数据库失败。操作系统错误 5:"5(拒绝访问。)"。

我的解决方法:打开SQL Server Management Studio时鼠标右键选择“以管理员身份运行”即可。

4.列名或所提供值的数目与表定义不匹配

解决方法:

1、insert语句没指定列时,默认插入全部列,但是插入的列数量和表格列数量不一致,导致了报错。插入时指定列。

2.可能是你建这个数据库时表头的定义类型、约束等与你插入数据的类型不同而导致的,或者你建的两张表有一个相同的属性(如“学号”),但是你给他们的定义类型不一样(如:一个char6,一个smallint),导致后面数据输不进去,建议检查下之前建表时的代码。(ps:因为我就是因为这个粗心的原因导致的)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

君莫笑swift

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值