我已经将Java连接到SSMS,并且可以使用以下方式从服务器调用数据:

String cell = "SELECT [Close] FROM ExcelData WHERE id_num = 3";
Statement st4 = con.createStatement();
ResultSet rs4 = st4.executeQuery(cell);

while (rs4.next())
{
    Float close = rs4.getFloat("close");
    System.out.format("%s\n", close);
}


当我将"SELECT [Close] FROM ExcelData WHERE id_num = 3"替换为"SELECT @SMA"时,我受到很多质疑:“必须声明标量变量@SMA

我不知道如何去做。

最佳答案

回答我自己的问题以帮助可能需要了解这一点的其他人...
无法完成。解决方法是在SQL中创建一个表,然后将变量插入表中。

DROP TABLE IF EXISTS SMA
CREATE TABLE SMA  (
SMA_Price DECIMAL (6,5),
)
INSERT INTO SMA VALUES (@SMA);

SELECT * FROM SMA;


然后可以从Java调用“ SELECT * FROM SMA”。

10-06 14:48