当前位置:首页 » 编程语言 » sql传递参数

sql传递参数

发布时间: 2024-10-26 20:06:57

sql 中如何在函数中传递表名参数

我查遍网络找不到,2020.06.28 18:45原创一个目前你能找到的唯一权宜之计:
因sql的函数本身不支持对实体表进行增、删、改,所以对实体表进行的insert、update、delete均不可用、另外exec也被禁用了,因为动态表名和动态字段值不会太多,所以想到写枚举解决。
--如果函数返回表为@ab table (a1 varchar(100), a2 varchar(100))
--如果表名为@tableName
if @tableName='表1'
insert into @ab select a1,a2 from 表1 where ...
if @tableName='表2'
insert into @ab select a1,a2 from 表2 where ...
如果有字段名参数为@fieldName,字段值参数@fieldValue
if @fieldName='a1'
delete from @ab where a1 not like '%' + @fieldValue + '%'
if @fieldName='a2'
delete from @ab where a2 not like '%' + @fieldValue + '%'
--对@ab的其它业务逻辑
...
return

② 怎么在mybatis的动态sql中传递int类型参数

在MyBatis中可以用以下的方式来传递多个参数1. 用java.util.Map来传递, Code 如下public List<User> getAllUsersByUserName(String username, int start, int limit){ Map<String,Object> params = new HashMap<String, Object>(3); params.put("username",username); params.put("start",start); params.put("limit",limit); return userMapper.getAllUsersByUserName(params); } 对应的XXMapper.xml文件中如下:<select id="getAllUsersByUserName" parameterType="map" resultType="User"> SELECT u.* FROM User u WHERE u.username LIKE #{username} '%' LIMIT #{start}, #{limit} </select>2. 用JavaBean的方式来传递, Code如下:public List<User> getUsersByUserName(String username){ User user = new User(); user.setUsername(username); return userMapper.getUserByUsername(user); }对应的XXMapper.xml文件中如下:<select id="getAllUsersByUserName" parameterType="User" resultType="User"> SELECT u.* FROM User u WHERE u.username = #{username} </select>OK, 就介绍这两种方法吧!!!

③ sql语句中使用关键字in,该如何传递参数

请将参数拼接到sql脚本中,不然你直接的结果不是你想要的哦!

例:

declare@avarchar(100)
set@a='34,12,335'
declare@sqlvarchar(max)
set@sql='select*fromtableNamewherekeyIdin('+@a+')'
print(@sql)
exec(@sql)

请试一试,如有疑问,及时沟通!

④ SQL映射传递参数比需要的多

你好,很高兴回答你的问题。

不会因为map中有多余参数而报错,只要不少就行。

反而会因为图中红线标识的位置多了一个逗号而报错。

如果有帮助到你,请点击采纳。

我解答的大部分是软件开发新人遇到的问题,如果有兴趣,可以关注我。

热点内容
修改手机广讯通服务器地址 发布:2024-10-26 22:23:04 浏览:325
鸿蒙系统看存储分布 发布:2024-10-26 22:18:50 浏览:795
libzip压缩解压 发布:2024-10-26 22:13:20 浏览:577
云服务器优势硬件资源隔离 发布:2024-10-26 22:02:23 浏览:846
jdk源码包 发布:2024-10-26 22:02:21 浏览:560
如何在dns里面新建一个服务器 发布:2024-10-26 21:49:36 浏览:875
万宝广州压缩机有限公司 发布:2024-10-26 21:45:46 浏览:221
python赋值函数 发布:2024-10-26 21:35:26 浏览:950
微信指纹支付多少钱要用密码 发布:2024-10-26 20:56:04 浏览:808
flash游戏反编译 发布:2024-10-26 20:43:59 浏览:711