在C# winform中使用 richtextbox 向access保存及读取 图文混排数据(有源码,帮忙改一下)

在C# winform中使用 richtextbox 向access保存及读取 图文混排数据(有源码,帮忙改一下),第1张

先重载方法,前一个是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 局域网访问等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9856623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存