我有一个包含三列(id,name,age)的表。我想保留名称和ID相同,但删除所有年龄数据,并能够重新分配年龄。
即。我想只清除一列中的数据,但不删除整列。
我正在使用sinatra,datamapper和postgresql。
答案 0 :(得分:1)
以编程方式,您可以执行以下操作:
@myvariable = MyModel.all
@myvariable.map {|m|
m.update(:age => nil)
}
有关Datamapper的更多信息,请访问:http://datamapper.org/docs/
或者,如果您想手动执行此操作,如果您的数据库位于Heroku上,则可以连接到Heroku上的数据库实例,如下所示:
heroku pg:psql
然后你将连接到数据库,你可以输入像Gus建议的那样的SQL:
update table_name set age = NULL
如果您的应用程序不在Heroku上,并且您只是连接到本地postgresql实例,那就是这样:
psql -d your_database -U your_user
有关psql的更多信息,请访问:http://www.postgresql.org/docs/9.2/static/app-psql.html