sql - 将数组插入到sql server表中

标签 sql sql-server-2008-r2

create proc InsertTagsForArticle(@ArticleID int, @TagIDsList nvarchar(max))
as
--...........

参数 @TagsList 包含以逗号分隔的标签 ID:"18,22, 23"。 如何以更合理的方式将这些ID插入到表中?

编辑:问题是如何将数组插入 到sql server 表中,而不是如何解析数组。它类似于 foreach 运算符。

最佳答案

由于 SQL Server 不支持原生数组,您无能为力。

  • 序列化这个数组并存储在一个字段中。
  • 创建子表/关系并在其中存储个人记录。

您的要求将决定什么对您更好。但通常规范化方法效果更好。

关于sql - 将数组插入到sql server表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8401369/

相关文章:

mysql - 根据近似值选择行

mysql - 带前缀的高级 MySQL 字母排序?

database - 如果我的用户帐户没有权限,如何创建DB2 数据库?

sql - 存储过程参数值记录

sql - 将存储过程的文本获取到SQL Server中的变量中

sql-server - 如何使用 CONTAINSTABLE 中的列名作为搜索条件?

php - 是否可以在分层无序列表中显示平面数据库表?

MYSQL|状态的数据类型

tsql - 从字符串转换日期和/或时间时转换失败错误

mysql - 无法将两个查询合并为一个