【发布时间】:2014-03-24 16:08:20
【问题描述】:
我只想将 最后 10 行 从 sql server 插入到我的 gridview 中,并在我的页面中显示它们。 这是我的查询:
SELECT Cause.Cause_name
,City.City_name
,InjuryScenario.InjuryScenario_id
,InjuryScenario.InjuryScenario_name
,InjuryScenario.InjuryDay
,InjuryScenario.InjuryMonth
,InjuryScenario.InjuryYear
,Place.Place_name
FROM InjuryScenario
INNER JOIN Cause
ON InjuryScenario.Cause_id = Cause.Cause_id
INNER JOIN PlaceDet
ON InjuryScenario.InjuryScenario_id = PlaceDet.InjuryScenario_id
INNER JOIN City
ON PlaceDet.City_id = City.City_id
INNER JOIN Place
ON InjuryScenario.Place_id = Place.Place_id)
这是我在 aspx 中的代码:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="InjuryScenario_id" DataSourceID="SqlDataSource30" ShowHeaderWhenEmpty="True">
<Columns>
<asp:BoundField DataField="InjuryScenario_id" HeaderText="InjuryScenario_id" ReadOnly="True" SortExpression="InjuryScenario_id" />
<asp:BoundField DataField="InjuryScenario_name" HeaderText="InjuryScenario_name" SortExpression="InjuryScenario_name" />
<asp:BoundField DataField="Cause_name" HeaderText="Cause_name" SortExpression="Cause_name" />
<asp:BoundField DataField="City_name" HeaderText="City_name" SortExpression="City_name" />
<asp:BoundField DataField="Place_name" HeaderText="Place_name" SortExpression="Place_name" />
<asp:BoundField DataField="InjuryDay" HeaderText="InjuryDay" SortExpression="InjuryDay" Visible="False"/>
<asp:BoundField DataField="InjuryMonth" HeaderText="InjuryMonth" SortExpression="InjuryMonth" Visible="False"/>
<asp:BoundField DataField="InjuryYear" HeaderText="InjuryYear" SortExpression="InjuryYear" Visible="False"/>
<asp:TemplateField HeaderText="Date">
<ItemTemplate>
<asp:Label runat="server"><%#(int)Eval("InjuryDay")+"/"+ Eval("InjuryMonth")+"/"+ Eval("InjuryYear") %></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
这里是插入代码:
DBManager db = new DBManager();
db.Insert("InjuryScenario", "InjuryScenario_id,"+"Cause_id," + "CauseType_id," +
"CauseChar_id," + "Place_id," + "PlaceType_id," + "InjuryYear," + "InjuryMonth," +
"InjuryDay," + "InjuryDate_id," + "InjuryInSchool," + "InjuryDesc," + "AlmostInjury,"
+ "InjuryComments," + "ProductInjury","'"+ num_id + "'" + Cause_nameDD.SelectedValue +
"','" + CauseTypeDD.DataValueField + "','" + CauseCharDD.SelectedValue + "','" +
PlaceDD.SelectedValue + "','" + PlaceTypeDD.SelectedValue + "','" +
YearDD.SelectedValue + "','" + MonthDD.SelectedValue + "','" + DayDD.SelectedValue +
"','" + InjuryDateDD.SelectedValue + "','" + InjuryInSchoolCBL.SelectedValue + "','" +
InjuryDescTB.Text + "','" + AlmostInjuryTB.Text + "','" + InjuryCommentTB.Text + "','"
+ ProductInjuryCBL.Text + "'");
【问题讨论】:
-
按什么顺序?你想只得到 10 个随机行吗?
-
按最后插入字段日期的顺序
-
我编辑了我的问题,插入代码就在里面
-
您需要查看参数化 SQL 语句以保护自己免受 SQL 注入。 Look Here
-
好的,我会看的.. 但你知道为什么 ir 只显示一行而不是我的所有行吗?以为是sql注入的原因?