是否有反正更改域类型并将类型更改为新类型?我有一列使用具有VARCHAR(25)类型的域,并希望将长度增加到150.更改域名更改类型
Q
更改域名更改类型
1
A
回答
1
创建新域,更改所有表并删除旧域。
1
一种方法是
- 数据库脱机,
- 转储模式为文本,
- 编辑文本,更改域的类型 为varchar(150),
- 然后最后从 文本重新加载模式。
这只是一个草图。在您对真实数据库进行尝试之前,先在沙箱中练习。
1
这是不可能的,但你可以让它成为可能。
由于事情的原因,你是别名varchar(25)作为你的域名。
varchar(25),varchar(50),varchar和text在Postgres中的存储方式都是一样的。唯一的区别是长度检查,这增加了前两个开销。
现在,你不能改变一个域的类型,但你可以改变它的约束 - 更好的做法是把约束放在域上是允许在不需要表重写的情况下改变它们的那些“技巧”之一。
- 创建一个新的领域,说SHORT_STRING,这是一个别名为VARCHAR与检查约束
- 改变适用表列并设置其类型为这个新的领域
这样,如果您有第二个想法并决定将最大长度更改为40或60,或者将其更改为25,则无需重写表格即可完成此操作。
相关问题
- 1. Htaccess ..更改域名
- 2. 更改Grails域类的显示名称
- 3. 更改laravel域名/ public到域名/
- 4. 将localhost更改为域名
- 5. 更改域名服务器
- 6. 更改我的域名
- 7. 更改artifactory的域名URL
- 8. Weblogic 12c更改域名
- 9. 域名和iP更改
- 10. 更改类型帧
- 11. Grails:如何更改域类
- 12. 是否可以更改匿名类型?
- 13. 更改子域/域?
- 14. 更改self.view的类类型
- 15. 更改Cookie域
- 16. 更改域值
- 17. 更改型号名称轨
- 18. 更改为新域名后Wordpress后guid不会更改
- 19. 更改Joomla网站上的域名,并自动更改链接?
- 20. PrestaShop MultiShops类名更改
- 21. Onclick更改类样式值而不更改类名称
- 22. response.sendredirect()更改方法类型
- 23. 更改项目类型
- 24. numpy masked_array mask更改类型
- 25. NSArray更改类型的NSNumber
- 26. NHibernate - 更改子类型
- 27. 更改数据类型
- 28. 更改内容类型WebFaultException
- 29. respond_to更改响应类型
- 30. 更改标题类型
您可以在http://DBA.stackexchange.com上提出此问题。 – Jonas 2011-06-12 20:49:33