网上很难找到控件如何绑定MySql数据库,研究了1天终于可以实现了.

先上图片


MySql不能使用MS SQL的语法,因此在添加数据源的时候,需要自行手动添加.具体代码可以参考

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"  DataKeyNames="id" Width="389px">
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" SortExpression="id" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Score" HeaderText="Score" SortExpression="Score" />
</Columns>
</asp:GridView>

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>"
DeleteCommand="DELETE FROM test1 WHERE id = ?;"
InsertCommand="INSERT INTO test1 (Name, Score) VALUES (?, ?);"
SelectCommand="SELECT * FROM test1;"
UpdateCommand="UPDATE test1 SET Name=?, Score=? WHERE id = ?;">

<SelectParameters>
<asp:ControlParameter ControlID="GridView1" PropertyName="SelectedValue"
Name="id" Type="Int32" DefaultValue="0" />
</SelectParameters>

<DeleteParameters>
<asp:Parameter Name="id" Type="Int32" DefaultValue="1" />
</DeleteParameters>

<UpdateParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Score" Type="Int32" DefaultValue="0" />
<asp:Parameter Name="id" Type="Int32" DefaultValue="1" />
</UpdateParameters>

<InsertParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Score" Type="Int32" DefaultValue="0" />
</InsertParameters>


</asp:SqlDataSource>

特别注意"?",在MySql中不支持"@"符号,可能你会以为是"@id"或者"?id",可以传入参数,但实际上我测试是不行的。具体原因我不清楚.

但是通过SqlDataSource控件<SelectParameters><DeleteParameters><UpdateParameters><InsertParameters>这几组参数,

可以对"?"的占位符,进行绑定对应的参数.因此,特别注意在对

<SelectParameters><DeleteParameters><UpdateParameters><InsertParameters>这几组参数的声明顺序,必须保持跟语法一致,

例如:

UpdateCommand="UPDATE test1 SET Name=?, Score=? WHERE id = ?;">
对应

    <UpdateParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Score" Type="Int32" DefaultValue="0" />
<asp:Parameter Name="id" Type="Int32" DefaultValue="1" />
</UpdateParameters>

顺序是Name,Score,id


其他的应该没有什么东西的,注意的地方可以参考下图


来自:http://blog.csdn.net/lan120576664

更多相关文章

  1. MyBatis排序时使用order by 动态参数时需要注意,用$而不是# 用$传
  2. 如果发现自己的mysql没有充分利用CPU该关注那些参数?
  3. 解析innodb status各项参数
  4. javaScript怎么实现双向数据绑定
  5. 使用Directive通过AngularJS使用指令和数据绑定来注入HTML
  6. 如何将对象作为参数传播给函数?
  7. 如何在javascript函数中将URL编码为参数?
  8. 根据循环中的i改变函数中的参数
  9. 在传递给google.setOnLoadCallback()的函数中使用参数;

随机推荐

  1. Linux内核配置文档
  2. Python编程系列教程第16讲——拷贝自身到
  3. python安装第三方的包 工具对比
  4. [LeetCode] 486. Predict the Winner 预
  5. 2018年马哥人工智能&Python自动化全栈
  6. Linux--多线程之线程的取消pthread_cance
  7. 教女友学习机器学习0X02——逻辑回归
  8. linux中openssl和ssh的配置和简单应用
  9. linux python调试技巧
  10. LAMP兄弟连PHP全民总动员