解决数据库高并发问题这个问题要怎么解决,请教一下,问题如下

所有回答(3)
我有几个问题:
目录应该是分好几级吧?
小结本身应该不分级了,且只存在于最低级目录下吗?&
和上课学生关联的是只有小结吗,还是和目录、书籍都有关联?
你能告诉我吗,我也试试想想看
&------------------------------------------
我觉得最好遵循范式,虽然查询麻烦,但是容易看明白,易维护和扩展,用一个大表的话如果新手接手会看不懂的。当然模型的创建也依赖于具体的需求,如果你能说的更详细一些,我也设计一些模型,咱们再讨论,谢谢。(我不是高手,呵呵)
单表和多表
要看书、章、节的相似程度,如果相似度很高,可以用一张表;所以应该先把几个主体的特点描述出来,区分共性和特性,看看要多大的相似度。
关于表级联
即使是一张表,也要涉及到自表级联。效率的优化要考虑索引的建立、sql查询的优化(比如先筛选,再级联、嵌套子查询)。
遵循范式,采用多表。原因是扩展性高,维护性高。至于效率问题,因为多表数据每张表的数据更单纯,所以应该是效率更高(更容易建索引,或者优化)。而多表连接的问题,可以采用视图的方式解决。就是在你的课程模块中,单独写一个视图来查询课程关系。
希望对您有帮助。
&&&您需要以后才能回答,未注册用户请先。请教一下数据库连接的问题 - 『编程语言讨论求助区』
- 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.52pojie.cn
后使用快捷导航没有帐号?
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 235|回复: 5
请教一下数据库连接的问题
阅读权限20
发帖求助前要善用【】功能,那里可能会有你要找的答案;
求助软件脱壳或者破解思路时,请务必在主题帖中描述清楚你的分析思路与方法,否则会当作求脱求破处理;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类改成【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人。
我是学PHP,会Mysql但是没有接触过sql server,但是现在有个管理软件用的是sql server数据库,本地的,我想写个网站管理后台能够连接读取sql server里的信息,应该如何才能连接呢?
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限30
PHP一般都是与MYSQL配套用哟& &&&sql server一般是与 ASP等程序使用。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
ODBC&&就行,你得知道数据库里有什么,要读取哪个表,那一列或者哪一行数据
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
看看有没有好的建议.我也要学
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
也同问这个问题
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
数据库导入错误咋整
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
免责声明:吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
( 京ICP备号 | 京公网安备 87号 )
Powered by Discuz!
Comsenz Inc.初学者课程:|| |
| 知识库: |
培训:|||| |
查看: 4119|回复: 37
数据库的问题,请教如何解决。谢谢!
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
本帖最后由 liurenfie 于
08:43 编辑
未命名11.JPG (228.37 KB, 下载次数: 10)
09:35 上传
未命名.JPG (139.38 KB, 下载次数: 6)
09:35 上传
请看上图,现在有两个地方出了问题:
一个是最大ID号的问题,可是使用修复工具修复无效。
第二个问题是存货普通单据记账时的错误提示,请看上图。
环境为windows 2003 R2+SQL2000 SP4+ERP U870 SP2
希望高手能够提供下思路和解决办法~~
ID号问题现在暂时解决.出入库调整单的主表id=2550,子表autoid=
修改ua_identity表的对应值ichidid和ifatherld为51,可是只要一保存单据,还是会提示错误,ichidid值变为1,后查看表数据,发现最小的autoid值都为9999952,遂将ichidid修改为9000000,单据就可以正常保存了。
因为在用友的库里,ID号最大为9999999,就是说最多就是这么多张单据。你再做一张,就变成了,在数据 ...
一哂而过 发表于
最大单据号我也遇到过,不建议用那什么破工具解决
自己看是那个单据出问题了
自己到数据库里,直接把后面的字段的加100或1000就行了 保证后面比前面的大就好
我试过....可是您看下图片上,对应表中的相应值为(9)
我不知道数值改为多少合适。。。
& & 直接改生产数据不合理吧,个人认为得看是什么产生的异常
:hug::call::hug::call::hug::call::hug::call::hug::call::hug::call:
o(︶︿︶)o 唉....还是等待
1、最大单据号可以修改ufsystem表中ua_identity表中相应字段就可以了,相关单据的最大号可以用max(id)来查找
数据库是升级上来的?
我很想帮你,不过你比我厉害,我帮不了你
第二个问题有朋友能提供下思路吗?
继续等待~~~~~~~
楼主。。我是想帮帮不上啊
谢谢帮顶的朋友们,继续等待高手啊
{:2_33:}还是等待.....真的没人知道吗?
Powered by-----------------------------------------------------------------------------------------
--------------------------------------------------------------- &
每次使用数据库都重新连接一次当然不好,如果拥护足够多,系统会死掉。 &
最好优化一下,不要太多的connection &
这确实是个问题,一般我不会直接在*.jsp中做sql、连接、关闭等操作, &
做几个bean,把要作的动作都封起来,在 &jsp中可以随时调用,效率会比较高;最好不要每使用数据库就连接一次,尽量优化吧,我尝试过。对于小用户量的系统,没什么区别。 &
--------------------------------------------------------------- &
数据库的连接是占用的资源有两中资源,其一:数据库的连接数,其二:系统的内存资源,但是如果你所做的系统不是很大,访问量也不很大的情况下,不必考虑这个问题,每一次建立一个连接,之后关掉就可以了,因为使用使用数据库连接池还要考虑同步的问题,也是很复杂的 &
--------------------------------------------------------------- &
连接数据库是很费时间的一项工作,所以,如果你的每个JSP页面里都有DriverManager.getConnection()这句的话,那你的网站肯定要慢死了(除非你有超快的服务器)。 &
但是,如果你只建立一个连接,然后所有用户都使用这个连接,那肯定也慢死了,因为所有对数据库的查询和更新操作将一个一个地通过这个唯一的连接,发送到数据库。 &
比较好而且常用的解决办法有两个。第一个是使用连接池,任何对数据库的查询和存取并不是直接发往数据库,而是发到连接池,连接池可以管理这些对数据库的操作。它可以同时处理大量的对数据库的操作,而不是像只建立一个连接那样,一条一条处理。因为现在的数据库系统都是设计成多线程的,可以同时处理多个连接的。 &
下面重点来说说第二种方法,就是把数据库连接作为session的一部分。原理很简单。当有一个用户登陆你的网站时,为其新建一个数据库连接,例如 &
Connection &conn &= &DriverManager.getConnection(&&); &
然后,把它放到session里面 &
session.setAttribute(&servletapp.connection&,conn); &
于是conn这个对象就不会被销毁,因此此用户对数据库的连接就一直保留着,然后此用户若是在你网站上浏览论坛或者购物,一直都是用这个连接,而不用重新连接数据库,速度也就加快了。 &直到他登出这个网站,或者session到期了,那么conn这个对象就会自动被销毁,那么,他对数据库的连接也就断开了。 &
用这个方法,每个用户可以有其自己的连接,即使若干用户同时发出对数据库的查询或存取,也都是通过其单独的连接,速度当然大大加快了。 &
在具体实现上,还需要写一个HttpSessionBindingListener,因为,当此用户登出你的网站时,你一定会写 &
session.invalidate(); &
于是,所有session里面的对象都销毁,包括conn,可是对数据库的连接还没断开。因此你要写一个class,实现interface &HttpSessionBindingListener;实现里面的public &void &valueBound(HttpSessionBindingEvent &event)和public &void &valueUnbound(HttpSessionBindingEvent &event) &
当一个对象被绑定到session里面去时,valueBound()会自动被调用,当一个对象被session删掉或者session被销毁时,valueUnbound()会自动被调用。所以,你可以把断开数据库的语句放在valueUnbound()里面。例如 &
public &void &valueUnbound(HttpSessionBindingEvent &event) &{ &
&& && && &&if &(conn &!= &null) &{ &
&& && && &&conn.close(); &
} &catch &(SQLException &e) &{} &
这样,当你的用户登出网站时,以上函数被调用,然后conn与数据库服务器断开。 &
下面是〈Java &Servlet &Programming〉里面的一个完整例子 &
import &java.io.*; &
import &java.sql.*; &
import &javax.servlet.*; &
import &javax.servlet.http.*; &
class &ConnectionHolder &implements &HttpSessionBindingListener &{ &
& &private &Connection &con &= & &
& &public &ConnectionHolder(Connection &con) &{ &
& & & &// &Save &the &Connection &
& & & &this.con &= & &
& & & &try &{ &
& & & & & &con.setAutoCommit(false); & &// &transactions &can &extend &between &web &pages! &
& & & &} &
& & & &catch(SQLException &e) &{ &
& & & & & &// &Perform &error &handling &
& & & &} &
& &public &Connection &getConnection() &{ &
& & & &return & & &// &return &the &cargo &
& &public &void &valueBound(HttpSessionBindingEvent &event) &{ &
& & & &// &Do &nothing &when &added &to &a &Session &
& &public &void &valueUnbound(HttpSessionBindingEvent &event) &{ &
& & & &// &Roll &back &changes &when &removed &from &a &Session &
& & & &// &(or &when &the &Session &expires) &
& & & &try &{ &
& & & & & &if &(con &!= &null) &{ &
& & & & & & & &con.rollback(); & &// &abandon &any &uncomitted &data &
& & & & & & & &con.close(); &
& & & & & &} &
& & & &} &
& & & &catch &(SQLException &e) &{ &
& & & & & &// &Report &it &
& & & &} &
/* &Actual &Servlet &*/ &
public &class &ConnectionPerClient &extends &HttpServlet &{ &
& &public &void &init() &throws &ServletException &{ &
& & & &try &{ &
& & & & & &Class.forName(&oracle.jdbc.driver.OracleDriver&); &
& & & &} &
& & & &catch &(ClassNotFoundException &e) &{ &
& & & & & &throw &new &UnavailableException(&Couldn't &load &OracleDriver&); &
& & & &} &
& &public &void &doGet(HttpServletRequest &req, &HttpServletResponse &res) &
& & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &throws &ServletException, &IOException &{ &
& & & &res.setContentType(&text/plain&); &
& & & &PrintWriter &out &= &res.getWriter(); &
& & & &HttpSession &session &= &req.getSession(true); &
& & & &Connection & &
& & & &// &Synchronize: &Without &this &two &holders &might &be &created &for &one &client &
& & & &synchronized &(session) &{ &
& & & & & &// &Try &getting &the &connection &holder &for &this &client &
& & & & & &ConnectionHolder &holder &= &
& & & & & & & &(ConnectionHolder) &session.getAttribute(&servletapp.connection&); &
& & & & & &// &Create &(and &store) &a &new &connection &and &holder &if &necessary &
& & & & & &if &(holder &== &null) &{ &
& & & & & & & &try &{ &
& & & & & & & & & &holder &= &new &ConnectionHolder(DriverManager.getConnection( &
& & & & & & & & & & & &&jdbc:oracle:oci7:ordersdb&, &&user&, &&passwd&)); &
& & & & & & & & & &session.setAttribute(&servletapp.connection&, &holder); &
& & & & & & & &} &
& & & & & & & &catch &(SQLException &e) &{ &
& & & & & & & & & &log(&Couldn't &get &db &connection&, &e); &
& & & & & & & &} &
& & & & & &} &
& & & & & &// &Get &the &actual &connection &from &the &holder &
& & & & & &con &= &holder.getConnection(); &
& & & &} &
& & & &// &Now &use &the &connection &
& & & &try &{ &
& & & & & &Statement &stmt &= &con.createStatement(); &
& & & & & &stmt.executeUpdate( &
& & & & & & & &&UPDATE &INVENTORY &SET &STOCK &= &(STOCK &- &10) &WHERE &PRODUCTID &= &7&); &
& & & & & &stmt.executeUpdate( &
& & & & & & & &&UPDATE &SHIPPING &SET &SHIPPED &= &(SHIPPED &+ &10) &WHERE &PRODUCTID &= &7&); &
& & & & & &// &Charge &the &credit &card &and &commit &the &transaction &in &another &servlet &
& & & & & &res.sendRedirect(res.encodeRedirectURL( &
& & & & & & & &req.getContextPath() &+ &&/servlet/CreditCardHandler&)); &
& & & &} &
& & & &catch &(Exception &e) &{ &
& & & & & &// &Any &error &is &grounds &for &rollback &
& & & & & &try &{ &
& & & & & & & &con.rollback(); &
& & & & & & & &session.removeAttribute(&servletapp.connection&); &
& & & & & &} &
& & & & & &catch &(Exception &ignored) &{ &} &
& & & & & &out.println(&Order &failed. &Please &contact &technical &support.&); &
& & & &} &阅读:2275回复:10
请教一下关于从新做了系统后,如何恢复论坛的问题!
发布于: 15:41
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
请教各位前辈一下关于从新做了系统后,如何恢复论坛的问题! 我的服务器从新做了系统,网站是在D盘的BBS目录下,请问如何恢复数据呢?我在做系统的时候没有备份论坛的数据库, 从新安装的Mysql后更改了新的密码 现在环境配置完成后提示以下内容: 680)this.width=680;" style="max-width:680" title="点击查看原图" onclick="if(this.parentNode.tagName!='A') window.open('http://img1.phpwind.net/attachout/Mon_fa88fd3d389.jpg');" />
PW官方侠客
铜币1922两
发布于: 15:44
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
data/sql_config.php里面是数据库的帐号信息可以重新修改一下
发布于: 16:23
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
更改现在的密码后,还是不行。现在提示这样了。。
&680)this.width=680;" style="max-width:680" title="点击查看原图" onclick="if(this.parentNode.tagName!='A') window.open('http://img1.phpwind.net/attachout/Mon_b6f7cba7b7be.jpg');" />
PW官方侠客
铜币1922两
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:26
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
数据表还没有创建
你可以先在你机子上把论坛安装一下然后导入之前的数据
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:29
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
请问我要如何导入之前的数据呢?这个要怎么操作呀。我是要新建一个文件夹然后安装一下全新的论坛系统吗?如果是这样。安装完毕后要如何操作这个导入之前的数据呢?麻烦前辈赐教。。
PW官方侠客
铜币1922两
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:33
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
你之前的数据有没备分呢如果本机安装的话数据应该还在mysql/data下面可以复制一份
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:41
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
没有备份....怎么办...我的服务器被入侵攻击了。然后机房的客服直接把我的C盘给恢复了......
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:43
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
原来的mysql/data还在的不?
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:46
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:46
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
在的。我把论坛放在D盘了。
<span class="lou J_floor_copy" title="复制此楼地址"
data-hash="read_楼#
发布于: 16:47
系统提示:关于phpwind产品的学习与交流已经迁移到阿里云论坛,请访问这里:
晕。不在了。是MYSQL里的DATA。那个不再了。。。。。。。。晕死了。这样是不是就没有办法恢复数据了...
Powered by

我要回帖

更多关于 解决数据库乱码问题 的文章

 

随机推荐