添加新列时更新旧记录
Update older records when a new column is added
在我的系统中,客户会填写他们的信息来注册一个帐户。对于新注册,记录将包含一个新的复选框选项。
我的问题是,如何更新旧记录,以便它们包含已添加的复选框选项的选中值?
我的主管建议我修补数据,但我不确定从哪里开始。
我想我明白你的问题了。您需要向现有 table 添加几个布尔字段,并且 DEFAULT 值为 TRUE。
ALTER TABLE TABLE1 add checkField bit default 1
您需要将相应的字段映射到 UI 中的复选框。对于现有客户端,它将检查该字段是否在数据库中设置为真。
我假设您想向现有 table 添加一个新的位列,并希望所有现有记录中的值都为 1。
为此,您首先创建新列,然后将所有现有记录设置为 1
alter table MyTable
add CheckedField bit
update MyTable set CheckedField = 1
如果新列是强制性的,那么您可以这样做:
alter table MyTable
add CheckedField bit not null default (1)
在我的系统中,客户会填写他们的信息来注册一个帐户。对于新注册,记录将包含一个新的复选框选项。
我的问题是,如何更新旧记录,以便它们包含已添加的复选框选项的选中值?
我的主管建议我修补数据,但我不确定从哪里开始。
我想我明白你的问题了。您需要向现有 table 添加几个布尔字段,并且 DEFAULT 值为 TRUE。
ALTER TABLE TABLE1 add checkField bit default 1
您需要将相应的字段映射到 UI 中的复选框。对于现有客户端,它将检查该字段是否在数据库中设置为真。
我假设您想向现有 table 添加一个新的位列,并希望所有现有记录中的值都为 1。 为此,您首先创建新列,然后将所有现有记录设置为 1
alter table MyTable
add CheckedField bit
update MyTable set CheckedField = 1
如果新列是强制性的,那么您可以这样做:
alter table MyTable
add CheckedField bit not null default (1)