Tag: oracle11g

连接string连接到远程Oracle 11g

我需要从VBA连接到远程Oracle服务器。 我不想安装任何额外的驱动程序或软件连接,因为我需要将Excel分发给团队。 我尝试了几个连接string,如SQL_HANDLE_ENV failed 。 或者Oracle client and networking components not found. 或者在使用OraOLEDB.Oracle我没有findProvider。 连接string到目前为止: "Driver={Microsoft ODBC for Oracle}; CONNECTSTRING=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=servicename))); uid=username; pwd=Password;" "PROVIDER=MSDAORA.Oracle;DATA SOURCE=hostname;USER ID=username;PASSWORD=Password" "PROVIDER=MSDAORA;DATA SOURCE=hostname;USER ID=username;PASSWORD=Password" "Driver={Oracle in OraClient11g_home1};Dbq=servicename;Uid=username;Pwd=Password;" "Provider=OraOLEDB.Oracle;Data Source=hostname;User Id=username;Password=Password;" 有一些预先定义的驱动程序在Windows中我想。 但是,它不适用于甲骨文? 我使用Windows 8的任何帮助极大赞赏.. 我做了更多的研究,并且遇到了ODP.net。 所以我认为的结论是使用Oracle即时客户端或ODP.net。 但我不知道如果任何.NET应用程序如ODP.net将工作,没有.NET框架。 请让我知道是否有人遇到这个。

当Oracle数据库链接使用ODBC连接到Excel时,我有“标识符的名称长度超过最大值”

我尝试使用ODBC和数据库链接从Excel中获取数据。 我使用这样的SQL: Select * From A222$@TEST2 当TEST2 – Excel数据库链接的名称,以及A222 – Excel文件的工作表名称。 但是,因为在Excel的第一行,我有很大的string值,如A1234567890_B1234567890_C1234567890_D1234567890_E1234567890转换为非常大的列名称,当我尝试像这样使用sql: CREATE VIEW VIEW2 AS Select * From A222$@TEST2; // or Select A1234567890_B1234567890_C1234567890_D1234567890_E1234567890 as c1 from A222$@TEST2; // or Select "A1234567890_B1234567890_C1234567890_D1234567890_E1234567890" as c1 from A222$@TEST2; 我得到以下错误 ORA-01948: identifier's name length (31) exceeds maximum (30) ORA-00972: identifier is too long 而且我无法更改此Excel文件或创build此文件的临时副本。 这是可能的: 使用Excel列的名称,如A1,AB1,Z1,而不是从ODBC Excel的SQL查询中的第一行的值? 或者在不更改此Excel文件或创build此Excel文件的临时副本的情况下解决此问题? […]

有什么比制作850+ UPDATE语句更好的方法吗?

我在Excel VBA中创build了一些东西,我需要从Excel表格中读取850行或更多的行,并在Oracle 11g中的现有表中更新它们。 幸运的是,只有2列对我感兴趣。 唯一的方法,我目前正在做的事情只是循环通过在Excel中的范围,并创build一个单一的UPDATE myTable SET Temp = Array(i, 2) WHERE id = Array(i,1)为数组中的每个字段。 现在…我很清楚,这不是更快,也不优雅,这就是为什么我正在寻找提示和技巧来优化这样的事情。 我非常感谢提供的每一个提示。 === UPDATE === 在通过制作临时表来testingKacpers的build议后,结果是在使用Excel列表时,如果我对2列(约850行)感兴趣,则需要大约2分钟的时间才能读取数据,并使用INSERT ALL方法将其写入表中插入。 另一个表格和excel文件大约有970行和3列,而过滤掉了我写了大约700行,大约一分钟就完成了。 最后一部分是结合现有的表格,而这个实施之前的过程需要大约35秒,现在需要45-55秒。 这仍然是一个非常缓慢的方法。 特别是插入部分。 就像我在评论中所说的,我没有访问服务器存储系统的权限,所以上传或制作CSV导入数据不是一种select。 仍然非常感谢任何提示或提示我可以用来优化程序。

以Crystal和Excel格式创build报表

我们有一个查询Oracle并使用Crystal Reports进行报告的报告。 用户希望将输出同时作为Crystal Report和Excel。 是的,我知道他们可以把报告的结果输出到Excel。 有没有任何(合理)的方式来自动提供两种输出格式? 这些报告在Business Objects Enterprise中运行。 我看到在BOE中央pipe理控制台中为Schedule / Format下的报告设置了输出格式。 这使得它看起来像是一个或另一个,而不是两个。

在oracle表格中的Excel上传/下载工具不起作用

