求一个C#winform登陆界面与sql数据库有关的代码

这是我用C#编的一个机票预定系统,没有连接数据库,代码已经写了700多行了。我学习sqlsever2005不是很好,对C#与数据库连接技术掌握不是很扎实,下面是我系统登陆... 这是我用C#编的一个机票预定系统,没有连接数据库,代码已经写了700多行了。我学习sql sever2005不是很好,对C#与数据库连接技术掌握不是很扎实,下面是我系统登陆界面的一张截图,知道怎么写代码的教教我或者直接发loveyoutiantang@vip.qq.com,我做下参考,谢谢 展开
 我来答
80130403172
2010-12-17
知道答主
回答量:13
采纳率:0%
帮助的人:5万
展开全部
我给你我总结的一些关于数据库连接的代码:
using System.Data.OleDb;//先引用命名空间

namespace DataReader1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/*特别注意:DataReader是一行一行地对数据进行读取的,DataReader表其实是一个内存数据表,其与DataSet类似*/
private void Form1_Load(object sender, EventArgs e)
{
string connStr, selectCmd;//定义两个字符串变量分别用来存储连接字符及SQL命令代码
connStr ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=SCOREDB.mdb";//给将要使用的连接数据库的连接词赋值
selectCmd = "SELECT * FROM SCORE";//给将要执行的SQL语句赋值
OleDbConnection conn;//定义连接类的对象
OleDbCommand cmd;//建立命令类的对象
OleDbDataReader reader;//建立读取数据OleDbDataReader类的对象
conn = new OleDbConnection(connStr);//新建连接对象,相当于准备用钥匙开门了,而connStr相当于钥匙
conn.Open();//打开连接,数据库这扇门打开啦
cmd = new OleDbCommand(selectCmd, conn);//使"连接"与SQL命令关联起来,这样使将要执行的SQL语句与数据库关联起来了
reader = cmd.ExecuteReader();/*执行SQL语句并根据返回的查询结果(一个数据表)创建OleDbDataReader对象,
并赋值给原先定义好用来存储该对象的变量,此时reader相当于一个表,
且此时只有第一行(即表头那一行)的数据可以直接使用*/

for (i = 0; i < reader.FieldCount; i++)/*当i小于reader这个表的列数(fieldcount的值是从零开始的)的
时候,就执行花括弧里面的代码*/
{
txtShow.Text += reader.GetName(i) + "\t";//获取第i列(从零开始的)的列名,
}
txtShow.Text += "\n\n";

while (reader.Read())/*先将reader表的可以直接读取的数据行往下移一行,这样表头下面的一行可以直接使用了,就这样
一直一行一行 往下移,知道reader表格的最后一行用完为止*/
{
for (i = 0; i < reader.FieldCount; i++)//reader.fieldcount的值等于reader这个表格的列数,但是调用某一列的时候下表是从零开始计数的
{
txtShow.Text += reader [i] + "\t";//reader[i]用来获取当前可以直接读取数据那一行的第i列的值(i从零开始)。
}
txtShow.Text += "\n";
}
reader.Close();//关闭DataReader对象,释放资源,DataReader表其实是一个内存数据表
conn.Close();//断开数据库连接
}
}
}

总结:对OleDbConnection ,OleDbCommand,OleDbDataReader三个类都要创建 对象,因为要这三个类联合起来使用才能访问数据库

