更改sqlserver表列以添加“非空”'约束

时间:2016-08-30 21:14:41

标签: sql-server tsql constraints alter-table notnull

我想在表中的现有列中添加not null约束。在做了一些合并数据的操作之后。我想改变表以添加约束非空。但是,我确实想首先验证NotNULL约束的存在,否则在运行脚本的后续部分。该文件将抛出错误。那应该是什么样的方式。

我想尝试类似的事情:

IF NOT EXISTs (Select..   )

BEGIN

ALTER table ....

END

2 个答案:

答案 0 :(得分:0)

也许我没有正确理解这一点,但是没有必要检查存在。如果您愿意,可以一次又一次地将表格的列改为function doEverything(link) { // submit integration report document.getElementById('viewIntegrationReport').submit(); // disable link disableDownloadReportLink(link); // enable link after 4 seconds setTimeout( function() { enableDownloadReportLink(link); }, 4000 ); }

试试这个:

<a href="#x" id="downloadReportLink" title="This function will provide you a 30 day download of all your eSign transactions." onclick="doEverything(this);"><span>Export E-Sign Information</span></a>

- Ups,ID不应为NULL,但这会引发错误

NOT NULL

- 首先要纠正缺失值

CREATE TABLE Test(ID INT,SomeValue VARCHAR(100));
INSERT INTO Test VALUES(1,NULL),(2,'Value 2'),(NULL,'Value NULL');

- 现在可行了

--ALTER TABLE Test ALTER COLUMN ID INT NOT NULL;

- 再次发表此声明没问题。无需检查是否存在...

UPDATE Test SET ID=3 WHERE SomeValue='Value NULL';

- 清理

ALTER TABLE Test ALTER COLUMN ID INT NOT NULL;

答案 1 :(得分:0)

为此,您可以在for index, frame in enumerate(ImageSequence(im)): imarray = np.array(frame) Blur = cv2.medianBlur(imarray,5) im = Image.fromarray(Blur) im.save('corrected_{}.tif'.format(index)) 命名空间中使用视图。这样的事情。

sys

然后select c.name,t.name,c.is_nullable from sys.all_columns c inner join sys.tables t on c.object_id=t.object_id where t.name = 'MyTable' and c.name = 'myCol';