我以前也遇到过这个问题~非常的郁闷~
不过也确实不用在这一棵树上吊死~~
可以直接用拼SQL字符串的方法来实现~
我帮你改了一下!!
string content = RequestForm["content1"]ToString();//用来接收文本编辑器提交的文本(包括其格式)
string b = RequestForm["txtUserName"]ToString();//用来接收提交过来的编号
string dbpath2 = SystemConfigurationConfigurationSettingsAppSettings["dbpath"];
OleDbConnection conn2 = new OleDbConnection("Provider=MicrosoftjetOLEDB40;Data source=" + ServerMapPath(dbpath2));
conn2Open();
string str =stringFormat("update xianlu set richengshisu='{0}' where bianhao={1}",content,b); //用 format 方法拼接字符串
ResponseWrite(str);
OleDbCommand cmd1 = new OleDbCommand();
cmd1CommandText = str;
cmd1Connection = conn2;
try
{
int i=cmd1ExecuteNonQuery();
ResponseWrite("<br>" + str);
ResponseWrite("<script>alert('添加成功!');</script>");
ResponseWrite("<script>locationreplace('/xianluaspx');</script>");
}
catch (OleDbException ex)
{
ResponseWrite("添加失败!" + exMessage);
}
conn2Close();
cmd1ConnectionClose();
cmd1Dispose();
数据库通常分为:\x0d\层次式数据库、网络式数据库和关系式数据库三种。\x0d\而不同的数据库是按不同的数据结构来联系和组织的。\x0d\数据库有类型之分,是根据数据模型划分的。目前成熟地应用在数据库系统中的数据模型有:层次模型、网壮模型和关系模型。\x0d\一、层次模型:\x0d\层次模型是用树结构表示记录类型及其联系的。\x0d\树结构的基本特点是:\x0d\1、有且仅有一个结点无父结点;\x0d\2、其它结点有且有一个父结点。\x0d\在层次模型中,树的结点是记录型。上一层记录型和下一层记录型的联系是1:n的。\x0d\层次模型就象下面我们给出的一棵倒立的树。\x0d\注意:在层次式数据库中查找记录,必须指定存取路径。这种关系模型不支持m:n联系。\x0d\二、网状模型:\x0d\网状模型中结点间的联系不受层次限制,可以任意发生联系,所以她的结构是结点的连通图。\x0d\网状模型结构的特点是:\x0d\1、有一个以上结点无父结点;\x0d\2、至少有一个结点有多于一个父结点。\x0d\注意:虽然网状模型能反映各种复杂的关系,但网状模型在具体实现上,只支持1:n联系,对\x0d\于m:n联系可将其转化为1:n联系。\x0d\三、关系模型:\x0d\关系模型的本质就是用若干个二维表来表示实体及其联系。\x0d\关系是通过关系名和属性名定义的。一个关系可形式化表示为:\x0d\R(A1,A2,A3,,Ai,)\x0d\其中:R为关系名,Ai为关系的属性名。\x0d\目前常用的数据库管理系统有:\x0d\ACCESS、SQLServer、Oracle、MySQL、FoxPro和Sybase等。\x0d\ACCESS是美国Microsoft公司于1994年推出的微机数据库管理系统它具有界面友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统。\x0d\Oracle公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州Redwoodshore。Oracle提供的完整的电子商务产品和服务包括:用于建立和交付基于Web的Internet平台;综合、全面的具有Internet能力的商业应用;强大的专业服务,帮助用户实施电子商务战略,以及设计、定制和实施各种电子商务解决方案\x0d\SQL是英文StructuredQueryLanguage的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的 *** 作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的是关系型数据库管理系统。\x0d\内容来源网络,仅供参考!
处理blob类型数据
对于大二进制数据 在PB Script中是用blob数据类型表示并加以处理 标准SQL语句中的select insert和update语句无法直接查询blob类型的数据 在PB中 *** 作blob类型的数据只能用专用的语句 从数据库中查询blob类型的数据的命令是
selectblob restofselectstatement {using transactionobject}
更新数据库中blob类型数据的格式是
updateblob tablename set blobcolumn = blobvariblerestofupatestatement {using transctionobject}
如连接的数据库是sybase或者Sql 则selectblob和updateblob语句要求数据库的自动提交方式为true 所以在在每次调用selectblob和updateblob语句以前必须用命令 Sqlca automit=true 把数据库的自动提交方式设置为true 在updateblob语句的结束后 再用命令Sqlca automit = false 把自动提交方式设置为false 索数据的参数(如flag) 然后在可修改列的Protect后的框中输入(user_name是该DataWindow中的一列 代表输入者的名称)
数据窗口的blob列
数据窗口blob列的功能
在PB 的datawindow画板中DBOLE控件允许用户利用这个控件浏览和 *** 作数据库中的大二进制数据 即通过DBOLE控件可以作如下 *** 作
往数据库中存储大二进制数据 如 excel工作表 word文档 视频文件 文件等各种格式的文件
从数据库中检索数据到datawindow对象
使用OLE服务器程序察看修改数据
将修改后的数据保存回数据库
在数据窗口中添加blob列的的步骤
)选择具有二进制字段的数据表作为数据源建立一新的数据窗口(该窗口可以至少需要包含非数据库表的标识列)
)选择insert control OLE database blob 菜单 在数据窗口的detail节中要插入blob列的位置单击鼠标 这时将显示如图 所示的对话框
下面解释这些属性的具体含义
)client class 客户类名 默认为datawindow
)client name 客户名 默认为untitled
)table: 选择含有blob列的数据库表 所选表的字段将出现在右侧的large binary/text column列表框中
)large binary/text column 选择一个blob类型的字段列
)key clause 检索和更新blob数据的关键字表达式其中使用带冒号前缀的变量指出是数据窗口对象的列 如 表达式 id=:id id是数据库表中的列 变量指出数据窗口对象的列
)filetemplate 如果需要OLE应用服务器每次打开相同的文件 则在filetemplate框中输入文件名
)OLE class 如果不需要OLE应用服务器每次打开相同的文件 则在OLE class框中选择一个OLE类 如Pbrush
)Client name expression 显示在OLE服务器应用程序窗口标题的文字 可以输入为 对应记录的id号是 +id
单击ok按钮关闭对话框 将dbole列添加到适当的位置 保存数据窗口
lishixinzhi/Article/program/SQL/201311/16229
以上就是关于带参数的UPDATE语句无法更新数据库问题全部的内容,包括:带参数的UPDATE语句无法更新数据库问题、请问数据库有哪些种类呢、在PB中用OLE存取blob类型数据(二)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)