在后端可以写sql语句吗?
你知道,当创建一个动态网站时,会有大量的SQL语句。我想知道是否可以在类文件中只包含2-3个SQL查询,然后在后端编写其余的SQL查询?
也许像这样。
public DataTable SelectAllFrom(string query)
{
string query = @"SELECT * FROM ?query";
using (var cmd = new MySqlCommand(query))
{
cmd.Parameters.Add("?query", MySqlDbType.VarChar).Value = query;
return objConn.getData(cmd);
}
},然后在代码隐藏部分:
string query = "tblAA WHERE fldAA=1";
var list = _objMethods.SelectAllFrom(query).Rows;发布于 2011-03-02 17:17:56
你能做到,但这不是很好的练习。查询越分散,与演示文稿和业务逻辑代码混合的SQL越多,维护起来就越困难。你的问题让你听起来像是在使用一种分层/分层的体系结构,而且这些架构存在的原因是很好的。在没有任何组织的情况下,我会尽量避免在代码中使用SQL;在短期内,这可能是快速而容易的,但可能会在稍后导致问题。
发布于 2011-03-02 17:17:50
分离SELECT * FROM并不能为您节省太多的重复,如果因为加入或效率原因,您不想使用SELECT *,则会给您带来麻烦。
您希望避免代码中的重复,这是令人钦佩的,并且将运行查询的机制与查询本身隔离开来是很好的。但这有点太难了。从总体上看,请看ORM。
发布于 2011-03-02 17:10:29
您可以这样做,但是当查询被拆分到不同的对象时,维护起来就更加困难了。添加,您有联接,可能不想也包括连接查询。个人而言,将查询放在一起是有意义的,并将责任保持在一个层次上。
此外,您还可以创建一个助手,以使数据库对象进程更易于使用。
HTH。
https://stackoverflow.com/questions/5170795
复制相似问题