private string ConnStr = "数据库路径";
protected OleDbConnection conn = new OleDbConnection();
protected OleDbCommand comm = new OleDbCommand(); connConnectionString = @"Provider=MicrosoftJetOleDb40;Data Source=" + ConnStr;//
commConnection = conn; connOpen(); string sqlstr=“查询语句"; DataTable tmptable=dataTable(sqlstr);foreach(DataRow dr in tmptableRows){ sqlstr="修改语句";excuteSql(sqlstr);} private DataTable dataTable(string sqlstr)
{
DataTable dt = new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter();
try
{
openConnection();
commCommandType = CommandTypeText;
commCommandText = sqlstr;
daSelectCommand = comm;
daFill(dt);
}
catch (Exception e)
{
throw new Exception(eMessage);
}
finally
{
closeConnection();
}
return dt;
}//返回指定sql语句的datatable private string excuteSql(string sqlstr)
{
try
{
openConnection();
commCommandType = CommandTypeText;
commCommandText = sqlstr;
commExecuteNonQuery();
}
catch (Exception e)
{
return eMessageToString();
}
finally
{ closeConnection(); }
return "";
}//执行sql语句
先引用命名空间:
using SystemDataSqlClient;
然后在按钮的单击事件里写代码:
string sql="insert 表名 (name,account,password) values(@name,@account,@password) ";
string name=txtNameText;//姓名
string account=txtAccountText;//账号
string password=txtPassWordText;//密码
SqlParameter sName= new SqlParameter("@name", name);
SqlParameter sAccount= new SqlParameter("@account", account);
SqlParameter sPassword= new SqlParameter("@password", password);
string connString="Data Source=服务器名称;Initial Catalog=数据库名称;User ID=数据库登录名;Password=数据库登录密码";
SqlConnection connection = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(sql, connection);
connectionOpen();
int result = cmdExecuteNonQuery();
connectionClose();
cmdParametersClear();
if(result>0)
{
MessageBoxShow("插入数据库成功");
}
else
{
MessageBoxShow("插入失败,请稍候再试");
}
以下我已测试过,可行。
1、就按你设置的内容,“入库”窗体有这些字段,当然“入库表”中也有这些字段。设置窗体的“数据”“记录源”为“入库表”,添加入库表的字段到窗体中,设置“料号”控件框的“更新后”事件如下:(这里,我假设“料号”是文本类型的)
Private Sub 料号_AfterUpdate()
Me名称Value = DLookup("[名称]", "物料信息表", "[料号]='" & Me料号 & "'")
Me规格Value = DLookup("[规格]", "物料信息表", "[料号]='" & Me料号 & "'")
Me单位Value = DLookup("[单位]", "物料信息表", "[料号]='" & Me料号 & "'")
End Sub
如果,“料号”是数字类型,则如下:
Private Sub 料号_AfterUpdate()
Me名称Value = DLookup("[名称]", "物料信息表", "[料号]=" & Me料号)
Me规格Value = DLookup("[规格]", "物料信息表", "[料号]=" & Me料号)
Me单位Value = DLookup("[单位]", "物料信息表", "[料号]=" & Me料号)
End Sub
当你更改料号后,随便单击其它的控制框,“名称”“规格”“单位”就能自动更新并填充进去!并能保进“入库表”中。
2、另外要说的是,你的“入库表”中“料号”肯定是主键吧, 你的“入库表”中只要有“料号”字段即可,不应当设置“名称”“规格”“单位”这些字段,这样是冗余的,不符合规范设计。
①首先要在窗口的open事件中写如下一句dw_1settransobject(sqlca)//譬如您要保存的数据窗口名字为dw_1;这计划的意义在于时刻保持与数据窗口月数据库表的连接 亦或者双击Dw_1对象。选择 constructor事件 写下以上语句即可
②然后在数据窗口中修改 或者添加数据随后创建一个按钮或者事件 都行用于保存当然可以对应您的相应需要的校验都通过后才可保存写如下代码进行保存数据
if dw_1update() >o then//更新保存数据; 1 -成功;-1-失败
commit;//提交数据
else
rollback;//回滚数据
end if
同时要注意 在数据窗口对象控件 即在 dw_1所用到的数据窗口对象编辑画板中的update properties 设置正常(即更新属性) 具体查看 打开rows选单-update properties-Allow updates挑对勾!-upateable columns 选中要可以提交更新保存的字段随后点击ok保存配置 即可
建表t,然后单击查询,然后选第一项,然后d出的对话框选关闭,然后看窗体的左上角,有个SQL按钮,点一下,打开的窗体里面可以写sql语句,点叹号是运行。结果出现后,右键菜单第二项可以返回到sql语句输入界面。
以上。
以上就是关于用c#窗体程序实现从数据库读出某一行数据并能对其进行修改保存全部的内容,包括:用c#窗体程序实现从数据库读出某一行数据并能对其进行修改保存、在c#窗体程序中,注册界面有姓名,帐号,密码,如何实现,点击注册按钮,就将以上信息保存到相应的数据库、ACCESS数据库中,关于窗体中如何实现自动填入.并能保存于表中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)