提问人:BANANA19 提问时间:4/26/2023 最后编辑:marc_sBANANA19 更新时间:4/26/2023 访问量:51
如何将变量中存在的现有数据与SQL Server表中的新数据连接起来?
How to concatenate exiting data present in a variable with new data in a SQL Server table?
问:
我想知道有没有办法将变量与传入数据连接起来。我目前有一个名为 TABLE-A 的表,其中包含地址变量,其中已经有数据。有一个前端应用程序,用户通过该应用程序将信息输入到此表中。我想知道有没有办法将新的传入信息与现有信息连接起来。下面是示例。
例:
表-A(原始视图)
A列 | B列 |
---|---|
John | 唐宁街12号 |
表 A(用户输入新信息后的预期视图)
A列 | B列 |
---|---|
John | 唐宁街12号;华盛顿广场公园24号; |
在预期视图中,“24 WASHINGTON SQUARE PARK”是用户输入的新地址,在表中,我们正在捕获它并将其添加到现有地址“12 DOWNING STREET”。我尝试创建一个触发器,但我们的前端不接受启用了触发器的表。因此,触发器不是一种选择。
如果有人能提供任何类型的解决方案,那就太好了。
谢谢 香蕉19
答:
0赞
Olesia Dudareva
4/26/2023
#1
如果您需要更新数据库中的任何内容,只需使用 update(您可以在 SET 部分添加额外的空格/分隔符):
UPDATE TABLE-A SET [COLUMN B] = [COLUMN B] + NEW INFORMATION
WHERE [COLUMN A] = USER
但是,如果用户通过UI删除某些内容,那将是一个问题。在我看来,这里的方法应该有所不同。如果它是数据库中的一列,则 UI 应返回当前地址的完整行。因此,您需要使用UI中的一行来更新相应的行,而无需进行任何操作。
或者还有另一种方法 - 将所有地址分开保存。结构如下:
A列 | B列 |
---|---|
John | 唐宁街12号 |
John | 24华盛顿广场公园 |
以这种格式(插入/更新/删除/选择/搜索)管理数据很容易。
评论
SELECT ColumnB + '; ' + @Variable + ';'
...或UPDATE TableA SET ColumnB = ColumnB + '; ' + @Variable + ';' WHERE ColumnA = 'condition'