SQL提示是一款实用的SQL语法提示工具. SQL提示根据数据库的对象名称,语法和代码片段自动进行检索,为用户提供合适的代码选择。自动脚本设置使代码简单易读,当开发者不大熟悉脚本时尤其有用. SQL提示安装即可使用,能大幅提高编码效率。此外,用户还可根据需要进行自定义,使之以预想的方式工作。
本教程解释了在向现有表添加非可空列或将包含空值的列更改为非可空时可能遇到的问题。他演示了一个可以安全部署此类更改的迁移脚本。本文是教程的后半部分内容,内容紧接前文()~
所以,效果很好。
现在是时候将所有这些更改推广到只有设计版1本,没有位置表格,CountingWords没有语言列和可空词列的人员。
推出新位置表,因为它是该表的第一个版本,不是真正的问题(参见清单3)。但是,将更改推广到新CountingWords表需要添加一个TheLangauge不允许NULL列的词,并且非空在两种情况下都要更改列,以避免我们已经讨论过的问题。
我们还希望我们的迁移脚本能够正常工作,无论我们是否正在更新现有的v1 CountingWords,或者我们需要从头开始构建表的v2。此外,如果脚本意外重新运行,我们不希望脚本造成任何伤害或触发错误。
另外,在任何一种情况下,我们还需要将该TheLangauge列设置CountingWords为外键自动更新以响应父键的更新或删除,以及更改主键。作为最后一步,我们将添加11日至20日的旧威尔士语单词,这是我们以前不知道的。
以下是迁移脚本,它将CountingWords从v1迁移到v2,或者从头开始创建v2,如果意外重新运行,这将不会造成任何损害。在尝试之前,要么删除CountingWords表,要么重新运行清单1以重新建立表的v1。
声明@Language NVARCHAR(30)=拔骺膊嫉摹? 如果不存在 (从dbo.Location选择* 也许像@Language )插入dbo。位置(语言) 值(@Language);/*现在我们可以添加在任何其他的方法计算 二十,我们想要*/如果不存在(SELECT * FROM CountingWords也许像@Language) 插入CountingWords(价值,文字,语言) 选择,价值词,@Language 从 ( 值(“严”,1),(tyan, 2), (“tethera”, 3), (‘methera’, 4), (5)“皮条客”(“sethera”, 6), (‘lethera’, 7), (hovera, 8), (9)“dovera”(“迪克”,10),(yan-a-dick, 11), (tyan-a-dick, 12), (13)“tethera-dick”(“nethera-dick”, 14), (bumfit, 15), (16)“yan-a-bumfit”(“tyan-a-bumfi t”, 17), (tithera-bumfit, 18), (19)“methera-bumfit”(“giggot”, 20) ),f(词,价值); 以前去>
现在我改变了主意。它不应该被称为“老威尔士”,而是“古老的威尔士”。真可惜,但我们现在可以测试我们的外键约束。
更新dbo。位置设置语言=肮爬系耐俊?也许像“老威尔士” 从位置选择* SELECT * FROM CountingWords
就像变魔法一样,所有引用都已更改。现在我有一个可以使用的数据库!