1. /*通过C#winform程序访问数据库数据
  2.  
  3. 用到的命名空间和变量类型:
  4.  
  5. using System.Data.SqlClient;
  6.  
  7. SqlConnection;数据库连接类
  8.  
  9. SqlCommand;数据库操作类
  10.  
  11. SqlDataReader:读取 */
  12.  
  13. //登录按钮代码
  14. private void button1_Click(object sender, EventArgs e)
  15. {
  16. if (textBox1.Text == "")
  17. MessageBox.Show("用户名不能为空!", "提示");
  18. else if (textBox2.Text == "")
  19. MessageBox.Show("密码不能为空!", "提示");
  20. try //try...catch...异常处理语句
  21. {
  22. string name, pass;
  23. bool flag = false;
  24. name = textBox1.Text;
  25. pass = textBox2.Text; //获取用户名,密码
  26. string str = "Data Source=SQL服务器名称;Initial Catalog=数据库名;User ID=登录名;Password=密码;";
  27. SqlConnection myConn = new SqlConnection(str);//创建数据库连接类的对象
  28. myConn.Open(); //将连接打开
  29. //SQL语句:从数据库的登录表中搜索登录名,密码
  30. string sqlstring = "select username,password from users where username='" +name + "'and password='" + pass + "'";
  31. //执行con对象的函数,返回一个SqlCommand类型的对象
  32. SqlCommand command = new SqlCommand(sqlstring, myConn);
  33. //用cmd的函数执行语句,返回SqlDataReader对象thisReader,thisReader就是返回的结果集(也就是数据库中查询到的表数据)
  34. SqlDataReader thisReader = command.ExecuteReader();
  35. //判断用户名及密码是否正确,对flag进行赋值
  36. while (thisReader.Read())
  37. {
  38. if ((thisReader.GetValue().ToString().Trim()) == (name.ToString().Trim()))
  39. {
  40. if (thisReader.GetValue().ToString().Trim() == pass.ToString().Trim())
  41. {
  42. flag = true;
  43. }
  44. }
  45. }
  46. //用完后关闭连接,以免影响其他程序访问
  47. myConn.Close();
  48. if (flag)
  49. {
  50. MessageBox.Show("登陆成功!");
  51. Form2 F = new Form2(); //显示主页面
  52. F.Show();
  53. this.Hide();
  54. }
  55. else
  56. {
  57. MessageBox.Show("请检查你的用户名和密码!");
  58. textBox1.Focus();
  59. }
  60. }
  61. catch (Exception ex2)
  62. {
  63. MessageBox.Show("连接远程SQL数据库发生错误:" + ex2.ToString(), "错误!");
  64. }

C#窗体与SQL数据库的连接的更多相关文章

  1. C# 连接SQL数据库 常用连接字符串

    一:C# 连接SQL数据库 Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myP ...

  2. sql数据库的表连接方式图文详解

    sql数据库表连接,主要分为:内连接.外连接(左连接.右连接 .全连接).交叉连接,今天统一整合一下,看看他们的区别.   首先建表填充值. 学生表:student(id,姓名,年龄,性别 ) 成绩表 ...

  3. C#学习笔记---C#操作SQL数据库

    C#操作SQL数据库 Connection(连接)对象 连接字符串: 形式1.”server=;uid=;pwd=;database=” 形式2.”server=;Intergrated Securi ...

  4. VB.NET与 sql数据库

    数据蕴含丰富的信息,数据就是资源. 不同的语言,因为各自的语法特点.对sql数据库的连接操作有些小差别.但有一点,那就是.对sql数据库的操作语句sql语句大体是一样的. 这段时间正进行VB.NET的 ...

  5. KTV项目 SQL数据库的应用 结合C#应用窗体

    五道口北大青鸟校区 KTV项目 指导老师:袁玉明 歌曲播放原理 SQL数据库关系图 C#解决方案类图 第一步:创建数据库连接方法和打开方法和关闭方法! public class DBHelper { ...

  6. matlab连接sql数据库

    最近项目还涉及到matlab连接数据库,下面我就记录如何进行配置使得matlab能够连接sql数据库.由于最近工程做的多一些,所以分享的都在工程配置上,当初为了这些配置可是反复卸载与重装,算法其实也有 ...

  7. SQL Server 2008 R2 开启数据库远程连接

    今天要测试一个.net系统~因为配置的数据库是SQL Server~我就不得不安装SQL Server 2008 R2~现在我们就一起来看看SQL Server 2008 R2是如何打开远程连接端口1 ...

  8. [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言

    最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...

  9. C# winCE连接SQL数据库

    General network error.  Check your network documentation. 错误解决方法 1. public static string Sqlstr = &q ...

随机推荐

  1. 01.DesignParttern设计模式,简单工厂,工厂方法,抽象工厂三大工厂的区别与联系

                工厂用来生产对象,对象具有方法和属性. 简单工厂的缺点(简单工厂并不是23中设计模式): 工厂类的职责相对过重,增加新的产品,需要修改工厂类的判断逻辑,违背开闭原则: JDK源 ...

  2. eclipse生成mybatis的逆向工程-mybatis代码自动生成

    首先,工作中一直在使用命令方式的mybatis的代码自动生成,今天把自己的笔记本直接搞一个在eclipse中生成的逆向代码生成工程,方便自己在家学习使用,在搞这个工程的过程中由于自己搞了一套环境,所i ...

  3. C++中的简单继承

    Father.cpp: #include<iostream> using namespace std; class Father { protected: int width; int h ...

  4. Redis详解(四)——删除策略

    Redis详解(四)--删除策略 Redis中的数据特征 Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令来获取其状态,当 key 不存在时,返回 -2 . 当 k ...

  5. 029、Java中的四则运算

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  6. 解决fedora28桌面图标问题

    正文 在fedora28中默认是没有桌面图标的,对于那些习惯使用桌面的图标的人来说使用有点不适应. 替代方法是: 下载nemo,在终端内输入sudo dnf install nemo 创建~/.con ...

  7. 访问eureka 显示xml

    两种解决方式: 方式一:(我是通过此方式解决的) 一个博客“http://blog.csdn.net/l5764773160/article/details/77483730”,他的解决方案是: 将项 ...

  8. Window Server 2019 配置篇(3)- 建立hyper-v集群并在其上运行win10 pro虚拟机

    上次讲到我们的域里有了网关跟DHCP,这次我们要在域中建立hyper-v集群并在其上运行win10 pro虚拟机 那么什么是hyper-v集群呢? 就是两个及两个以上的运行hyper-v服务的服务器建 ...

  9. 解决Elasticsearch索引只读

    今天添加索引时发现kibana添加索引不生效,页面也没有报错,没有创建成功只是一闪而过. 另外发现各项目日志与当前时间差异很大,filebeat一直报错io timeout 具体报错如下: fileb ...

  10. centos-6更新yum源(163)

    更新前请先备份原来的repo文件,养成好习惯 cd /etc/yum.repos.d/ mv CentOS-Base.repo CentOS-Base.repo.bak 到http://mirrors ...