小编APC*_*APC的帖子

CouchDB版本控制策略

以下是实现版本控制的可行策略(使用"example"作为示例文档类型):

有一个原始文档,其中类型字段名为example_original.

对文档的后续更改都具有类型example_change和example_original文档的id作为键.此更改还将带有时间戳.

保留一个类型为example_current的doc,它是example_original的结果,所有example_change都是"applied".新的example_change文档将自动应用于此文档.

查找特定版本将包括检索example_original文档并应用所需的更改(主要是某个时间戳,但也可能是一些更改).

我应该提一下,我的用例将涉及对原始的有限数量的更改.大多数更新将包含新的原始文档.虽然这是我目前的用例,但我也会对涉及许多变更会导致的问题感兴趣.

你在这种方法中看到了什么利弊?

versioning couchdb database-versioning document-storage

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

Oracle的JDBC查询超时是如何实现的?

我很好奇Oralce JDBC瘦客户端如何实现查询超时.这可以通过调用java.sql.Statement的setQueryTimeout(int seconds)方法来设置.

这是在客户端的驱动程序本身实现的吗?是一个新的线程产生并加入?或者JDBC驱动程序是否只是向Oracle发送参数,然后它会强制执行超时?

达到超时后,客户端和数据库上的哪些资源被释放,哪些存在?即使客户端放弃了查询还是终止,Oracle是否继续运行查询?客户端是否还有游标对象?

谢谢

java oracle timeout jdbc

21
推荐指数
2
解决办法
3万
查看次数

如何查看授予其他用户的架构的权限

考虑这种情况:在数据库中,我有两个用户A和B及其相应的模式.

我想知道,我如何获取信息:Schema B中的USER A有哪些权限.

考虑这种情况:我们有两个用户及其相关的scehmas.我们有用户A和用户B.在A中,假设我们有TB1 TB2,在B中,我们说有TBa,TBb.现在我想知道如何找到用户A在Schema B上拥有的权限.

例如:用户A正在写:select * from B.TBb 这意味着用户A正在访问用户B的表,因此,它显示他具有SELECT权限.我想知道用户A在Schema B上拥有的所有权限.

应执行哪个查询以获取用户A在模式B上具有的权限列表.

oracle

20
推荐指数
1
解决办法
10万
查看次数

在oracle表中自动填充日期

我在oracle XE中创建了一个表,我有一个类型为date的字段.我希望如果可能的话,当我插入一行时,它会自动使用系统中的当前日期填充该字段.

我从SQL提示符插入行.

谢谢

oracle time timestamp

19
推荐指数
2
解决办法
3万
查看次数

如何使用Oracle SQL开发人员运行存储过程?

*EDIT6:*这最终为我工作(从接受的答案):

var ret1 number
var tran_cnt number
var msg_cnt number
var rc refcursor
exec :tran_cnt := 0
exec :msg_cnt := 123
exec get_account(Vret_val => :ret1, Vtran_count => :tran_cnt, Vmessage_count => :msg_cnt, Vaccount_id => 1, rc1 => :rc)
print :tran_cnt
print :msg_cnt
print :rc
Run Code Online (Sandbox Code Playgroud)

SQL Developer让这个超级难/不可能?我不在乎该实用程序是否基于命令行; 我只是希望能够快速运行并查看它.如果它也能很好地捕获错误,那就太好了.能够逐步(交互式)登录,以及一次性指定所有内容(类似于典型的基于ftp/sftp cmd的客户端的工作方式)将会很棒.

我的平台是Windows Server 2008 + Cygwin.

编辑:也许你会知道如何使用Python编写脚本?

编辑2:在MSFT SQL服务器中,我只需输入:

get_user 1;
Run Code Online (Sandbox Code Playgroud)

然后突出显示它并点击F5,我得到:

login   name    
NULL    Somename
Run Code Online (Sandbox Code Playgroud)

打印到输出窗口.Oracle SQL开发人员根本没有帮助.我不知道如何传入1,我不知道如何查看返回的实际行/记录.

编辑3:当我输入var rc refcursor;并选择并运行它时,我收到此错误(GUI):

An error was encountered performing the requested …
Run Code Online (Sandbox Code Playgroud)

oracle plsql stored-procedures sys-refcursor oracle-sqldeveloper

19
推荐指数
1
解决办法
16万
查看次数

如何使用连接正确计算SUM?

所以我试图计算零件数量,任务数量,每个工作的数量以及制造每项工作所花费的时间,但我得到了一些时髦的结果.如果我运行这个:

SELECT
  j.id, 
    mf.special_instructions,
  count(distinct p.id) as number_of_different_parts,
  count(distinct t.id) as number_of_tasks,
  SUM(distinct j.quantity) as number_of_assemblies,
  SUM(l.time_elapsed) as time_elapsed

FROM
  sugarcrm2.mf_job mf
