前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#连接数据库SQL(2005)

C#连接数据库SQL(2005)

作者头像
阳光岛主
发布2019-02-19 12:42:22
1.3K0
发布2019-02-19 12:42:22
举报
文章被收录于专栏:米扑专栏米扑专栏

首先来总结一下进行数据库编程的全过程,这里用的是SQL SERVER

(1) 建立SqlConnection对象以连接数据库

SqlConnection mysqlconnection=new SqlConnection("Server=localhost; database=yourdatabase;uid=sa;pwd=sa");

(2) 建立SqlCommand对象

SqlCommand mysqlcommand=mysqlconnection.CreateCommand();

(3) 设置SqlCommand对象的CommandText属性

mysqlcommand.CommandText="SELECT * FROM youydatabasetablename";

(4) 打开SqlConnection对象

mysqlconnection.open();

(5) 运行SELECT语句

SqlDataReader mysqldatareader=mysqlcommand.ExecuteReader();

本人初学,此处疑惑,还望高手解答:

此处没有SqlDataReader mysqldatareader=new SqlDataReader();而是直接执行,可以吗?

如果没有new创建对象,后面的(8)mysqldatareader.Close(); 需要关闭吗?谢谢高人解答!!!

(6) 用SqlDataReader对象读行

mysqldatareader.Read();

(7) 显示SqlDataReader对象中的数值

yourtextbox.Text=mysqldatareader["ID"].ToString();      //ID是你数据库中的一项列名

(8) 关闭SqlDataReader对象

mysqldatareader.Close();

本人初学,此处疑惑,还望高手解答:

需要关闭mysqlcommand吗 即mysqlcommand.Close() 还是因为调用了CreateCommand()方法而不需要关闭吗?

(9) 关闭SqlConnection对象

mysqlconnection.Close();

下面把过程呈现出来.

1、在我的程序中用的是SQL,所以在程序头前加上

using System.Data.SqlClient;

2、在Form1中加入应有的控件,用于显示数据.

3、申请变量

static private int m = 1; //显示每条记录

static private int k; //得到记录条数

SqlCommand mysqlcommand;

SqlConnection mysqlconnection;

4、连接数据库,注意这里的连接字符串,用的是安全类型.

try

{

mysqlconnection = new SqlConnection("server=localhost;

Integrated Security=True;Database=myfriends");

mysqlcommand = mysqlconnection.CreateCommand();

//得到记录条数

mysqlcommand.CommandText = "SELECT COUNT(*) FROM Friends";

mysqlconnection.Open();

k = (int)mysqlcommand.ExecuteScalar();

GetData(1);

}

catch (SqlException ex)

{

MessageBox.Show("A SqlException was thrown,Number = " +

ex.Number + //错误号

ex.Message + //错误描述字符串

ex.StackTrace); //抛出异常的类名和方法名字符串

}

5、如果数据库中有多条记录就要逐条显示

在逐条显示的按钮事件中:

m += 1; //下一条索引值

if (m > k)

{

MessageBox.Show("最后一条!将显示第一条记录!", "信息提示");

m = 1;

}

this.hisname.Text = ""; //要显示下条,当然先清空

this.hissex.Text = "";

this.hisadress.Text = "";

this.hisbirthday.Text = "";

GetData(m); //显示下第数据

6、在显示数据中用到显示下一条函数;

private void GetData(int i)

{

mysqlcommand.CommandText = "SELECT ID,Name,Sex,"+  "birthday,address FROM Friends WHERE ID="+i;

SqlDataReader mysqldatareader = mysqlcommand.ExecuteReader();

mysqldatareader.Read();

this.hisname.Text = mysqldatareader["Name"].ToString();

this.hissex.Text = mysqldatareader["Sex"].ToString();

this.hisadress.Text = mysqldatareader["Address"].ToString();

this.hisbirthday.Text = mysqldatareader["Birthday"].ToString();

mysqldatareader.Close();

}

转载声明:本帖转自 http://www.cnblogs.com/bober/articles/640740.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2009年08月06日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档