经典ASP - 如何在MySQL表中返回特定行的值

时间:2018-03-19 08:32:05

标签: mysql sql asp-classic

我有一个名为" LANGUAGE" - 用西班牙语和英语单词。

像:

ID - SPA - ENG
1 - Hoy - Hello
2 - Nombre - Name
3 - Jugar - Play

我有西班牙语单词:

SQL= "SELECT SPA FROM LANGUAGES" 
SET LANGDB = conn.Execute(SQL)

我想识别要在屏幕上打印的ID 2字(Nombre)

有可能吗?或者我需要为每个单词创建一个DB?

像:

SQL= "SELECT SPA FROM LANGUAGES WHERE ID = 2" 
SET LANGDB = conn.Execute(SQL)

韩国社交协会!

3 个答案:

答案 0 :(得分:0)

假设您正在尝试检索给定英语单词的西班牙语单词:

SELECT SPA FROM LANGUAGES WHERE ENG = 'Name"

这将返回' Nobre'

如果您想要为所有行返回两个字:

SELECT SPA, ENG FROM LANGUAGES

答案 1 :(得分:0)

所以你担心多次查询数据库中的小字会导致速度减慢。是的,这可能是一个问题。向数据库发送许多查询肯定会引入开销。

你能做什么:

  • 在IIS中创建ASP application(如果您还没有),
  • 写一个global.asa文件,
  • 添加一个Application_OnStart Sub(当您的ASP应用程序启动时,它只运行一次)
  • inside,将单个SQL查询发送到返回所有语言变量的数据库
  • 编写一个While Not rs.EOF循环(如this),将所有这些循环添加为应用程序级变量
  • 在循环中使用干净的命名方案,如Application("lang_SPA_" & rs!ID) = rs!SPA等等。

现在,您的所有语言变量都可以在您的应用程序中立即使用,因为您可以在任何地方访问Application对象。例如,Application("lang_SPA_2")将包含"Nombre"

请注意Application_OnStart只运行一次,因此当您对数据库进行更改时,需要在IIS中重新启动应用程序(这可以通过停止并启动已分配给应用程序的应用程序池来完成)。

答案 2 :(得分:0)

如何创建config.asp文件。首先将数据库中的语言选择值保存为0或1.然后在config.asp文件内写入条件,如 -

if lang = 0 then 'eng
  Session("ID_1") = "Hello"
  Session("ID_2") = "Name"
elseif lang = 1 then 'spanish
  Session("ID_1") = "Hoy"
  Session("ID_2") = "Nombre"
end if

现在,您可以使用这些会话。