【发布时间】:2015-06-25 13:34:35
【问题描述】:
我在 SQL Server 中编写了一个查询,该查询主要由不懂 SQL 的人运行,每次运行查询时,有两个区域必须输入不同的字符串或日期。截至目前,我只是写了它,以便您在查询顶部输入信息并将其存储为变量。有没有办法让 SQL 提示运行查询的人输入数据?下面是我正在谈论的代码的摘录。
declare
/*ENTER ACCOUNTING MONTH*/
@amon VARCHAR(2) = '05',
/*ENTER INVOICE DATE IN MM/DD/YYYY FORMAT*/
@invdate DATE = '05/31/2015'
~~
rest of the code
~~
declare @sumA numeric(25, 5), @sumB numeric(25, 5), @ratio numeric(25, 5)
select @sumA = sum(amnt) from accnt where accno = '1152'
select @sumB = sum(amnt) from acc1152
update acc1152 set amnt = amnt * (@sumA/@sumB),
amon = @amon,
invdate = @invdate,
ven = '1152',
code = '1152',
invno = 'INVENTORY'
那么 SQL 是否可以提示用户输入 @amon 和 @invdate 的值?除了我只是有评论行告诉他们这样做吗?
【问题讨论】:
-
如果用户输入'drop database databaseName'会很有趣。制作一个将提示用户输入的应用程序...
-
这很有趣,但很明显是谁干的,所以我不担心会发生这种情况。什么样的应用程序?我唯一真正的编码知识是基本的 SQL。
-
不,这是不可能的。 SQL Server 不是前端。它是一个数据库服务器。这不是访问。如果你想要一个提示,它必须来自一个应用程序。
-
好的,谢谢。有什么建议我应该从哪里开始?
标签: sql-server variables command-prompt prompt