精华内容
下载资源
问答
  • 首先根据.bmp的图片建立数据库,这里面只...更改皮肤后将皮肤名称保存到了Styleconfig.ini的配置文件当中,在下一次打开窗体时自动加载上一次所更改的皮肤,代码简单易懂。亲测可用! C#代码是用2010版VS写的解决方案。
  • C#在窗体程序操作数据库数据

    千次阅读 2018-07-30 13:47:18
    界面有一个dataGridview、两个Button、两个Label和两个TextBox。 二、定义数据库操作的公共类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data....

    一、界面布局

    这里写图片描述

    界面中有一个dataGridview、两个Button、两个Label和两个TextBox。

    二、定义数据库操作的公共类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Windows.Forms;
    using System.Data;
    using MySql.Data.MySqlClient;
    
    namespace TemSys
    {
       public  class DBCtrl
       {
            private MySqlConnection m_ClientsqlConn;
    
            public DBCtrl()                                                                          //    连接类型
            {
                m_ClientsqlConn = new MySqlConnection();
    
                try
                {
                    m_ClientsqlConn.Dispose();
                    m_ClientsqlConn.Close();              
                    m_ClientsqlConn.ConnectionString = "Database=dbName;Data Source=localhost;User Id=root;Password=123;charset=utf8";
                    m_ClientsqlConn.Open();
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message);
                }
            }
            public DBCtrl(string IP, string DBname, string Uname, string Pword)                     //    创建连接
            {
                m_ClientsqlConn = new MySqlConnection();
                try
                {
                    m_ClientsqlConn.Dispose();
                    m_ClientsqlConn.Close();
                    m_ClientsqlConn.ConnectionString = string.Format("Database={0};Data Source={1};User Id={2};Password={3};charset=utf8", DBname, IP, Uname, Pword);
                    m_ClientsqlConn.Open();
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message);
                }
            }
    
            public void DBConn(string connStr)                                                         //    重载  创建连接
            {
                try
                {
                    m_ClientsqlConn.Close();
                    m_ClientsqlConn.ConnectionString = connStr;
                    m_ClientsqlConn.Open();
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message);
                }
            }
    
    
            public DataTable GetDataTable(string SQLstr)                                     //    获取DataTable 一个表
            {
                Console.Write("zcn==获取数据库连接,打开数据库");
                try
                {
                    if (m_ClientsqlConn.State == ConnectionState.Open)
                        m_ClientsqlConn.Close();
                    m_ClientsqlConn.Open();
                    MySqlDataAdapter da = new MySqlDataAdapter(SQLstr, m_ClientsqlConn);
                    DataTable resultDS = new DataTable();
                    da.Fill(resultDS);
    
                    return resultDS;
                }
                catch (Exception ee)
                {
                    Console.Write("zcn==获取数据库连接,打开数据库异常异常");
                    //MessageBox.Show( ee.Message);
                    m_logclass.WriteLogFilein(ee.Message, "GetDataTable.txt");
                    return null;
                }
                finally
                {
                    m_ClientsqlConn.Close();
    
                }
    
            }
    
            public DataTable GetDataTableUsing(string SQLstr)                                     //    获取DataTable 一个表
            {
                using (MySqlConnection m_ClientsqlConn = new MySqlConnection())
                {
    
                }
                try
                {
                    if (m_ClientsqlConn.State == ConnectionState.Open)
                        m_ClientsqlConn.Close();
                    m_ClientsqlConn.Open();
                    MySqlDataAdapter da = new MySqlDataAdapter(SQLstr, m_ClientsqlConn);
                    DataTable resultDS = new DataTable();
                    da.Fill(resultDS);
    
                    return resultDS;
                }
                catch (Exception ee)
                {
                    //MessageBox.Show( ee.Message);
                    return null;
                }
    
    
            }
    
            public List<string> GetStringListfor(string lineName,DataTable dt)    //根据某一列的名字  获取某个集合中该列的所有值
            {
                List<string> list = new List<string>();
                foreach (DataRow dr in dt.Rows)
                {
                    list.Add((string)dr[lineName]);
                }
                return list;
            }
    
            public List<DataRow> GetDataRowfor(DataTable dt)   //根据 datatable  获取每一行的数据的datarow
            {
                List<DataRow> list = new List<DataRow>();
                foreach (DataRow dr in dt.Rows)
                {
                    list.Add(dr);  
                }         
                return list;
            }
    /*
            public DataRow GetDataRowfor(string tablename,string ID)  //根据ID号 返回对应行的  DataRow
            {
                string ss = "select * from " + tablename + " where ID = \'"+ID +"\'";
                DataRow dr = new DataRow();
                DataTable dt = GetDataTable(ss);
                dr = dt.Rows[0];
                return dr; 
            }
    */
             public DataTable GetDataTableOneLine(string SQLstr)                                     //    获取DataTable 一个表中一行
            {
                MySqlDataAdapter da = new MySqlDataAdapter(SQLstr, m_ClientsqlConn);
                DataTable resultDS = new DataTable();
                da.Fill(resultDS);
                return resultDS;
            }
    
    
    
            public DataTable GetDataSet_to_Table(string SQLstr)                               //    获取 dataset   多个表中  table
            {
                try
                {
                    MySqlDataAdapter da = new MySqlDataAdapter(SQLstr, m_ClientsqlConn);
                    DataSet ds = new DataSet();
                    da.Fill(ds);
                    return ds.Tables[0];
                }
                catch
                {
                    return null;
                }
            }
    
            public Boolean InsertDBase(string insString)
            {
                try
                {
                    if (m_ClientsqlConn.State == ConnectionState.Open)
                        m_ClientsqlConn.Close();
                    m_ClientsqlConn.Open();
                    MySqlCommand sqlcomd = new MySqlCommand(insString, m_ClientsqlConn);
                    sqlcomd.ExecuteNonQuery();
    
                    return true;
                }
                catch (Exception ee)
                {
                    return false;
                }
                finally
                {
                    m_ClientsqlConn.Close();
    
                }
            }
    
            public Boolean deleteRowfor(string tablename,int deleteID)  //根据 ID 删除指定行
            {
                try
                {
                    string ss ="delete from "+ tablename +" where ID = "+ deleteID;
                    if (m_ClientsqlConn.State == ConnectionState.Open)
                        m_ClientsqlConn.Close();
                    m_ClientsqlConn.Open();
                    MySqlCommand sqlcmd = new MySqlCommand(ss, m_ClientsqlConn);
                    sqlcmd.ExecuteNonQuery();
                    return true;
                }
                catch(Exception ee)
                {
                    return false;
                } 
            }
    
            public Boolean ModifyRowfor(string modifystr,string modifyID)         // 根据
            {
                try
                {
                    string ss = modifystr + " where id = " + modifyID;
                    if (m_ClientsqlConn.State == ConnectionState.Open)
                        m_ClientsqlConn.Close();
                    m_ClientsqlConn.Open();
                    MySqlCommand sqlcmd = new MySqlCommand(ss, m_ClientsqlConn);
                    sqlcmd.ExecuteNonQuery();
    
                    return true;
                }
                catch (Exception ee)
                {
                    return false;
                }
                finally
                {
                    m_ClientsqlConn.Close();
                }
    
            }
    
            public void CloseDBase()               //   参数类型  不同数据库连接
            {
                m_ClientsqlConn.Close();
            }
    
        }
    }
    

    三、在界面中操作数据库方法

    ps:数据库的配置信息保存在Config.ini文件中,如果仅是测试用的话,可以直接在m_DataBase = new DBCtrl(ipstr, namestr, usernamestr, passwordstr);处输入ip地址、数据库名、数据库用户名和密码即可

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Runtime.InteropServices;
    
    namespace TemSys
    {
        public partial class ModifyDevice : Form
        {
            [DllImport("kernel32")]                                        //读写ini文件函数
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
            [DllImport("kernel32")]
            private static extern long GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
    
            DataTable dt = new DataTable();
    
            private DBCtrl m_DataBase;
    
            public ModifyDevice()
            {
                InitializeComponent();
            }
    
            //将所有的textBox值设为空
            private void TextBoxNull()
            {
                textBox1.Text = "";
                textBox2.Text = "";
            }
    
            //设置Lab值
            private void labelshow()
            {
                label1.Text = dataGridView1.Columns[0].HeaderText;
                label2.Text = dataGridView1.Columns[12].HeaderText;
            }          
    
            //初始化界面
            private void ModifyDevice_Load(object sender, EventArgs e)
            {
                StringBuilder retval = new StringBuilder();
                GetPrivateProfileString("DBConfig", "dbip", "", retval, 20, AppDomain.CurrentDomain.BaseDirectory + "Config.ini");
                string ipstr = retval.ToString();
                GetPrivateProfileString("DBConfig", "dbname", "", retval, 20, AppDomain.CurrentDomain.BaseDirectory + "Config.ini");
                string namestr = retval.ToString();
                GetPrivateProfileString("DBConfig", "dbusername", "", retval, 20, AppDomain.CurrentDomain.BaseDirectory + "Config.ini");
                string usernamestr = retval.ToString();
                GetPrivateProfileString("DBConfig", "dbpassword", "", retval, 20, AppDomain.CurrentDomain.BaseDirectory + "Config.ini");
                string passwordstr = retval.ToString();
    
                m_DataBase = new DBCtrl(ipstr, namestr, usernamestr, passwordstr);
    
                initDataTable();
            }
    
            private void initDataTable()
            {
                string ssp = string.Format("select * from device_info1");
                dt = m_DataBase.GetDataTable(ssp);
                dataGridView1.DataSource = dt;
    
                labelshow();
            }
    
            //双击dataGridView响应事件
            private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
            {
                string index = dataGridView1.CurrentRow.Cells[0].Value.ToString();
                if (label1.Text == "id")
                {
                    string ssp = string.Format("select * from device_info1 where id='" + index + "'");
                    dt = m_DataBase.GetDataTable(ssp); 
                    //DataRow row = dt.Rows[0];
                    textBox1.Text = dt.Rows[0]["id"].ToString();
                    textBox2.Text = dt.Rows[0]["number"].ToString();
                }
            }
    
            //点击修改按钮响应事件
            private void btnModify_Click(object sender, EventArgs e)
            {
                bool flag = false;
                string ssp = string.Format("update device_info1 set number='" + textBox2.Text + "'");
    
                flag = m_DataBase.ModifyRowfor(ssp, textBox1.Text);
    
                if (flag)
                {
                    MessageBox.Show("修改成功!");
                    initDataTable();
                }
                else
                {
                    MessageBox.Show("修改失败!");
                }
            }
    
            private void btnDelete_Click(object sender, EventArgs e)
            {
                 bool flag = false;
                int currentIndex = (int)dataGridView1.CurrentRow.Cells[0].Value;
                Console.WriteLine("输出当前选中数据行:" + currentIndex);
                flag = m_DataBase.deleteRowfor("device_info1", currentIndex);
                if (flag)
                {
                    MessageBox.Show("删除成功!");
                    initDataTable();
                }
                else
                {
                    MessageBox.Show("删除失败!");
                }
            }
    
        }
    }
    

    注:刚刚开始学习,有不足之处还请多多指教

    展开全文
  • C#窗体程序使用SQL数据库

    千次阅读 多人点赞 2019-12-13 00:29:19
    C#winform窗体使用数据库 文章目录C#winform窗体使用数据库1....可以使用上图T-SQL的命令行创建表的列,也可以直接编辑数据表的列名称、数据类型。 2.连接数据库 2.1 按照下图的指示找到数据库...

    C#winform窗体使用数据库

    1.创建数据库

    1.1 新建好工程文件之后,为工程添加如下基于服务的数据库
    在这里插入图片描述1.2 打开数据库的管理目录,进入数据表的定义
    在这里插入图片描述可以使用上图中T-SQL的命令行创建表中的列,也可以直接编辑数据表中的列名称、数据类型。

    2.连接数据库

    2.1 按照下图的指示找到数据库的连接字符串 这个很重要
    在这里插入图片描述2.2 编辑连接数据库代码
    (1)引用数据库操作相关头文件
    在这里插入图片描述(2)进行数据库的连接
    在这里插入图片描述随后调用conn对象的open方法打开数据库
    在这里插入图片描述

    3.插入数据

    (1)建议使用下图中的方法,将控件中输入的值通过字符串拼接,形成完整的sql语句,也有通过控件值绑定变量的方法,挺麻烦

    string sql_insert = "insert into Account_Password(Account,Password,private_key) values('" + Account.Text.Trim().ToString() +"','" + Secret + "','"+key_key+"')";
    SqlCommand cmd = new SqlCommand(sql_insert, conn);
    

    4.查找数据

    (1)这就类似插入数据的操作,就不多说了

    string sql_slect = "select Account,Password,private_key from Account_Password where Account='" + Account.Text.ToString().Trim() + "'";
    SqlCommand sqlcmd = new SqlCommand(sql_slect, conn1);
    

    5.测试图

    拿出一个注册账户的项目测试一些吧
    (1)注册账户,再去数据库中验证
    在这里插入图片描述(2)验证Account中出现了账号 下图另外的列就不用管了,哈哈,数据加密了
    在这里插入图片描述

    展开全文
  • 如何 Access 2007 的窗体中实现点击按钮打开另一首先有4个名称分别为A、B、C、D的窗体,已经建立好了。 我新建了一个空打开一个Access数据库软件,可以打开已创建好的数据库数据库工具】菜单下,鼠标左键...

    如何在 Access 2007 的窗体中实现点击按钮打开另一首先有4个名称分别为A、B、C、D的窗体,已经建立好了。 我新建了一个空打开一个Access数据库软件,可以打开已创建好的数据库,在【数据库工具】菜单下,鼠标左键单击【空白窗体】按钮。

    接着,在【空白窗体】菜单下,鼠标左键单击【命令】按钮控件,如下图所示。

    然后,在【窗体】窗口中,绘制出命令按钮。

    7210f5adf6257b883bed87213ecfb1e0.png

    Access点击按钮后,打开一个新的窗体,并且显示对==首先要建一个含有全部人员信息(含导演字段)的窗体,并且可以单独运行。 ==在另外一个窗体中调用这个窗体,包含2个过程,1.打开那个人员窗体;2.运用查询语句,大致是这样: Private Sub Command1_Click() Dim temptxt temptxt = [姓名] '这

    我想在ACCESS一个窗体中加个按钮,点击后就可以直急,在线等

    在设计视图中做好那个能添加新记录的目标窗体,如确定好记录源,将窗体的允许添加(AllowAdditions )属性设置为 是 、数据输入(DataEntry )属性设置为 是 ;

    在想打开窗体的那个命令按钮的“单击”事件属性上。

    如何在ACCESS中打开数据库默认直接打开一个窗体?

    我下载了一个别人做好的数据库,一打开就自动打开一个窗体,直接就可以在Access里面点击菜单“工具-启动”,在弹出的对话框的【显示窗体/页】选项里面选择需要作为启动界面的窗体就可以了,另外还可以添加标题和图标等。 一般情况下设置启动项是用于Access程序发布,建议设置启动项前备份一下数据库。

    access中如何设置一个按钮,点击后只显示窗体?我想在窗体中设置一个按钮,点击这个按钮后只显示窗体,而不显示工具栏你会VB吗,给按钮的命令设置成 DoCmd.RunCommand acCmdAppMinimize 就 OK了,屏幕上只剩下当前窗体。 如果不会VB,欢迎追问。我告诉你怎么弄 。

    怎样用access2010完成在窗体中建立按钮,使按钮点...以“基本信息”表为数据源创建一个窗体,如“样张3” 所示,窗体上的按钮为“在窗体1设计模式下,进入按钮“打开表”的事件生成器/代码生成器,输入:DoCmd.OpenTable "交易表",保存退出。

    ACCESS 按钮打开新窗体,并显示与原窗口内容对应的网上有类似的问题,但依此操作不成功,不知道是哪里出了问题。具体环境show一个新窗口(ShowDialog()) 的后面 重新调用查询信息的方法就可以了。 因为当你用ShowDialog()打开一个新的窗体之后,本窗体下面的代码就不会执行了。 一直等到你关闭新窗体 , 也就是这个添加新数据的窗体之后。

    access如何在打开窗体时自动新建一个记录。

    麻烦详细一点,没接触过accress。。万分感谢~~~

    选中要操作的窗体,右键寻设计视图”,在打开的设计视图【窗体】属性中点击上方的“事件”选项卡,选中【加载】,然后点击后面的…按钮,弹出窗口中选择【宏生成器】或者【代码生成器】,然后对照下面操作: 方法一、【宏生成器】法:

    如何让Access打开的弹出窗体显示在电脑桌面最前面

    用了 DoCmd.RunCommand acCmdAppMinimize 后,每次弹出的窗体都置于最底1.新建Winform的项目,在默认的 Form1 窗体添加Button 控件(按钮),修改 Text 属性的值为“打开另一个窗体”。 2.设置 Form1 窗体的属性 TopMost 的属性值为 True。 3,.在项目中新建窗体,默认命名为Form2。 4.回到Form1窗体。

    在access窗体中添加命令按钮,单击打开报表,请问需要设置为DoCmd.OpenReport "报表名", acViewPreview view 下列固有常量之一: acViewDesign acViewNormal(默认值) acViewPreview 如果该参数空缺,将假设为默认常量 (acViewNormal)。acViewNormal 将立刻打印报表。

    展开全文
  • VBA的开发,遇见一个小问题,如何让access一运行就直接打开窗体? 答 : "菜单栏"的"工具"--&gt;"启动"设置.
    在VBA的开发中,遇见一个小问题,如何让access一运行就直接打开窗体?
    :  "菜单栏"的"工具"-->"启动"中设置.
    展开全文
  • 今天写的多线程没有起到多线程的目的,速度并没有起来。...日常使用主要分三步:连接数据库、到主窗体、分发出去。 1、连接数据库其中一种方法:采用窗体控件来输入参数连接。 背后的代码如下: public parti...
  • 已经建立好窗体和表的情况下简单连接数据库简单数据库语句:查看所需连接数据库的连接字符串写入Dao类 如果不会以命令行去打,可以下载SSMS方便使用:SSMS下载地址 以学生表为例 简单数据库语句: Insert delete ...
  • C#,具有多种调用数据库的dll,本文章,我使用的是MySql.Data.dll,该包是MySql官方所推出的供C#调用的包。可以直接去MySql官网去下载。百度云盘链接:链接:...
  • 百种弊病,皆从懒生 Microsoft Office Access是由微软发布的关系型数据库管理系统。...1,存储方式单一Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放后缀为 .mdb 的数...
  • 如果一直跟着前几个文章的话 现在基本上应该能做到这种程度 我们知道窗体显示 直接show就好了 但是 ...2.创建两个辅助方法,一个负责打开窗体,一个负责关闭窗体。 My_SeQuAdd objFrom = new My_SeQuAdd(); ----...
  • 所以有必要写一个类来对数据库中的信息进行增删改查——SQLHelper类。 但存在一个问题,连接字符串编译后无法修改,即SQLHelper类所在的类库被编译为 .dll文件无法对此文件进行修改。 如果此程序安装到了其他主机...
  • 在数据库应用开发,经常会需要到Excel的数据直接导入到SQL数据库中;另外为了方便对数据库中的数据进行打印。有时候需要导出数据库中的数据到Excel,借助Excel自身的打印功能进行报表打印。窗体控件:4个...
  • 自学C#,前几天学到dataGridView控件 学完后 就想知道怎么列表内直接编辑数据,然后保存到数据库中,就网上看了看,答案都不是很理想,自己慢慢琢磨然后琢磨了出来 第一次发博客 就像记录自己慢慢成长 有啥不好...
  • SharePoint 2010创建联系人Web数据库网站 SharePoint 2010提供了一种新的网站模板,叫做“Web数据库”,其实就是我们经常使用的Microsoft Access数据库,现在微软把他集成到了SharePoint 2010平台上且成...
  • 二级窗体打开与关闭,这个功能也很有必要,由于整个系统各种模块数量窗体数量比较多,后期可能还会增加更多,4K屏幕上可以显示很多的模块,但是有时候有些模块不想显示出来,就需要将该模块关闭掉,直接在二级...
  • 本任务的内容摘要 要求 示例 缺陷参考概要本分步指南介绍如何将存储在数据库中的图像直接复制到 Windows 窗体上的 PictureBox 控件,而无须将此图像保存到文件。 Microsoft Visual Basic 6.0 ,如想直接在 ...
  • 用java的swing组件画出表格,实现“增加”、“删除”、“保存”、“退出”的功能,并且与mysql数据库相连接。...可以实现提取数据库中表的数据显示到含有表格的窗体上,也可以将表格修改的内容写入数据库
  • 黑窗口连接MySQL数据库

    千次阅读 2020-07-03 14:07:11
    2.打开数据库:mysql -u root –p 连接mysql服务器需要参数: Host 主机 -h Username 用户名 -u ...
  • 最近的一个.net项目,我要实现图片以二进制形式存到数据库中,并从数据库中读出显示页面上。以前没做过类似的东东。经过查阅大量的资料,将实现思想先下来供大家参考。1首先是上传文件。用html的控件既可实现...
  • 使用数据库:SQL sever 使用语言:C# 使用IDE:Visual Studio 2019 初步想法: 话不多说,第一步:建立数据库: 为此我们需要考虑关于建立哪些表的问题,首先我们肯定需要一个读者表和一个图书表,才外,我们还需要...
  • 示例 使用以下结构创建一个 SQL Server 或 Access 表: CREATE TABLE BLOBTest ...BLOBID INT IDENTITY NOT NULL, ...打开 Visual Studio .NET,然后新建一个 Visual C# Windows 应用程序项目。从工具箱向默认的 F
  • 本次继续,往数据库中添加数据,数据库仍然采用上一篇数据库联结那个,本文只记录一下,通过VB.NET程序,往数据库中插入数据的步骤,至于原理自己掌握的水平有限,不过多深究,下面进入正题,开搞。 一、首先我们...
  • 有时候我们想做一个小的应用程序给客户用,这时我们想到用什么数据库呢?又要用什么来开发工具来开发呢? 数据库用sql server?,不太现实。 开发工具用.net?,客户端又要装.net framework,麻烦。用vb?又要vb的...
  • 根据ComboBox下拉的值查询数据库表中的内容并显示DataGridView中 1、form窗体中添加一个ComboBox和一个DataGridView控件 2、编辑ComboBox的值 3、执行查询语句并将结果给DataGridView的DataSource
  • Visual Basic使用数据库

    千次阅读 2012-03-04 20:42:22
    数据库是一个以电子化方式存储于文件的大量信息的有机组织的集合。你可以使用许多数据库产品建立强大的数据库,这些产品包括Microsoft Access、Microsoft FoxPro、Btrieve、Paradox和dBASE等。你还可以使用Open ...
  • 在窗体的代码模块顶部插入 using 语句: using System.Data.SqlClient; using System.IO; using System.Drawing.Imaging; 5. 将以下数据库连接字符串的声明添加到 public class...
  • 类似于这样一段代码(vs创建窗体程序,做一个按钮判断是否连上了数据库),关于连接的问题,我记录如下: private void button1_Click(object sender, EventArgs e) { string SqlStr = “Data Source=WIN-16DM53...
  • 实质上,本文的中心还是讨论C#对SQL Server的增删改查,只是这次创新一点,配合Treeview制作SQL Server数据库查看器。 具体如下图: 根据SQL Server,Test数据库中的表的结构与内容: 编写一个对Test数据库...
  • 很多时候我们程序操作都得先登录, 所以为了完善我今天就向着给我的窗体程序加了一个登录过程. 废话不多说, 写起来.分两部分, 一是简单的对比字符串, 进一步连接数据库(最好这么做).一. 字符串比较登录首先工程建立, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,917
精华内容 8,366
关键字:

在数据库中如何直接打开窗体