另一种方法:使用DataSet和DataBaseAdapter来访问数据表中的数据
string connStr, selectCmd;
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=SCOREDB.mdb";
selectCmd = "Select * From SCORE";
OleDbConnection conn;
OleDbDataAdapter myAdapter;
DataSet myDataSet = new DataSet();//新建一个空的没有表格的DataSet对象
conn = new OleDbConnection(connStr);
myAdapter = new OleDbDataAdapter(selectCmd, conn);
myAdapter.Fill(myDataSet, "成绩单");
DataTable myDataTable = myDataSet.Tables["成绩单"];/*要访问表中的某些内容则应该先将该DataSet中的表 赋值给DataTable myDataTable*/
for (k = 0; k < myDataTable.Columns.Count; k++)//myDataTable.Columns.Count为数据表的列数
{
txtShow.Text += myDataTable.Columns[k].ColumnName + "\t";
}
txtShow.Text += "\n";
for (i = 0; i < myDataTable.Rows.Count; i++)
{
for (j = 0; j < myDataTable.Columns.Count; j++)//myDataTable.Columns.Count的列数,从1开始的
{
txtShow.Text += myDataTable.Rows[i][j] + "\t";//相当于二维数组
}
txtShow.Text += "\n";

二:使用SQL的DataReader来读取数据库的信息
using System.Data.SqlClient;//先引用命名空间

// 开始从数据库中获取密码

string conString = @"server=localhost;database=数据库名称;Integrated Security=SSPI";
string selectCmd = "SELECT ID,PassWord FROM userInfo";
SqlConnection con = new SqlConnection(conString);
SqlCommand cmd;
SqlDataReader reader;

con.Open();
cmd = new SqlCommand(selectCmd, con);
reader = cmd.ExecuteReader();
while (reader.Read())
{
ID = reader.GetString(0);
PassWord = reader.GetString(1);

}

reader.Close();
con.Close();

//获取密码完毕

总结:对SqlConnection,SqlCommand, SqlDataReader都要创建对象,因为要用到这三个 类!

三:使用DataSet访问数据库

using System.Data.OleDb;先引用命名空间

string connStr, selectCmd;//定义两个字符串变量分别用来存储连接字符及SQL命令代码
DataSet myDataSet = new DataSet();//新建一个 DataSet 用来在内存中存放数据表
OleDbConnection conn;//定义连接器
OleDbDataAdapter myAdapter;//定义适配器
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb";//连接字符串
conn = new OleDbConnection(connStr);/*开始连接,因为适配器会自动打开和关闭数据库,因此不要使用open和close函数,但是还是要有开始连 接这一步*/
selectCmd = "Select * From SCORE";
myAdapter = new OleDbDataAdapter(selectCmd, conn);//使SQL语句与"连接"关联起来,这与OleDbCommand类相似
myAdapter.Fill(myDataSet, "成绩单");//将SQL查询到的数据填充到myDataSet,中的"成绩单"这个数据表中去
selectCmd = "Select * From STOCK";
myAdapter = new OleDbDataAdapter(selectCmd, conn);
myAdapter.Fill(myDataSet, "股票行情表");
selectCmd = "Select * From BOOK";
myAdapter = new OleDbDataAdapter(selectCmd, conn);
myAdapter.Fill(myDataSet, "碁峰图书");//一个DataSet有三个数据表,即"成绩单","股票行情表","碁峰图书"
for (int i = 0; i < myDataSet.Tables.Count; i++)
{
cboTable.Items.Add(myDataSet.Tables[i].TableName);//将数据表的名称添加到组合框中去
}
cboTable.Text = myDataSet.Tables[2].TableName;
dataGridView1.DataSource = myDataSet.Tables[2];/*将dataGridView1与DataSet绑定,dataGridView1.DataSource一改变, dataGridView中显示的数据就会改变*/

private void btnSelect_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = myDataSet.Tables[cboTable.Text];//可以使用表的名字来访问 DataSet中的表集
}

给DataSet中的表改名 字,代码如下:
DataTableMapping changeName=new DataTableMapping( );
changeName=myAdapter.tableMapping.Add ("原表名","新表名");

如果看不懂我建议你去看书,介绍一本书给你,《visual c#2005完全开发指南》
yaobing0687
2010-12-17 · TA获得超过988个赞
知道小有建树答主
回答量:1309
采纳率:0%
帮助的人:902万
展开全部
我说下流程:
1.链接数据库钱:
a.判断账号密码验证码是否为空
b.注册码是否正确
2.定义数据开连接,并打开
a.搜索账号是否存在
b.若账号存在,判断密码是否正确
c.都正确就进入
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gongchengjia
推荐于2016-09-02 · TA获得超过130个赞
知道小有建树答主
回答量:225
采纳率:0%
帮助的人:128万
展开全部
using System.Data.SqlClient;
SqlConnection conn = new SqlConnection("Server=.;DataBase=Northwind;Uid=sa;pwd=123;");
//数据库连接驱动,.代表本机,也可以用“(Local)、127.0.0.1,局域网的本地IP都可以”
//DataBase 跟上的是你要连接数据库名称
//Uid ,全称是 User ID , 连接数据库的用户名,,默认是 sa
//Password 简称是 pwd ,是连接数据库的密码,,默认是空的,但是我这边自己有设置密码
//Pwd 为空,可以不写 “Server=.;DataBase=Northwind;Uid=sa;”就可以了
scn.open();//打开连接
SqlCommand scd = new SqlCommand("select * from 存用户名的表 where 用户名=输入的用户名 and 密码=输入的密码",scn);
SqlDataReader sdr = scd.ExecuteReader();//读取数据
if(sdr.reder())
{
通过登录
}
else
{
messagebox.show("出错!");
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王海军19880527
2012-10-16
知道答主
回答量:1
采纳率:0%
帮助的人:1571
展开全部
弱弱的问一下,界面怎么做的这么山寨啊??这个界面谁敢买票啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
abclwq
2010-12-17
知道答主
回答量:6
采纳率:0%
帮助的人:0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式