小编aw *_*rud的帖子

Oracle LEADING提示 - 为什么需要这样做?

突然间(但不幸的是我不知道"突然"是什么时候;我知道它在过去的某个时刻运行正常)我的一个查询开始花费7+秒而不是毫秒来执行.我有一个本地表和3个表通过数据库链接访问.3个远程表连接在一起,其中一个与我的本地表连接在一起.

本地表的where子句只需要几毫秒就可以自己执行,并且只返回一些(最多10个或100个)记录.3个远程表之间有数十万甚至数百万条记录,如果我加入它们,我会获得数十或数十万条记录.

我只加入远程表,以便我可以提取与本地表中每条记录相关的一些数据.

然而,似乎正在发生的事情是,Oracle首先将远程表连接在一起,然后将本地表连接到最后的那个混乱.这总是一个坏主意,特别是考虑到现在存在的数据集,所以我/*+ LEADING(local_tab remote_tab_1) */在查询中添加了一个提示,它现在以毫秒为单位返回.

我比较了解释计划,它们几乎相同,除了一个BUFFER SORT远程表上的单个.

我想知道什么可能导致Oracle以错误的方式处理这个问题?这是指数问题吗?我应该寻找什么?

sql oracle query-hints

5
推荐指数
1
解决办法
2万
查看次数

在IE中使用Javascript/jQuery管理大型数据集的最有效方法是什么?

我有一个返回JSON的搜索,然后我将其转换为Javascript中的HTML表.它重复调用jQuery.append()方法,每行一次.我有一台现代化的机器,Firefox的响应时间是可以接受的.但在IE 8中它的速度令人难以忍受.

我决定将数据转换为HTML转换为服务器端PHP,将返回类型从JSON更改为HTML.现在,我不是反复调用jQuery.append()时间,而是使用整个表调用jQuery.html()方法一次.我注意到Firefox变得更快,但IE变慢了.

这些结果是轶事,我没有做任何基准测试,但IE的表现非常令人失望.我有什么办法可以加快IE中大量数据的操作,或者用AJAX/Javascript一次处理大量数据是一个坏主意吗?

javascript jquery internet-explorer

5
推荐指数
1
解决办法
6808
查看次数

外部文件中两个冲突的CSS样式的规范行为是什么?浏览器对此有何支持?

假设我有两个包含样式的文件,a.css和b.css.我将它们导入到我的页面中<head>.这两个外部文件都定义了该类的样式.someclass.哪一个优先?是否有基于css文件导入顺序的保证,它将说明应该使用哪种样式?

css browser

4
推荐指数
1
解决办法
905
查看次数

如何确保通过AJAX插入的JavaScript将在随附的HTML(也通过AJAX接收)在DOM中准备好后执行?

我已经将部分页面替换为通过AJAX调用检索的HTML.一些HTML回来的JavaScript需要运行一次才能初始化随附的HTML(设置事件处理程序).

由于文档已经被加载,当我使用jQuery的.html函数替换大块的HTML时,jQuery(document).ready(function() {...});由于很久以前加载了页面而没有执行,这只是一个被替换的HTML片段.

当通过AJAX加载内容时,附加其代码与其感兴趣的HTML一起打包的事件处理程序的最佳方法是什么?我应该在HTML之后放一个程序性的javascript块,这样当我插入新的HTML块时,jQuery会立即执行javascript吗?HTML肯定是在DOM中,并且可以通过同一个.html调用中的JavaScript执行操作吗?

javascript ajax jquery

4
推荐指数
1
解决办法
398
查看次数

如何插入记录并同时锁定该行?

我正在使用配置为使用自治事务的Oracle存储过程插入一行.我想插入此记录,提交该事务,然后锁定新插入的记录,以便除了当前会话之外没有其他人可以修改它(在另一个事务中,显然,因为插入它的是自治的).

在我有机会之前,如何确保没有其他人锁定此新记录SELECT...FOR UPDATE

使用Oracle 10g.

sql oracle plsql locking

4
推荐指数
1
解决办法
1198
查看次数

如何在不访问包含范围内的内容的情况下安全地访问Javascript模块模式中的其他兄弟函数和变量?

我在模块模式之后构建了一个Javascript对象.我有几个私有函数,从其他兄弟"私有"函数调用.如何在不可能意外访问全局/外部变量/对象/函数的情况下访问另一个变量/函数?

function doSomething() {
  alert("Something I don't want to do");
}

var My.Namespaced.SingletonClass = (function() {
  var init = function() {
    doSomething();
  }

  var doSomething = function() {
    alert("Something I want to do");
  }

  return {
    "init": init;
  }
})();

My.Namespaced.SingletonClass.init();
Run Code Online (Sandbox Code Playgroud)

我的猜测是上面的代码实际上会访问正确的内部doSomething函数,但是我想要更安全一些.如何明确地解决内部/嵌套函数而不必担心在我的单例周围调用函数或寻址对象?

javascript module-pattern

4
推荐指数
1
解决办法
1178
查看次数

每次创建索引以便Oracle优化器使用它时,是否需要运行gather_table_stats?

我看到了一些创建索引的例子.之后执行以下操作:

exec dbms_stats.gather_table_stats(...)
Run Code Online (Sandbox Code Playgroud)

这是否必须让Oracle关注索引?我认为每天晚上收集统计数据(?)但是有些情况下我创建的索引对随后的解释计划感到失望.也许我错过了一步?

sql oracle indexing

4
推荐指数
1
解决办法
3157
查看次数

PHP 变量是否应该在用作 OUT 函数参数之前进行初始化?

编写调用接受变量指针并更改值的函数的代码的正确方法是什么?

以下工作,但我的 IDE 抱怨 $v 是一个未定义的变量,直到它调用的函数设置一个值:

function foo(&$bar) {
  $bar = 12345;
}

foo($v);
Run Code Online (Sandbox Code Playgroud)

我应该先初始化 $v 以满足我的 IDE 吗?或者有没有更好的方法来做到这一点?

$v = NULL;
foo($v);
Run Code Online (Sandbox Code Playgroud)

php pointers pass-by-reference

4
推荐指数
1
解决办法
302
查看次数

如何确定实际的数据库行插入顺序?

我有一个多线程进程,它将多个记录插入到一​​个表中.插入在存储过程中执行,生成的序列是INTO变量,该变量稍后在内部使用INSERT.

鉴于我没有在mysequence.nextval内部进行INSERT,它让我认为两个并发进程可以在一个顺序中获取序列,然后以相反的顺序进行插入.如果是这种情况,那么序列号将不会反映插入的真实顺序.

我还在每个插入sysdateDATE列中记录,但我注意到两个记录的日期经常匹配,我需要按序列号排序以打破平局.但鉴于上一个问题,这似乎并不能保证实际的插入顺序.

如何确定插入数据库的绝对顺序?

sql oracle plsql sequences

3
推荐指数
1
解决办法
4261
查看次数

SQL INSERT是否可以在PL/SQL中引发异常而失败

是否存在INSERTSQL(特别是Oracle-PL/SQL)在没有抛出异常的情况下失败的情况?在INSERT验证SQL%ROWCOUNT = 1 ELSE它引发自己的用户定义异常之后,我看到代码中的检查.我不知道怎么会发生这种情况.

sql oracle plsql

3
推荐指数
1
解决办法
3148
查看次数