本文收集整理关于Windows窗体怎么修改数据库的相关议题,使用内容导航快速到达。
内容导航:
Q1:如何在C#Windows窗体程序中修改Access数据库信息,用的是Oledb数据提供程序,vs2005环境
1.简练的方式: 使用数据绑定 google搜索:数据绑定 即可
2.麻烦的方式:使用传统的sql语句 google搜索:C#连接数据库代码 即可
w∴WW.yijitaO.COM
Q2:用C#写的windows窗体,怎样将数据库中的表显示在窗体中?
先连接数据库,
using System;
using System.Data;
using System.Data.SqlClient; namespace BusinessRules
{
public class DB
{
public DB()
{
}
//connStr为访问SQL Server的连接字符串
//说明:
为数据库服务器IP地址
//在使用时,替换为使用的数据库服务器的IP地址
//database=xx8
//xx8在这里表示库名,
//在使用时,替换为使用的数据库的库名
//uid=xx8
//xx8为用户名,在实验室用sa
//password=xx8
//xx8为密码,在实验室用sa
//下面是从webconfig获取数据库的联接字符串的方法
//string connStr = System.Configuration.ConfigurationSettings.AppSettings["sqlLink"];
//下面是在webconfig里如何设置数据库的联接字符串的方法,和上面的一起配套使用
//
//
//
//
string connStr="server=;database=;uid=;password=";
//上面是临时调试使用的方法,直接设置联接字符串。 #region 获取查询结果,DataSet GetSqlDataSet(string sqlString)
///
/// 获取查询结果。返回类型为DataSet
/// sqlString 参数为查询的SQL语句
///
public DataSet GetSqlDataSet(string sqlString)
{
//定义返回变量
//实例化数据集DataSet,对象名为ds
DataSet ds=new DataSet();
try
{
//实例化连接对象SqlConnection,对象名为sqlConn
SqlConnection sqlConn=new SqlConnection(connStr); //用查询的SQL(sqlString)语句和连接对象sqlConn实例化数据接口SqlDataAdapter
//对象名为da
SqlDataAdapter da=new SqlDataAdapter(sqlString,sqlConn);
//da.Fill(ds)是数据接口(SqlDataAdapter)提供的方法
//具体作用为:
//打开与数据库的连接
//将查询的SQL语句发送到数据库服务器
//接受返回的查询结果
//并将结果填充到数据集对象ds中
//关闭与数据库的连接
da.Fill(ds);
}
catch(Exception e)
{
//抛出捕捉到的异常
throw(e);
}
//返回查询到的结果
return ds;
}
#endregion
#region 执行增、删或改的SQL语句 int ExecuteSql(string sqlString)
///
/// 执行增、删或改的SQL语句
/// 返回值为受影响的行数(记录数)
/// sqlString 参数为增、删或改的SQL语句
///
public int ExecuteSql(string sqlString)
{
int i=0;
try
{
////实例化连接对象SqlConnection,对象名为sqlConn
SqlConnection sqlConn=new SqlConnection(connStr); //用查询的SQL(sqlString)语句和连接对象sqlConn实例化SqlCommand
//对象名为sqlCmd
SqlCommand sqlCmd=new SqlCommand(sqlString,sqlConn); //打开与数据库的连接
sqlConn.Open(); //将增、删或改的SQL语句发送到数据库服务器
//并接受返回的结果,返回的结果为受影响的行数(记录数)
i=sqlCmd.ExecuteNonQuery(); //关闭与数据库的连接
sqlConn.Close();
}
catch(Exception e)
{
Exception ee=new Exception(sqlString + e.Message);
throw(ee);
}
return i;
}
#endregion }
}
用此类
填充数据
Q3:的windows窗体应用程序怎么连接数据库
首先要知道你使用的是什么数据库,如果是Sql server ,请先安装SQL Server2008,然后在C#中写如下代码:
using System.Data.sqlClient;
namespace SQl
{
class Program {
static void Main(string[] args)
{
//新建连接(用来连接数据库)
SqlConnection conn =
new SqlConnection("server=localhost;database=xue;user=sa;password=123");//其中database是你所要连接的数据库,user是用户名,SQL Server上的,password 也一样
conn.Open();//打开连接
/*
SqlCommand command = conn.CreateCommand();//创建执行命令的对象
command.CommandText = "INSERT INTO dbo.info (id, name) VALUES (7, WJBXL!)";//为对象复制(就是写SQL语句)
command.ExecuteNonQuery();//执行 NoQuery就是没返回结果(就是没有结果集, 不是Select的都用这个)
*/
SqlCommand cmd = conn.CreateCommand();//同样创建执行命令的东西
cmd.CommandText = "select * from dbo.info";//赋值
SqlDataReader dr = cmd.ExecuteReader();//执行 并 返回一个Reader(用来读结果集的)
Console.Write("ID\tNAME\n");// 这我写的, 打印表头
while (dr.Read()) {//一直读(read方法就是看看有没有了,有了就True没了就False, 每调用一次就向下移动一次)
Console.WriteLine(dr[0] + "\t" + dr[1]);//dr[0]就是那个datareader读出来的第一列的值
}
conn.Close();//用完了以后把连接关了
Console.Read();
}
}
}
Q4:c# windows窗体中 用datagridview 绑定了sql server数据库,怎么获得表中未显示的内容?
ScrollBars属性设置为both
Q5:C#一般怎么在windows应用窗体中显示在数据库查询的数据包装的一个对象
listview private void InitListView(ListView ListView)
{
//添加列头
ColumnHeader ch1 = new ColumnHeader();
ch1.Width = 100; //列标头宽
ch1.Text = "学号"; //列标头名称
ColumnHeader ch2 = new ColumnHeader();
ch2.Width = 100;
ch2.Text = "姓名";
listView1.Columns.Add(ch1);//在同一行上添别的列(此处一行共两列)
listView1.Columns.Add(ch2); //设置属性
listView1.GridLines = true;//显示网格线
listView1.FullRowSelect = true;//是否全行选择
listView1.HideSelection = false;//失去焦点时显示选择的项
listView1.HoverSelection = true;//当鼠标停留数秒时自动选择项
listView1.MultiSelect = false;//设置只能单选 ImageList li = new ImageList();
li.Images = new Size(80, 80);//指定图标的大小
li.Images.Add(Image.FromFile("pen.jpg"));//添加图标
li.Images.Add(Image.FromFile("box.jpg"));
li.Images.Add(Image.FromFile("file.jpg"));
listView1.LargeImageList = li;//设置大图标的集合 ImageList sm = new ImageList();
sm.ImageSize = new Size(30, 30);//指定图标大小
sm.Images.Add(Image.FromFile("pen.jpg"));
sm.Images.Add(Image.FromFile("box.jpg"));
sm.Images.Add(Image.FromFile("file.jpg"));
listView1.SmallImageList = sm;//设置小图标 //添加项
ListViewItem lv = new ListViewItem("钢笔");//第一列的记录为钢笔
lv.SubItems.Add("001");//添加第二列的内容为001
lv.SubItems.Add("派克");//添加第三列的内容
lv.ImageIndex = 0;//指定图像的索引
listView1.Items.Add(lv);
}
把 void InitListView(ListView ListView)添加到
public Form1 ()
{
InitializeComponent();
InitListView(this.listView1); }
例: private void InitListView(ListView ListView)
{
ColumnHeader h1 = new ColumnHeader();
h1.Width = 85;
h1.Text = "编号";
ColumnHeader h2 = new ColumnHeader();
h2.Width = 100;
h2.Text = "名称";
ColumnHeader h3 = new ColumnHeader();
h3.Width = 100;
h3.Text = "单价";
listView1.Columns.Add(h1);
listView1.Columns.Add(h2);
listView1.Columns.Add(h3);
listView1.View = View.Details;
listView1.GridLines = true;
listView1.FullRowSelect = true;
}
显示选中行的字段值 void listView_SelectedIndexChanged(object sender,EventArgs e) //当列表中的索引改变时引发此事件 { //通过SubItems来访问其他列的属性 //必须在listview1中有选中项 listView1.SelectedItems[0].SubItems[1].Text;+"\n" //0为行号(可选多行时),1为列为(第二列,第一列0)
} 记问listview中所有的记录 添加记录时必这样添加ColumnHeader h1 = new ColumnHeader();
h1.Width = 85;
h1.Text = "编号";
ColumnHeader h2 = new ColumnHeader();
h2.Width = 100;
h2.Text = "名称";
ColumnHeader h3 = new ColumnHeader();
h3.Width = 100;
h3.Text = "单价";
listView1.Columns.Add(h1);
listView1.Columns.Add(h2);
listView1.Columns.Add(h3);
这样是添加了3个字段,三条记录 如果用listview1.items.add(值");这种添加方法为一次添加一行一列,无法达到一行多列的目的 访问所有记录代码: if (listView1.Items.Count > 0)
{
foreach (ListViewItem lt in listView1.Items)
{
MessageBox.Show(Convert.ToString(lt.SubItems[0].Text));//记问第行记录的第一个字段值
}
}