2

我有一个存储过程,它将获取一个人的姓氏,并在她更新表单上的姓氏后将其插入到别名下。但是我的老板希望每次有人更改她的名字时保留所有以前的姓氏。我在 SQL 表中有以下数据。

+----------------+---------------+----------------+------------------+
     PeopleID         FirstName       LastName            Alias
+-----------------+--------------+----------------+------------------+
     002112             Judy            Smith              Hall

假设,朱迪再次将她的姓氏更改为金斯利。是否可以抓住她以前的姓氏 Smith 并将其插入 Hall 后面的Alias下?我在想也许它可能看起来像这张桌子,但不知道如何。

+----------------+---------------+----------------+------------------+
     PeopleID         FirstName       LastName            Alias
+-----------------+--------------+----------------+------------------+
     002112             Judy          Kingsley         Hall, Smith
4

2 回答 2

2

我建议您在表中保存当前值并创建一个历史表来保存以前的姓氏。像这样的东西:

CREATE TABLE last_name_history
(
   PeopleID char(6),
   from_date datetime,
   to_date datetime,
   alias char(25)
) 
于 2013-07-11T18:21:48.257 回答
-1

检索字符串数组中的所有值。然后将所有别名保存在一个用逗号分隔的字符串中。让我们说“别名”是一个字符串数组,其中存储了不同的别名。现在,做这样的事情将它存储在一个字符串中-

for(int i=0;i<alias.length;i++)
    {
                String str="";
        if(i==0)
    str+=alias[i];
        else
            str+=","+alias[i];
    }

然后将字符串“str”存储在“别名”列中。

于 2013-07-11T18:35:27.120 回答