我试图设置我的路线,然后包含一个运行查询的“内容”文件
declare @Section TABLE
(
Section varchar(50) NULL
)
INSERT INTO @Section (Section) VALUES ('BB')
INSERT INTO @Section (Section) VALUES ('1 ')
INSERT INTO @Section (Section) VALUES ('AB 1')
INSERT INTO @Section (Section) VALUES ('A21')
INSERT INTO @Section (Section) VALUES ('B2')
INSERT INTO @Section (Section) VALUES ('A11')
INSERT INTO @Section (Section) VALUES ('B20')
INSERT INTO @Section (Section) VALUES ('B21')
INSERT INTO @Section (Section) VALUES ('AB10')
INSERT INTO @Section (Section) VALUES ('A10')
SELECT Section
FROM @Section
SELECT Section
FROM @Section
ORDER BY Section
--LEFT(Section,PATINDEX('%[0-9]%',Section)-1), -- alphabetical sort
-- CONVERT(INT,SUBSTRING(Section,PATINDEX('%[0-9]%',Section),LEN(Section))) -- numerical sort
SELECT Section
FROM @Section
ORDER BY LEFT(Section,case when PATINDEX('%[0-9]%',Section) < 1 then 1 else PATINDEX('%[0-9]%',Section) end -1), -- alphabetical sort
case when PATINDEX('%[0-9]%',Section) < 1 then 0 else CONVERT(INT,SUBSTRING(Section,PATINDEX('%[0-9]%',Section),LEN(Section))) end -- numerical sort
Section
--------------------------------------------------
BB
1
AB 1
A21
B2
A11
B20
B21
AB10
A10
Section
--------------------------------------------------
BB
1
A10
A11
A21
AB 1
AB10
B2
B20
B21
然后是参与者档案:
app.get('/participants', function(req, res, next) {
var participants = require('./content/participants');
});
此处的目标是点击/参与者路线,然后运行选择查询并发送查询结果。
答案 0 :(得分:0)
您需要将该代码放在导出的函数中,以便您可以使用请求&amp;每次收到请求时都会回复。
这意味着require()
在路由处理程序中没有任何意义。
答案 1 :(得分:0)
require()
在其他语言中的效果不如source(..)
或execute
。其中的代码仅在首次需要时执行一次。然后缓存模块。
您需要使用module.exports
等
要做到这一点:
participants.js
:
const db = database.connect('olmsdb.1sserver.com', 'campyio');
exports.getParticipants = function() {
return db.raw('SELECT * FROM participants');
}
app.js
:
var participants = require('./content/participants');
app.get('/participants', function(req, res, next) {
participants.getParticipants().then(function(results) {
res.setHeader('Content-Type', 'application/json');
res.send(JSON.stringify(results));
next();
});
});