由小类获取的大类
a表aid atitle
1 大类一
2 大类二
3 大类三
.
.
n 大类N
b表
bid aid btitle
1 1 小类一
2 1 小类二
3 2 小类三
.
.
.
b.aspx.cs中主要代码
string Id;
protected void Page_Load(object sender, EventArgs e)
{
Id = Request.QueryString["id"];
}
//显示当前小类
public string sclass()
{
//连接数据库
SqlCommand cmd = new SqlCommand("SELECT * FROM b where bid='" + Id + "'",
objConnection);
//读出数据
}
//显示和该当前小类有相同aid的小类
public string s2class()
{
//连接数据库
SqlCommand cmd = new SqlCommand("这里的SQL语句怎么写呢?,
objConnection);
//读出数据
}
b.aspx中主要代码
//显示当前小类
<%=sclass()%>
//显示和该当前小类有相同aid的小类
<%=s2class()%>
请看我上面数据库结构和相关代码,我先实现的是如上面b.aspx代码中要求的,请问第二个函数中s2class,这里的SQL语句该怎么写呢?,或者我是否可以在sclass中获取到当前小类的aid,赋值给一个参数,然后传到下面的S2CLASS中来,请问该怎么做呢?谢谢 --------------------编程问答--------------------
--------------------编程问答-------------------- "select b1.* from b b1,b b2 where b1.aid=b2.aid and b1.bid<>b2.bid and b2.bid='" + Id + "'" --------------------编程问答-------------------- 把aid 作为 sclass() s2class() 的参数.
SqlCommand cmd = new SqlCommand("SELECT * FROM b where aid=(select xx.aid from b as xx where xx.bid='" + Id + "')'");
另外,尽量使用参数化查询.并且尽量避免使用select * 的查询, 需要几个字段,查询几个字段,这是一种我们经常推荐的习惯.
SqlCommand cmd = new SqlCommand("SELECT * FROM b where bid='" + Id + "'"
修改为.
SqlCommand cmd = new SqlCommand("SELECT field1,field2,field3.... FROM b where bid=@bid");
cmd.Parameters.Add(....参数.);
// 查询并赋值. --------------------编程问答-------------------- 顶楼上几位的 --------------------编程问答--------------------
SELECT btitle FROM b where aid=(select A.aid from b A where A.bid=" + Id + ");
补充:.NET技术 , C#