protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=127.0.0.1;Initial Catalog=number;Integrated
Security=true";
conn.StateChange += new StateChangeEventHandler(conn_StateChange);
conn.Open();
Response.Write(conn.ServerVersion+"
");
Response.Write(conn.PacketSize+"
");
Response.Write(conn.ConnectionTimeout + "
");
Response.Write(conn.DataSource + "
");
Response.Write(conn.ConnectionString + "
");
Response.Write(conn.Container + "
");
if (conn.State == ConnectionState.Open)
{
Response.Write("1
");
conn.Close();
}
else {
Response.Write("0");
}
}
protected void conn_StateChange(object sender,StateChangeEventArgs e) {
Response.Write("StateChange from"+e.OriginalState+"to"+e.CurrentState+"
");
}
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=127.0.0.1;Initial
Catalog=number;Integrated Security=true";
conn.StateChange += new StateChangeEventHandler(conn_StateChange);
conn.Open();
Response.Write(conn.ServerVersion+"
");
Response.Write(conn.PacketSize+"
");
Response.Write(conn.ConnectionTimeout + "
");
Response.Write(conn.DataSource + "
");
Response.Write(conn.ConnectionString + "
");
Response.Write(conn.Container + "
");
if (conn.State == ConnectionState.Open)
{
Response.Write("1
");
conn.Close();
}
else {
Response.Write("0");
}
}
protected void conn_StateChange(object sender,StateChangeEventArgs e) {
Response.Write("StateChange from"+e.OriginalState+"to"+e.CurrentState+"
");
}
DataSet是 ADO的核心成员
以离线的方式把数据存储在内存中
重用同样的行记录 以便通过缓存获得性能改善 比如说 排序、搜索、筛选
使用数据适配器来承接 DataSet和 Connection
protected void Page_Load(object sender, EventArgs e)
{
if (this.IsPostBack==false) {
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data
Source=127.0.0.1;DataBase=number;Integrated Security=true";
conn.Open();
SqlDataAdapter adapter = new SqlDataAdapter("select * from
Student",conn);
DataSet dataSet = new DataSet();
adapter.Fill(dataSet);
this.GridView1.DataSource = dataSet;
this.GridView1.DataBind();
}
}
独立使用 DataSet创建一个
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
并且显示在数据绑定控件当中
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Sno",System.Type.GetType("System.Int32"));
dt.Columns.Add("Sname", System.Type.GetType("System.String"));
dt.Columns["Sno"].AutoIncrement = true;
ds.Tables.Add(dt);
ds.Tables[0].PrimaryKey = new DataColumn[] { ds.Tables[0].Columns["Sno"] };
DataRow dr = dt.NewRow();
dr[0] = "200907148";
dr[1] = "徐玉强";
dt.Rows.Add(dr);
this.GridView1.DataSource = ds;
this.GridView1.DataBind();
}
DataView对象的使用
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=127.0.0.1;DataBase=number;Integrated
Security=true";
conn.Open();
SqlDataAdapter adapter = new SqlDataAdapter("select * from Student",conn);
DataSet dataSet = new DataSet();
adapter.Fill(dataSet);
DataView dataView = new DataView(dataSet.Tables[0]);
dataView.RowFilter="Sno<200907149";
DataView dataView02 = new DataView(dataSet.Tables[0]);
dataView02.Sort = "Sno";
this.GridView1.DataSource = dataView;
this.GridView1.DataBind();
this.GridView2.DataSource = dataView02;
this.GridView2.DataBind();
}
创建了三个基于 web的服务
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
在线解决问题
public Service () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public string HelloWorld() {
return "Hello World";
}
[WebMethod(Description = "在输入的三个数中返回最大的一个")]
public int Max(int a, int b, int c) {
int max;
if (a > b)
max = a;
else
max = b;
if (c > max)
return c;
else
return max;
}
[WebMethod(Description = "从数据表中读取数据,以表格的形式显示出来。",
EnableSession = false)]
public string getmyTable(string ConnectionString, string SelectSQL) {
string rsString;
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConnectionString;
SqlDataAdapter adapter = new SqlDataAdapter(SelectSQL,conn);
DataSet ds = new DataSet();
adapter.Fill(ds,"myTable");
DataTable table=ds.Tables["myTable"];
rsString = @"
";
for (int i = 0; i <= ds.Tables["myTable"].Columns.Count - 1;i++) {
rsString += "" + ds.Tables["myTable"].Columns[i].ColumnName + " | ";
}
rsString += "
";
for (int i = 0; i < table.Rows.Count; i++)
{
rsString += "";
for (int j = 0; j <= ds.Tables["myTable"].Columns.Count - 1; j++)
{
rsString += "" + table.Rows[i][j] + " | ";
}
rsString += "
";
}
rsString+="
";
return rsString;
}
1 被操作的多个数据库位于同一台物理机器上
cmd.CommandText =
"select a.UserName ,b.goodName from number.dbo.UserInfo a,seve7en.dbo.goodInfo b";
当被操作的数据库位于不同的物理机器上的时候
首先把其他数据库连接到当前的数据库服务器上
进入主操作数据库服务器的企业管理器。选中左侧树形图中的 安全 Security 右击 连
接服务器
(Linked Servers) 选中 “新建连接服务器”(new Linked Server··)
弹出新建连接窗口
选择安全性选项卡 选中“用此安全上下文进行”(Be Made Using this Security context)
填写登录名 密码
两台服务器 语句可以这样写
select A.*,B.* from MuCurrentTable A,MyLinkedServer.MyLinkedDB.dbo.MyLinkedTable B
绑定到简单的数据源
绑定数据源的格式是<%#DataSource %>
姓名:<%#name %>
邮箱:<%#email %>
电话:<%#num%>
绑定一个 ListBox
这个比较有用啊
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=number;integrated security=true";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "select UserName from UserInfo";
ListBox1.DataSource = cmd.ExecuteReader();
ListBox1.DataTextField = "UserName";
ListBox1.DataValueField = "UserName";
ListBox1.DataBind();
conn.Close();
}
数据库的事务处理很重要
把一组数据库的操作合并为一个逻辑上的工作单元
可能导致两个极端的发展情况
一个是 所有操作都得到执行 一个是 没有任何操作得到执行
这对实时应用程序很重要
需要一个数据库连接和一个事务处理对象
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=sev7en;integrated security=true";
conn.Open();
//启用事务
SqlTransaction tran = conn.BeginTransaction();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.Transaction = tran;
try
{
cmd.CommandText = "update userinfo set
Usermail='number1989@qq.com'where Username='number'";
cmd.ExecuteNonQuery();
cmd.CommandText = "update userinfo set
Usermail='hello123@126.com'where Username='seven'";
cmd.ExecuteNonQuery();
tran.Commit();//提交事务
Response.Write("");
}
catch(Exception ex) {
tran.Rollback();//回滚事务
Response.Write("");
Response.Write(ex.ToString());
}
}
这个都是很重要的啊
创建存储过程的步骤
1 创建存储过程
2 建立相应的数据库连接
3 指定存储过程名称
4 在程序中说明执行的类型是存储过程
5 若要执行的存储过程中有参数则必须填充 Parameter集合
6 执行存储过程
下面是不带参数的存储过程演示
首先在数据库中建立存储过程
此处略去 下面的一样
protected void Page_Load(object sender, EventArgs e)
{
ExecutebyCmd();
ExecutebyAdapter();
}
private void ExecutebyCmd() {//通过 Command对象调用存储过程
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "P_Student";//调用在数据库中定义的存储过程
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;//说明执行的是存储过程
try
{
cmd.ExecuteNonQuery();//执行存储过程
Response.Write("");
}
catch {
Response.Write("");
}
}
private void ExecutebyAdapter() {
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true";
conn.Open();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand("P_Search",conn);
adapter.SelectCommand.CommandType = CommandType.StoredProcedure;
try
{
adapter.SelectCommand.ExecuteNonQuery();//执行存储过程
Response.Write("");
}
catch {
Response.Write("");
}
}
下面是带参数的存储过程的演示
在应用过程中使用带参数的存储过程,在页面输入用户名、密码和电子邮件
单机保存按钮后调用存储过程把他们保存到数据表中
create table userinfo
(
Username varchar(30),
Userpassword varchar(50),
Usermail varchar(30),
)
首先建立存储过程
create proc insertuserinfo
@name varchar(30),@password varchar(50),@mail varchar(30)
as insert into userinfo values(@name,@password,@mail)
然后这是带有参数的通过 Command对象调用存储过程的函数
private void ExecutebyCmd()
{//通过 Command对象调用存储过程
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "insertuserinfo";//调用在数据库中定义的存储过程
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;//说明执行的是存储过程
//建立参数对象,指定每个参数的类型、长度和值
SqlParameter[] parameters ={
new
SqlParameter("@name",SqlDbType.VarChar,30),
new
SqlParameter("@password",SqlDbType.VarChar,50),
new
SqlParameter("@mail",SqlDbType.VarChar,30)
};
parameters[0].Value = this.TextBox1.Text;
parameters[1].Value = this.TextBox2.Text;
parameters[2].Value = this.TextBox3.Text;
//将参数对象传递给 SqlCommand对象
foreach(SqlParameter para in parameters){
cmd.Parameters.Add(para);
}
try
{
cmd.ExecuteNonQuery();//执行存储过程
Response.Write("");
}
catch
{
Response.Write("");
}
}
下面看一个含有参数的通过 DataAdapter对象调用存储过程的函数
private void ExecutebyAdapter()
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true";
conn.Open();
SqlDataAdapter adapter = new SqlDataAdapter();//构建数据适配器
adapter.SelectCommand = new SqlCommand("insertuserinfo", conn);//数据适配
器使用存储过程
adapter.SelectCommand.CommandType = CommandType.StoredProcedure;
//建立参数对象,指定每个参数的类型、长度和值
SqlParameter[] parameters ={
new
SqlParameter("@name",SqlDbType.VarChar,30),
new
SqlParameter("@password",SqlDbType.VarChar,50),
new
SqlParameter("@mail",SqlDbType.VarChar,30)
};
parameters[0].Value = this.TextBox1.Text;
parameters[1].Value = this.TextBox2.Text;
parameters[2].Value = this.TextBox3.Text;
//将参数对象传递给 SqlCommand对象
foreach (SqlParameter para in parameters)
{
adapter.InsertCommand.Parameters.Add(para);
}
try
{
adapter.SelectCommand.ExecuteNonQuery();//执行存储过程
Response.Write("");
}
catch
{
Response.Write("");
}
}