不特指某一种语言.
两张表, 用户表和成绩表
用户表:
userid, name, age
成绩表:
testid, userid, scores, time
select = select('userid', '12');
data = {'name': 'Jim'};
write = query(select, data);
select = select('userid', '13');
data = {'name': 'Sam', 'age': '21'};
write = query(select, data);
select = select('userid', '13');
data = ['name', 'age'];
read = query(select, data);
select = select('userid', '13');
data = {'find': 'test', 'field':['scores', 'time']};
read = query(select, data);
如果这个东西加上比不加好, 那么这样写合理吗?
1
zjqzxc 2015-08-08 20:31:18 +08:00 1
消灭零回复。。
好吧,看了足足3分钟还没看明白楼主要干嘛。。(楼主这不给一点儿文字描述就说什么好不好,这个东西是啥呢?还有哈,楼主这12行数据库操作语句是啥语言的,,看起来怪怪的) 楼主的意思是指定了一个用户表中的一个userid,然后再找出他的名字,再在成绩表中找出他某此考试的成绩,大概是这个意思吧。 但是,我还是不明白这个好不好指的是啥。 目前是: step1:SELECT name,age FROM 用户表 WHERE userid=13 step2:SELECT scores,time FROM 成绩表 WHERE userid=13 AND testid=test 是这个意思吧 |
2
realpg 2015-08-08 20:38:03 +08:00 1
|
3
xierch 2015-08-08 21:18:37 +08:00 1
我也没看懂,好难受..
|
4
lujiajing1126 2015-08-08 21:34:32 +08:00 1
应该是说ORM吧?
楼主这写的是什么奇怪的语言。。看上去符合js的语法 |
5
zonghua 2015-08-08 21:44:32 +08:00 via iPhone 1
@lujiajing1126 应该是python,java web里面的service层和一些node里面的proxy层是一致的吗?
|
6
lujiajing1126 2015-08-08 21:49:29 +08:00 1
@zonghua node的proxy层是指什么?
|
7
rming 2015-08-08 21:53:05 +08:00 1
楼主说的 query builder么?
|
8
9hills 2015-08-08 22:36:16 +08:00 via iPad 1
不合理,不解释
|
9
zonghua 2015-08-08 22:46:17 +08:00 1
|
10
qiayue 2015-08-08 22:59:16 +08:00 1
select = select('userid', '12');
data = {'name': 'Jim'}; write = query(select, data); 修改用户表 userid 为 12 的记录的 name 为 Jim select = select('userid', '13'); data = {'name': 'Sam', 'age': '21'}; write = query(select, data); 修改用户表 userid 为 13 的记录的 name 为 Sam,age 为 21 select = select('userid', '13'); data = ['name', 'age']; read = query(select, data); 从用户表取出 userid 为 13 的用户的 name 和 age select = select('userid', '13'); data = {'find': 'test', 'field':['scores', 'time']}; read = query(select, data); 没太明白,大概是从成绩表取出 userid 为 13 的记录的 scores 和 time ? 依然不知道楼主想问的是什么,什么东西加上还是不加? |
11
lujiajing1126 2015-08-08 22:59:36 +08:00 via Android 1
@zonghua 嗯,这个应该和service的思想类似的
不过叫proxy只是写代码的人起的吧?并没有明确的标准 |
12
yuankui 2015-08-08 23:07:07 +08:00 1
你能表达清楚你的问题么?
你这是对回答者的不尊重 |
13
omengye 2015-08-09 00:56:53 +08:00 via Android 1
看上去是orm之类的思想,不直接去写sql,用方法去拼接生成。不好说好不好…得看实际情况吧。
|
14
iugo OP |
15
realpg 2015-08-09 09:43:19 +08:00
@iugo
select = select('userid', '12'); 我学历低你别骗我,你写成 select = where('userid', '12'); 我觉得不会有人看不懂…… 各位看不懂的,各位李伟呢 |
16
iugo OP @realpg
当时想的可能会有这样的用法: select = select('userid'); data = ['name', 'age']; read = query(select, data); 取出所有人的名字和年龄 |
17
jarlyyn 2015-08-09 10:43:29 +08:00
|
18
neoblackcap 2015-08-09 10:57:29 +08:00
据我所知,Python里面的SQLAlchemy框架是有泛型的,可以完成你这样的需求。
|
19
mahone3297 2015-08-09 11:14:11 +08:00
orm?
|
20
lightening 2015-08-09 11:19:31 +08:00
我觉得楼主说的就是 ORM ……
|
21
rming 2015-08-09 11:46:01 +08:00
|
22
xierch 2015-08-09 14:26:11 +08:00 via Android
关系型数据库在 table 之上还有一层 view 吧
直接查询 view 的话就不用 join 了? |
23
workwonder 2015-08-10 07:56:07 +08:00 via Android
Try Django
|