家伙.这是PL/SQL中的一个简单的二维数组样本,它运行良好.
declare
type a is table of number;
type b is table of a;
arr b := b(a(1, 2), a(3, 4));
begin
for i in arr.first .. arr.last loop
for j in arr(i).first .. arr(i).last loop
dbms_output.put_line(arr(i) (j));
end loop;
end loop;
end;
Run Code Online (Sandbox Code Playgroud)
我需要做的是为表创建类似的东西RECORDS.像这样:
type a is record(a1 number, a2 number);
type b is table of a;
Run Code Online (Sandbox Code Playgroud)
问题是,我可以手动初始化这种数组,还是应该填充bulk collects或类似?与上面相同的语法似乎不起作用,我无法在手册中找到任何初始化示例.
假设我的电子表格中嵌入了一个按钮,可以启动一些VBA功能.
Private Sub CommandButton1_Click()
SomeVBASub
End Sub
Private Sub SomeVBASub
DoStuff
DoAnotherStuff
AndFinallyDothis
End Sub
Run Code Online (Sandbox Code Playgroud)
我想有机会有一个"取消"按钮,可以SomeVBASub在任意时刻停止执行,我不会涉及到Ctrl+Break这里,因为我想默默地这样做.
我想这应该是相当普遍的问题,任何想法?
谢谢.
说我有一个示例表:
id_pk value
------------
1 a
2 b
3 c
Run Code Online (Sandbox Code Playgroud)
我有一个示例PL/SQL块,它有一个查询,当前选择一行到一个数组:
declare
type t_table is table of myTable%rowtype;
n_RequiredId myTable.id_pk%type := 1;
t_Output t_table := t_table();
begin
select m.id_pk, m.value
bulk collect into t_Output
from myTable m
where m.id_pk = n_RequiredId;
end;
Run Code Online (Sandbox Code Playgroud)
我需要做的是实现一个选择单个行到数组的能力,如上面的块所示,或者选择所有行到一个数组,如果n_RequiredID,实际上是一个用户输入参数,设置为null.
问题是,处理这种情况的最佳做法是什么?
我可以想到将where我的查询的子句修改为这样的事情:
where m.id_pk = nvl(n_RequiredId, m.id_pk);
Run Code Online (Sandbox Code Playgroud)
但我想如果参数不为空,那将会减慢查询速度,我记得Kyte说这个方法真的很糟糕.
我还可以考虑实现以下PL/SQL逻辑:
if n_RequiredId is null then
select m.id_pk, m.value bulk collect into t_Output from myTable m;
else
select m.id_pk, m.value bulk …Run Code Online (Sandbox Code Playgroud) 这是一个示例代码,它打开一个 Internet Explorer 窗口,导航到 google,并通过其唯一 id 获取页面上的某些元素:
set ie = CreateObject("InternetExplorer.Application")
ie.navigate("www.google.com")
ie.visible = true
while ie.readystate <> 4
wscript.sleep 100
WEnd
set some_object = ie.document.getelementbyid("xjsc")
MsgBox some_object.tagname, 0
Run Code Online (Sandbox Code Playgroud)
这个示例给我带来了一个DIV弹出窗口,我完全满意。
但是在下一步中,我想检查页面中是否存在某个 id。不幸的是,我不能只是,就像,
set some_object = ie.document.getelementbyid("some_non_existant_id")
if some_object.tagname = "" then
...
Run Code Online (Sandbox Code Playgroud)
因为它给了我以下错误:
ie.vbs(12, 1) Microsoft VBScript runtime error: Object required: 'some_object'
Run Code Online (Sandbox Code Playgroud)
那么,检查是否已找到元素的最佳做法是什么?
我似乎在从示例C#应用程序连接到嵌入式FireBird数据库时遇到问题.这就是我所拥有的.
static void Main(string[] args)
{
//Some constant parameters used to form up the connection string...
#region constant literals
const String User = "SYSDBA";
const String Password = "masterkey";
const String DBPath = "D:\\!tmp\\1\\cafw.fdb";
const String DLLPath = @"fbembed.dll";
const String Charset = "WIN1251";
const int Dialect = 3;
#endregion
//I check whether we actually have a database file nearby
//and fbembed.dll. If we don't - we leave
if (File.Exists(DBPath) == true && File.Exists(DLLPath) == true)
{
//I form up …Run Code Online (Sandbox Code Playgroud) 我必须创建8个具有完全相同结构的表.最简单的方法是复制粘贴代码并为表应用不同的名称.我希望很酷,并用一个周期创建它们.如何进行该循环以及应用不同名称的最佳方法是什么?谢谢
我有一个应用程序,它显示了一些数据.我需要附加到这个应用程序的进程,在内存中找到我需要的数据(实际上是一个数字),并将其保存在某个地方.这个应用程序似乎没有使用标准的Windows控件,所以事情不会像使用AutoIt或类似的东西读取控件数据那么简单.
目前我是一个自学数据库的人,对Windows应用程序调试知之甚少.甚至不确定我是否正确地问了我的问题.
那么,你能否给我一些入门指南,比如说,我应该先阅读什么,以及我应该做的一般指示?
谢谢.
家伙.说我有下表:
ID | String
---+---------
1 | <123><345>
2 | <1-2><45-67>
3 | <345-321><234>
Run Code Online (Sandbox Code Playgroud)
这是我的应用程序中的遗留数据格式,目前无法避免.我需要做的是:
ID | String
---+---------
1 | <123>
1 | <345>
2 | <1-2>
2 | <45-67>
3 | <345-321>
3 | <234>
Run Code Online (Sandbox Code Playgroud)
有关如何在不创建任何其他对象或pl-sql过程的情况下仅使用普通Oracle SQL获得此结果的任何建议?
谢谢.
我正在使用oracle 11g ex edition.从教科书中我找到了格式选项,但它不起作用.表格结构如下.
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER(4)
NAME NOT NULL VARCHAR2(5)
ADDRESS VARCHAR2(20)
PINCODE NUMBER(6)
LOCATION NUMBER(2)
DOB DATE
Run Code Online (Sandbox Code Playgroud)
我用过这个命令
column name format A12
select name "USERNAME" from hai;
Run Code Online (Sandbox Code Playgroud)
我希望将列标题显示为USERNAME.但它只显示USERN.当使用格式选项时,它需要显示12个字符,但它只显示表格定义中的5个字符.为什么?查询结果如下
USERN
-----
korna
Run Code Online (Sandbox Code Playgroud)