INNER JOIN ramses.jobs j on
  mf.id = j.mf_job_id
INNER JOIN ramses.parts p on
  j.id = p.job_id
INNER JOIN ramses.tasks t on
  p.id = t.part_id
INNER JOIN ramses.batch_log l on
  t.batch_id = l.batch_id

WHERE 
  mf.job_description                LIKE "%BACKBLAZE%" OR
  mf.customer_name                  LIKE "%BACKBLAZE%" OR
  mf.customer_ref                   LIKE "%BACKBLAZE%" OR
  mf.technical_company_name LIKE "%BACKBLAZE%" OR
  mf.description                        LIKE "%BACKBLAZE%" OR
  mf.name                                   LIKE "%BACKBLAZE%" OR
  mf.enclosure_style …
Run Code Online (Sandbox Code Playgroud)

mysql sql group-by aggregate sum

19
推荐指数
1
解决办法
602
查看次数

PL/SQL ORA-01422:精确提取返回超过请求的行数

我得到这个错误我无法弄清楚出了什么问题.

第1行的DECLARE
*
ERROR:
ORA-01422:精确提取返回超过请求的行数
ORA-06512:第11行

这是我的代码.

DECLARE
    rec_ENAME EMPLOYEE.ENAME%TYPE;
    rec_JOB EMPLOYEE.DESIGNATION%TYPE;
    rec_SAL EMPLOYEE.SALARY%TYPE;
    rec_DEP DEPARTMENT.DEPT_NAME%TYPE;
BEGIN       
    SELECT EMPLOYEE.EMPID, EMPLOYEE.ENAME, EMPLOYEE.DESIGNATION, EMPLOYEE.SALARY,  DEPARTMENT.DEPT_NAME 
    INTO rec_EMPID, rec_ENAME, rec_JOB, rec_SAL, rec_DEP 
    FROM EMPLOYEE, DEPARTMENT 
    WHERE EMPLOYEE.SALARY > 3000;

    DBMS_OUTPUT.PUT_LINE ('Employee Nnumber: ' || rec_EMPID);
    DBMS_OUTPUT.PUT_LINE ('---------------------------------------------------');
    DBMS_OUTPUT.PUT_LINE ('Employee Name: ' || rec_ENAME);
    DBMS_OUTPUT.PUT_LINE ('---------------------------------------------------');
    DBMS_OUTPUT.PUT_LINE ('Employee Designation: ' || rec_JOB);
    DBMS_OUTPUT.PUT_LINE ('----------------------------------------------------');
    DBMS_OUTPUT.PUT_LINE ('Employee Salary: ' || rec_SAL);
    DBMS_OUTPUT.PUT_LINE ('----------------------------------------------------');
    DBMS_OUTPUT.PUT_LINE ('Employee Department: ' || rec_DEP);

END;
/
Run Code Online (Sandbox Code Playgroud)

oracle plsql sqlplus oracle11g

19
推荐指数
1
解决办法
13万
查看次数

从现有Oracle数据库生成数据库图表/ ER图的工具?

寻找工具(windows平台)从现有的Oracle数据库中生成ER图(或类似的).
有哪些好的工具可以免费使用或成本低廉?

oracle reverse-engineering data-modeling documentation-generation er-diagram

18
推荐指数
4
解决办法
9万
查看次数

如何在事务中简单地破坏引用完整性,而不禁用外键约束?

我有一个有3列的表:

ID, PARENT_ID, NAME
Run Code Online (Sandbox Code Playgroud)

PARENT_IDID在同一个表中具有外键关系.该表正在为层次结构建模.

有时ID记录会改变.我希望能够更新记录ID,然后更新依赖记录' PARENT_ID以指向新记录ID.

问题是,当我尝试更新ID记录时,它会破坏完整性并立即失败.

我意识到我可以使用new插入一个新记录ID,然后更新子项,然后删除旧记录,但是我们有很多触发器,如果​​我这样做会搞砸.

有没有办法暂时更新父级,承诺更新子级(显然它会在提交时失败)而不会短暂禁用外键?

sql oracle referential-integrity hierarchical-data

17
推荐指数
3
解决办法
8371
查看次数

SQL 2 Plus中"2"的含义是什么?

我是Oracle的新手.我遇到了一个问题.

首先,我想检查sysman帐户的权限:

SQL>  select * from dba_sys_privs where grantee='sysman';

no rows selected
Run Code Online (Sandbox Code Playgroud)

我知道这意味着我的视图dba_sys_privs中没有内容.但无论如何,我已经建立了一个数据库.所以,我再试一次,只是缩短声明:

SQL>  select * from dba_sys_privs
  2
Run Code Online (Sandbox Code Playgroud)

所以这是我的两个问题:

  1. 我的数据库发生了什么事?我已经建立了一个数据库
  2. "2"是什么意思?这是否意味着下一行或其他什么?

oracle sqlplus oracle10g oracle11g

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