在Oracle Forms 10G / 11G应用程序的excel下载/上传活动中,遇到下面的消息。 “由于没有足够的可用内存或磁盘空间,Microsoft office excel无法打开或保存更多的文档。 要提供更多内存,请closures不再需要的工作簿或程序。 要释放磁盘空间,请删除不再需要的文件。“ 我们可以看到excel会话是在服务器上创build的。 注意:低代码在开发环境中是完美的,但不能在客户的地方工作。 — Start Excel application:=OLE2.CREATE_OBJ('Excel.Application'); — OLE2.SET_PROPERTY(application, 'Visible', 'True'); — Return object handle to the Workbooks collection workbooks:=OLE2.GET_OBJ_PROPERTY(application, 'Workbooks'); — Add a new Workbook object to the Workbooks collection workbook:=OLE2.GET_OBJ_PROPERTY(workbooks,'Add'); — Return object handle to the Worksheets collection for the Workbook worksheets:=OLE2.GET_OBJ_PROPERTY(workbook, 'Worksheets'); — […]

Excel电源查询连接到Oracle错误:Oracle:ORA-06401:NETCMN:无效的驱动程序指示符

我想用Excel电力查询得到一个Oracle数据库,我得到这个错误:Oracle:ORA-06401:NETCMN:无效的驱动程序指示符 Excel和电力查询是32位。 Oracle即时客户端已安装,我尝试了32位和64位版本。 oracle数据库是11.2.0.4.0 – 64位。 我可以连接sqlplus没有问题。 我可以find问题的唯一参考是tsnames.ora文件中的错误字符的引用,但我没有使用它,因为我使用的连接与所有的信息,如服务器:1521 / service_name 不知道什么是真正的连接,但从文档应该使用即时客户端。 它的工作原理是因为我通过ODBC来testing它,这对驱动程序来说工作正常。 有任何想法吗? 谢谢,艾萨克

使用excel VBA连接到带有ADODB的Oracle数据库

我在ADODB中使用这个连接string模式 Set oConn = New ADODB.Connection oConn.ConnectionString = "User ID=USERNAME;Password=PW;Data Source=xxxxxxx.db.yyyy.com:port;Provider=OraOLEDB.Oracle; " oConn.ConnectionTimeout = 30 oConn.Open rs.CursorType = adOpenForwardOnly 当我打开连接,我会得到一个运行时错误 ORA-12504:TNS:侦听器没有给予CONNECT_DATA中的SERVICE_NAME 我也尝试使用这个连接string "ODBC;DRIVER={Oracle in OraClient11g_home2};" & _ "DBQ=" & inputHost & ";UID=" & inputUser & ";PWD=" & inputPassword & ";" & _ "HOST=" & inputHost & ";PORT=1521;DB=" & inputHost & ";" & _ "DefaultIsolationLevel=READUNCOMMITTED" 我得到运行时错误 […]

在Oracle 11g中复制Excel的CHIDIST函数

我正在尝试在Oracle中复制Excel工作簿的function。 工作表上的一个公式使用CHIDIST,即“返回卡方分布的单尾概率”。 我在任何地方都看不到类似的function! 我将不得不写我自己的CHIDISTfunction? 这是CHIDIST上Excel文档的链接: http : //office.microsoft.com/en-gb/excel-help/chidist-HP005209010.aspx 我已经制定了广场和自由度。 谢谢

owa_util.mime_header问题 – 尝试从查询中提取Excel文件

假设生成一个Excel文件,我的一个程序有问题,程序是这样的: CREATE OR REPLACE PROCEDURE GENERATE_REPORT_P(P_CONTRACT_NUM IN VARCHAR2 DEFAULT NULL, P_CUSTOMER_NAME IN VARCHAR2 DEFAULT NULL, P_CUSTOMER_NUM IN VARCHAR2 DEFAULT NULL, P_UPDATE_DATE_START IN DATE DEFAULT NULL, P_UPDATE_DATE_END IN DATE DEFAULT NULL, P_ORDER_NUM IN VARCHAR2 DEFAULT NULL) IS vRecords BOOLEAN := FALSE; BEGIN FOR i IN (SELECT a.contract_num, d.customer_abt_number, d.customer_name, c.doms_order_num order_num, e.service_tag asset, e.sku, e.field, e.previous_value, […]

从Oracle获取特定数据(查询)到excel

我想从Oracle数据库加载特定的数据(查询)到Excel中。 我能够通过外部连接(Mircosoft数据访问 – 适用于Oracle的OLE DB提供程序)来实现,但所有表都已加载。 这是受到打击和尝试。 我不知道什么是OLE DB。 是否有可能使用该方法加载特定的数据。 我怎样才能从VBA加载相同的,我已经阅读了许多来源,博客,但没有一个是清晰和全面的。 有人可以请一个新手解释。 或者参考我的一些书/来源。