永发信息网

在SQL中修改非主键列变成非空不好用

答案:2  悬赏:70  手机版
解决时间 2021-11-28 20:08
  • 提问者网友:美人性情
  • 2021-11-27 22:24
在SQL中修改非主键列变成非空不好用
最佳答案
  • 五星知识达人网友:酒安江南
  • 2021-11-27 22:54
alter table T1 modify C1 null;
C1是你要改的字段追问我在里面已经插了一排值,分别是1,1,1,1,1
这时候是不是不为空了?
我试了你的方法,我在你的UPDATE中后面加了一个分号,提示LEIBIE前后有错误。。。。。追答你用的什么数据库。你是想把原来是null的改为not null吧
alter table T1 modify C1 not null;
全部回答
  • 1楼网友:第四晚心情
  • 2021-11-27 23:25
首先你要把原先为null的值改为非空才行,执行该语句
update daoju1 set leibie ='' where leibie is null

然后再执行
alter table daoju1 alter column leibie varchar(10) not null ;追问我在里面已经插了一排值,分别是1,1,1,1,1
这时候是不是不为空了?追答你用这句验证下就知道了
select * from daoju1 where leibie is null
如果查不出值,那就是不为空了追问试过了SELECt,果然是查不出值,
里面其实也只有一行值表里有数据是null的吧,把它们改成''的咯追问没有NULL。。。。。就是提示LEIBIE前后有错误追答

你再查查是不是表名,字段名有错误,语句肯定没问题的,我都拿到数据库执行了,没有任何问题。看看我的语句!

追问select * from daoju1 where leibie is null

可以运行,证明语句和字段都没有错

是不是PB里面不让看,我看可视化的界面上可以改COLUMN名,VA的CHAR的长度,就是主键非空什么的不让改,是PB自己数据库问题么?追答我建议,你重新建表,旧的表就删掉吧,反正都没数据!追问

这是我建的第三个表。我已经删过以前的表。同样的表建了两次了。以前建表没有主键。无法修改。我现在重建了一个表,还是这样。一定是有原因的,是PB自己的问题么?还是我的问题。。。。。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