小编Sim*_*mon的帖子

MySQL查询中输入参数的语法

我们最近将数据库从MSSQL切换到MySQL,使用参数的查询不再起作用.

这是MSSQL中的查询示例:

SELECT * FROM users u WHERE u.ID = :id
Run Code Online (Sandbox Code Playgroud)

通常,参数浏览器会弹出并询问我的值为:id,但在MySQL中我收到此错误:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在':id'附近使用正确的语法

我试过用@或?而不是:它不起作用.

在此先感谢您的帮助.

mysql sql

7
推荐指数
1
解决办法
4万
查看次数

MySQL错误的输出与IN子句和参数

我在MySQL中查询很困难.

我正在使用Delphi XE,我正在向MySQL发送带有一些参数的查询.以下是查询的示例:

SELECT * FROM users u WHERE u.id IN (:idUsers);
Run Code Online (Sandbox Code Playgroud)

':idUsers'是接收我用Delphi发送的参数的变量,这是一个包含格式的字符串,例如:1,2,3

问题是,使用此字符串,我只收到第一个用户(id = 1).从我所看到的,就像MySQL一样,在我发送的字符串的开头和结尾添加一些引号(''),就好像它是'1,2,3'而不是1,2,3.我试过这个选择:

SELECT * FROM users u WHERE u.id IN ('1,2,3'); 
Run Code Online (Sandbox Code Playgroud)

它确实只返回第一个用户..

我在MSSQL中有一个函数,它正在拆分我发送的字符串并返回一个临时表,但我们最近切换到MySQL,从我读到的,MySQL不允许返回一个表.

任何人都有如何解决这个问题的线索?我一直在废弃Web以获得答案,并且没有找到针对此特定问题的答案.

谢谢您的帮助.

mysql delphi parameters delphi-xe

5
推荐指数
1
解决办法
827
查看次数

标签 统计

mysql ×2

delphi ×1

delphi-xe ×1

parameters ×1

sql ×1