零、友情链接
一、常用属性及说明
在使用connection
对象链接到数据库之后,就可以使用Command对象
对数据库进行增删改查了,操作实现的方式使用的是SQL语句
。Command对象可以分为四个不同的执行命令对象,分别是:SqlCommand
、OledeCommand
、OdbcCommd
、OracleCommand
,这几个对象的常用的属性以及方法几乎相同,但是最配套asp.net使用的是SqlCommand
,下面是SqlCommand
对象常用属性以及说明:
属性 | 说明 |
---|---|
CommandType |
获取或设置SqlCommand 对象要执行命令的类型 |
CommandText |
获取或设置要对数据源执行的SQL语句 、存储过程或表名 |
CommandTimeOut |
获取或设置在终止对执行命令的尝试并生成错误之前的等待时间 |
Connection |
获取或设置SqlCommand 对象所使用的Connection 对象的名称 |
Parameters |
获取SqlCommand 对象需要使用的参数集合 |
常用方法:
方法 | 说明 |
---|---|
ExecuteNonQuery |
对连接执行的SQL 语句并返回受执行的行数 |
ExecuteReader |
对连接执行SQL 语句并返回保持连接的数据读取器对象SqlDataReader |
ExecuteScalar |
执行查询,并返回查询结果集中的第1行的第1列的值 |
二、查询数据指令
通过查询语句或调用存储过程将数据库中的数据检索出来,通过指定的接收方法来得到这些数据。
查询的结果可能是一行一列,也可能是多行多列
例子:查询数据库中的数据
先来看一下效果,这个图片是从数据库中读取出来然后利用Response.write
写在页面上的:
ok,开始写代码,首先打开安装好的SQL Server 2014 Management Studio
,连接好之后,点击新建查询
,输入以下SQL语句
,创建一个表:
Create Database School
go
use School
go
create table Student
(
ID int primary key identity(1,1),
Name varchar(60),
Sex char(2),
Age int,
Class varchar(60)
)
写完这些之后,表就创建好了,接着手动输入一些数据:
然后打开VS,创建一个WEB窗体
,再新建一个Default.aspx
作为首页,打开Default.aspx,cs
开始写代码:
首先引用需要使用的命名空间:
using System.Data;
using System.Data.SqlClient;
using System.Data.Text;
页面加载Load方法
:
protected void Page_Load(object sender, EventArgs e)
{
string Result = GetSqlData();
Response.Write(Result);
}
定义GetSqlData
方法,实现SqlCommand
对象执行SQL
查询命令并返回数据:
private string GetSqlData()
{
StringBuilder res = new StringBuilder();
res.Append("<table>"); //手动创建表格列表并将字符串追加到StringBuilder类
//定义表格头部
res.Append("<tr><th>序号</th><th>姓名</th><th>性别</th><th>年龄</th><th>班级</th></tr>");
//使用using指令创建SqlConnection对象
using(SqlConnection conn = new SqlConnection("Server=DESKTOP-9FCSCD4;DataBase=School;Trusted_Connection=SSPI"))
{
conn.Open();
SqlCommand comm = new SqlCommand(); //实例化一个执行数据库操作的命令类
comm.CommandType = CommandType.Text; //指定要执行数据库操作的的命令是SQL语句
comm.CommandText = "select * from Student"; //要查询的SQL语句
comm.Connection = conn; //指定需要的数据库连接类
//执行数据库查询并返回SqlDataReader类型数据接收器
using(SqlDataReader DataReader = comm.ExecuteReader())
{
//使用数据接收器执行数据行的循环读取
while (DataReader.Read())
{
int ID = (int)DataReader["ID"];
string Name = (string)DataReader["Name"];
string Sex = (string)DataReader["Sex"];
int Age = (int)DataReader["Age"];
string Class = (string)DataReader["Class"];
//开始连接
res.Append("<tr><td>" + ID + "</td>");
res.Append("<td>" + Name + "</td>");
res.Append("<td>" + Sex + "</td>");
res.Append("<td>" + Age + "</td>");
res.Append("<td>" + Class + "</td></tr>");
}
}
conn.Dispose(); //数据库释放
}
res.Append("</table>");
return res.ToString();
}
在以上代码中,利用了StringBuilder
的Append
方法,在定义的串中,加入了HTML
元素,直接在页面中生成表格,在打开页面之后,检查一下页面元素:
可以很清楚的看到,StringBuilder已经帮我们写入表格的元素了。,最后用CSS
代码对表格进行一下美化:
<style type="text/css">
/*设置表格、表头、单元格的边框及颜色和样式*/
table,table th,table td{
border:1px;
border-style:solid;
border-color:#22bbad;
}
/*重写表头的边框颜色*/
table th{
border-color:white;
}
/*将表格中的边框合并*/
table{
border-collapse:collapse;
}
/*设置表头的大小及颜色*/
table th{
width:150px;
height:30px;
text-align:center;
background-color:#22bbad;
color:white;
}
/*设置单元格的高度与文本位置*/
table td{
height:30px;
text-align:center;
}
</style>
大功告成!!!
三、添加数据指令
同样使用SqlCommand
对象进行添加,添加记录不需要考虑选择用哪种方式接收。
未完待续……