把我的代碼貼給妳看壹下,懶得寫,我把他寫在類文件裏:
using?System;using?System.Collections.Generic;
using?System.Linq;
using?System.Text;
using?System.Data;
using?System.Data.OleDb;
using?System.Data.SqlClient;
using?System.Windows.Forms;
using?System.Reflection;
namespace?CreazyDataWin32
class?linkdata
{
public?DataSet?ds?=?null;
public?SqlDataAdapter?sda?=?null;
public?static?SqlConnection?conn?=?null;
public?void?OpenLink()//打開鏈接
{
conn?=?new?SqlConnection(); conn.ConnectionString?=?"Server=192.168.1.2;UID=sa;PWD=111;DataBase=DB222"; try {conn.Open();
} catch {MessageBox.Show("連接數據庫失敗!");
} } public?void?link(String?sql)?//鏈接數據庫 {if?(conn?!=?null)
{
ds?=?new?DataSet();
sda?=?new?SqlDataAdapter();
sda.SelectCommand?=?new?SqlCommand(sql,?conn);
SqlCommandBuilder?builder?=?new?SqlCommandBuilder(sda);
sda.Fill(ds);
}
}
public?void?saveTable()//保存數據
{
if?(ds?!=?null) { sda.Update(ds.Tables[0]); MessageBox.Show("操作已成功!","保存數據",MessageBoxButtons.OK,MessageBoxIcon.Information); } } public?void?filldata(DataSet?ds,?BindingNavigator?b,?DataGridView?d)?//給dataGridview和導航綁定數據{
BindingSource?bs?=?new?BindingSource();
bs.DataSource?=?ds.Tables[0];
b.BindingSource?=?bs;
d.DataSource?=?bs;
}
} 登陸時初始化窗體,加載frame過程中就打開鏈接:
bll.linkdata?l=new?bll.linkdata();l.OpenLink(); 使用的時候在窗體中這麽寫:
bll.linkdata?l=new?bll.linkdata();//全局變量void?ViewData()?//查詢數據
{
l.link("SQL?查詢語句"); l.filldata(l.ds,bindingNavigator1,dataGridView1);}
void?saveData()//這樣就保存了dataGridView修改的數據,還不變他的而編輯狀態
{
l.savaTable();}
程序結束時就關閉鏈接,夠詳細吧