ASP.NET连接sql2008数据库的实现代码
程序员文章站
2024-02-22 15:29:46
利用sqlconnection对象连接sql2000以上版本,并使用sqlcommand对象对数据库进行读取。
sqlcommand类概述:
用于对sql数...
利用sqlconnection对象连接sql2000以上版本,并使用sqlcommand对象对数据库进行读取。
sqlcommand类概述:
用于对sql数据库执行sql语句或存储过程。
命名空间:system.data.sqlclient
程序集: system.data(在 system.data.dll中)
sqlcommand类的属性
1.commandtext
获取或设置要对数据源执行的transact—sql语句或存储过程。
2. commandtype
获取或设置一个值,该值指示如何解释commandtext属性,commandtype默认为commandtype.text,表示执行sql语句,调用存储过程时需设commandtype.storedprocedure。3.connection
获取或设置sqlcommand的实例使用的sqlconnection。
4.commandtimeout
获取或设置在终止执行命令的尝试并生成错误之前的等待时间。
sqlcommand类的方法
1.executenonquery: 通过该命令执行不要返回值的操作,例如update,insert,delete等sql命令,只是返回执行该命令所影响到表的行数。
2.executescalar: 可用来执行select查询,但返回的是一个单一的值,用于查询聚合,例如使用count(), sum(),等函数的sql指令。
3.executereader: 该方法返回一个datareader对象,内容为查询结果的内容集合。
以下通过sqlconnection连接sql2008,并执行数据简单操作的代码:
using system; using system.collections.generic; using system.linq; using system.web; using system.web.ui; using system.web.ui.webcontrols; using system.data.sqlclient; using system.data; using system.configuration; public partial class _default : system.web.ui.page { protected void page_load(object sender, eventargs e) { // 连接sql数据库 string sqlconn = "data source=seebro-pc\\sqlexpress;initial catalog=supermarket;integrated security=true"; sqlconnection myconnection = new sqlconnection(sqlconn); myconnection.open(); //定义sqlcommand类 sqlcommand mycommand = new sqlcommand(); mycommand.connection = myconnection; mycommand.commandtype = commandtype.storedprocedure; mycommand.commandtext = "bytype"; //存储过程传参 sqlparameter parinput = mycommand.parameters.add("@type", sqldbtype.smallmoney); parinput.direction = parameterdirection.input; parinput.value = 2; sqldatareader myreader = mycommand.executereader(); response.write("<table border=1 cellspaceing=0 cellpadding=2>"); response.write("<tr bgcolor=#dab4b>"); for (int i = 0; i < myreader.fieldcount; i++) response.write("<td>" + myreader.getname(i) + "</td>"); response.write("</tr>"); while (myreader.read()) { response.write("<tr>"); for (int i = 0; i < myreader.fieldcount; i++) response.write("<td>" + myreader[i].tostring() + "</td>"); response.write("</tr>"); } response.write("</table>"); myreader.close(); myconnection.close(); } }
改为执行sql指令后的代码,实现同样效果。
using system; using system.collections.generic; using system.linq; using system.web; using system.web.ui; using system.web.ui.webcontrols; using system.data.sqlclient; using system.data; using system.configuration; public partial class _default : system.web.ui.page { protected void page_load(object sender, eventargs e) { // 连接sql数据库 string sqlconn = "data source=seebro-pc\\sqlexpress;initial catalog=supermarket;integrated security=true"; sqlconnection myconnection = new sqlconnection(sqlconn); myconnection.open(); //定义sqlcommand类 sqlcommand mycommand = new sqlcommand("select * from product where product.价格 = 2", myconnection); sqldatareader myreader = mycommand.executereader(); response.write("<table border=1 cellspaceing=0 cellpadding=2>"); response.write("<tr bgcolor=#dab4b>"); for (int i = 0; i < myreader.fieldcount; i++) response.write("<td>" + myreader.getname(i) + "</td>"); response.write("</tr>"); while (myreader.read()) { response.write("<tr>"); for (int i = 0; i < myreader.fieldcount; i++) response.write("<td>" + myreader[i].tostring() + "</td>"); response.write("</tr>"); } response.write("</table>"); myreader.close(); myconnection.close(); } }
运行效果:
项目代码已上传。