先重载方法,前一个是Sql,后一个是Sql参数集合
插入方法:
public static int ExecuteSql(string SQLString,OleDbParameterCollection parms)
{
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connectionOpen();
using (OleDbCommand cmd = new OleDbCommand(SQLString, connection))
{
cmdParametersAddRange(parms);
cmdExecuteNonQuery();
}
connectionClose();
}
}
读取方法:
public object SqlRead(string sqlstring)
{
using (OleDbConnection cn = new OleDbConnection(connectionString))
{
cnOpen();
using (OleDbCommand cmd = new OleDbCommand(sqlstring, cn))
{
object obj=cmdExecuteScalar();
if (obj == null)
{
MessageBoxShow("数据库中目前没有数据,请先存入!");
}
else
{
return obj;
}
}
cnClose();
}
}
上面两个方法呢,写到你的那个啥类里面的
调用的时候呢,就
插入:
SystemIOMemoryStream ms = new SystemIOMemoryStream();
thisrichTextBox1SaveFile(ms, RichTextBoxStreamTypeRichText);
OleDbParameterCollection param= new OleDbParameterCollection();
paramAdd(new OleDbParameter("@rtf",ms));
XX类的ExecuteSql("insert into [demo] (rtf) values (@rtf)",param);
读取
byte[] buff=(byte[])XX类的SqlRead("select top 1 rtf from [demo] order by [id] desc");
SystemIOMemoryStream ms = new SystemIOMemoryStream(btRTF);
rtbDemoLoadFile(ms, RichTextBoxStreamTypeRichText);
其中XX类是你那个啥类
using SystemDataOleDb;
DataSet ds = new DataSet();
OleDbCommand comm = new OleDbCommand();
OleDbDataAdapter da = new OleDbDataAdapter();
//access数据库连接字符串,自行更改数据库路径和名字
string ConnectionStr = @"Provider=MicrosoftACEOLEDB120;Data Source=" + ApplicationStartupPath + @"\EquipmentDBmdb;Persist Security Info=False";
OleDbConnection conn = new OleDbConnection(ConnectionStr);
connOpen();
commConnection = conn;
commCommandType = CommandTypeText;
commCommandText = "select from DictOper";//查询DictOper表
daSelectCommand = comm;
daFill(ds);
textBox1Text=dsTables[0]Rows[0][0]ToString();//显示第一行第一列的一个值
connClose();
首先呢,说一些看似相关的词汇来唬人,是不好滴。
问题呢,我们需要按顺序进行思考
Winform用access 本来就不是很合理的,因为access同sql有些区别就是access最终连的数据库实际上是指定的物理数据库文件位置,这跟sql的映射地址数据库实例名称,有些区别的。
1,那么使用access,若要能让客户端的机器都连接上你的机器,首先得保证,这些机器都能访问到你的这个mdb文件
2,若要都能访问到这个文件,很明显是你这个文件所处的文件夹要设置成共享。
3,那么我们再回想下,怎么访问局域网共享文件夹下的文件?其实我们大家都使用过,通过IP方式就能获取到需要访问的资源,你的例子,这里 你首先确定别人机器是否可以访问到你这个文件。
开始-运行里面输入 你的IP\my\testmdb 确定能访问了,才能保证,别人机器能连上你的access,说试了没用这样的结论,那要看看你怎么试的。
4,总结下来,winform是不适合access联网使用的,适合单机程序,access是适合网站程序的,只要设置成服务器位置的mdb就行了。
以上就是关于在C# winform中使用 richtextbox 向access保存及读取 图文混排数据(有源码,帮忙改一下)全部的内容,包括:在C# winform中使用 richtextbox 向access保存及读取 图文混排数据(有源码,帮忙改一下)、Winform c#查询access数据后显示在textbox上、C# winform access 局域网访问等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)