
SELECT column_name FROM information_schema.columns WHERE table_name='x' and column_name='y';这里是一个简短的版本使用“DO”语句:
DO $$ BEGIN BEGIN ALTER table <table_name> ADD ColUMN <column_name> <column_type>; EXCEPTION WHEN duplicate_column THEN RAISE NOTICE 'column <column_name> already exists in <table_name>.'; END; END;$$
您不能将这些作为参数传递,您需要在客户端的字符串中执行变量替换,但这是一个自包含的查询,只有在列已存在时才发出消息,如果不存在,则添加;将继续在其他错误(如无效的数据类型)上失败。
如果这些方法是来自外部源的随机字符串,我不推荐使用这些方法。不管你使用什么方法(作为查询执行的cleint端或服务器端动态字符串),它将是一个灾难的食谱,因为它打开了sql注入攻击。
总结以上是内存溢出为你收集整理的如何在PostgreSQL中添加列(如果不存在)?全部内容,希望文章能够帮你解决如何在PostgreSQL中添加列(如果不存在)?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)