怎么用C#做一个登录界面来连接数据库啊

怎么用C#做一个登录界面来连接数据库啊,第1张

什么意思?是建一个登录界面还是只是如何在winform中连接数据库?

一般来讲:

1、导入命名空间

using

System.Data.SqlClient

//连接SQLServer

数据库专用

2、创建连接

SqlConnection

lo_conn

=

New

SqlConnection("Server=服务器名字或IPDatabase=数据库名字uid=用户名pwd=密码")

3、打开连接,第2步并没有真正连接数据库

lo_conn.Open()

//真正与数据库连接

4、向数据库发送SQL命令要使用SqlCommand:

SqlCommand

lo_cmd

=

new

SqlCommand()

//创建命令对象

lo_cmd.CommandText

=

"这里是SQL语句"

//写SQL语句

lo_cmd.Connection

=

lo_con

//指定连接对象,即上面创建的

5、处理SQL命令或返回结果

lo_cmd.ExecuteNonQuery()

//这个仅仅执行SQL命令,不返回结果集,实用于建表、批量更新等不需要返回结果的 *** 作。

SqlDataReader

lo_reader

=

lo_cmd.ExecuteReader()//返回结果集

6、以数据集的方式反回结果集

SqlDataAdapter

dbAdapter

=

new

SqlDataAdapter(lo_cmd)

//注意与上面的区分开

DataSet

ds

=

new

DataSet()

//创建数据集对象

dbAdapter.Fill(ds)

//用返回的结果集填充数据集,这个数据集可以被能 *** 作数据的控件DataBind,其它的就自己发挥了吧

7、关闭连接

lo_conn.Close()

创建一个用户信息对象,登陆成功把对象相关属性赋值,这样全局内,任何地方都可以用。 追问: 看我上一追问 。 回答: 新建一个类UserInfo public class UserInfo { public int Id{getset} public string UserName{getset} ....把你需要的属性全部写出来 } public class CurrentUser{ private static readyonly UserInfo _user=new UserInfo() public static UserInfo{get{return _user}} } 登陆成功后,在数据层来填充对象 public class userDAL { public bool UserLogin(string logname,string logpass) { if(登陆成功!(这里你根据你的方法来判断)){ DataTable dt=DBhelper.getDataTable(logname,logpass) foreach(DataRow dr in dt.Rows){ CurrentUser.User=(int)dr["id"] .................................填充所有属性。。。 } } } }这个是个简单的代码,我在回答框里写的,具体的优化你自己弄,你最好用 三层架构 的,把用户对象封装到实体库里。 补充: 更改一下,我刚吃完饭回来看到还有点问题 新建一个类UserInfo public class UserInfo { public int Id{getset} public string UserName{getset} ....把你需要的属性全部写出来 } public class CurrentUser{ private static readyonly CurrentUser_userinfo=new CurrentUser() public static CurrentUser{get{return _userinfo}} private UserInfo _user{getset} } 登陆成功后,在数据层来填充对象 public class userDAL { public bool UserLogin(string logname,string logpass) { if(登陆成功!(这里你根据你的方法来判断)){ DataTable dt=DBhelper.getDataTable(logname,logpass) foreach(DataRow dr in dt.Rows){ CurrentUser.User=(int)dr["id"] .................................填充所有属性。。。 } } } }

新建一个对话框作为登陆框,拖入控件,两个编辑框和两个按钮,接着为它创建一个类,并添加一个变量m_Password

在CDialogApp::InitInstance()函数中的适当位置增加如下代码:

BOOL CDialogApp::InitInstance()

{

......//前面省略了,只需添加如下就行了

// Dispatch commands specified on the command line

if (!ProcessShellCommand(cmdInfo))

return FALSE

CPasswordDialog cDlg

if(cDlg.DoModal ()==IDOK)

{

if(cDlg.m_Password !=1234)

{

AfxMessageBox("口令错误,确定后将退出程序。")

return FALSE

}

}

else

return FALSE

// The main window has been initialized, so show and update it.

pMainFrame->ShowWindow(m_nCmdShow)

pMainFrame->UpdateWindow()

return TRUE

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10029358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存