Insert语句字段名用变量表示

时间:2022-12-12 11:52:23
insert into 表(字段名)values(),在这个语句中这个字段名是否可以用变量表示,
是这样的一个问题,又n张图片,每张图片在数据库内都有一个id,是一条记录,在显示页面显示所有图片,用户可以选择多张图片,而每个选择的用户都有一个id,现在需要记录每个用户选择的图片并把选择的图片id记录到数据库内,由于每个用户一次可以选择多张图片,数量不定,在插入时不好插入,谁有解决的办法,或有不用插入的另外的解决方案,感激不尽啊,
分数不多,全给了。

7 个解决方案

#1


可以呀,你先用一个string变量来拼装,拼装的时候,sql语句中的一部分就可以使用变量了。

#2


string sql="insert into Tb("+a+") values('')";
参数可使用sqlparameter
遍历获取选择的图片ID

#3


可以拼sql

set @col=你的字段名
set @sql='insert into 表 ('+@col+ ') values(id1,id2,...)'
exec(@sql)

#4


拼接语句就可以  
出现这种业务需求,只能说明你的数据表设计不合理,能贴出表结构看下不

#5


string sql="insert into Tb("+a+") values('')";

#6


string sql="insert into Tb("+a+") values('')";
参数可使用sqlparameter
遍历获取选择的图片ID
同意

#7


哈哈,已经解决了,想到了两种方法,一种是重新设计数据表,缺点产生冗余,但实现起来较简单,第二种不改变数据表,采用数组解决,但比较繁琐,不容易实现,我选择的是第一种。谢谢各位的回答

#1


可以呀,你先用一个string变量来拼装,拼装的时候,sql语句中的一部分就可以使用变量了。

#2


string sql="insert into Tb("+a+") values('')";
参数可使用sqlparameter
遍历获取选择的图片ID

#3


可以拼sql

set @col=你的字段名
set @sql='insert into 表 ('+@col+ ') values(id1,id2,...)'
exec(@sql)

#4


拼接语句就可以  
出现这种业务需求,只能说明你的数据表设计不合理,能贴出表结构看下不

#5


string sql="insert into Tb("+a+") values('')";

#6


string sql="insert into Tb("+a+") values('')";
参数可使用sqlparameter
遍历获取选择的图片ID
同意

#7


哈哈,已经解决了,想到了两种方法,一种是重新设计数据表,缺点产生冗余,但实现起来较简单,第二种不改变数据表,采用数组解决,但比较繁琐,不容易实现,我选择的是第一种。谢谢各位的回答