首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >知道为什么运行alter列会导致列从“null”变为“null”吗?

知道为什么运行alter列会导致列从“null”变为“null”吗?
EN

Stack Overflow用户
提问于 2011-02-08 04:34:14
回答 2查看 140关注 0票数 1

我正在大量更新Server数据库。我将我们所有的numeric(38,0)列更改为int (是的,Server脚本是从int脚本创建的)。

使用SMO和C# (我是一个sw工程师),我成功地生成了非常好的脚本,就像那样。

除了一个特定的问题外,所有这些都很好地工作:

当我打电话给你的时候

代码语言:javascript
复制
ALTER TABLE [myTable] ALTER COLUMN [columnA] INT

它还决定将列从 NULL更改为NULL。当然,这是一个很大的问题,因为我需要为这些特定列上的大多数表重新生成主键。

显然,我有很多选项使用SMO找出哪些列是主键,并在更新数据类型后或更新数据类型时强迫它们不为NULL,但我真的很好奇是什么导致了这一点。

致以敬意,

埃里克。

EN

Stack Overflow用户

回答已采纳

发布于 2011-02-08 04:38:30

因为在NOT NULL的缩写中,缺省值为NULL。

代码语言:javascript
复制
ALTER TABLE [myTable] 
   ALTER COLUMN [columnA] INT NOT NULL
票数 4
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4929575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档