问题列表 - 第16394页

重置PL/SQL中的关联数组?

这是"必须有更好的方式"问题之一.让我设置问题,然后我会给你我的黑客解决方案,也许你可以建议一个更好的解决方案.谢谢!

让我们把这个小小的PL/SQL

DECLARE
 TYPE foo_record IS RECORD (foo%type, bar%type);
 TYPE foo_records IS TABLE OF foo_record INDEX BY PLS_INTEGER;
 arr_foos foo_records;

 CURSOR monkeys is SELECT primates FROM zoo;
 row_monkey monkeys%rowtype;
BEGIN
 FOR row_monkey IN monkeys loop
  /*
    at this point in each iteration I need to have the associative array 
    arr_foos in its original state. if this were java, I'd declare it 
    right here and its scope would be limited to this iteration. However, 
    this is not java, so the scope …
Run Code Online (Sandbox Code Playgroud)

oracle plsql

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

Ruby默认情况下将IRB配置为Pretty_Inspect

我对ruby很新,并且正在配置IRB.我喜欢漂亮的印花(需要'pp'),但总是输入pp来打印它似乎很麻烦.我想要做的是默认情况下使其打印,所以如果我有一个var,比如'myvar',并输入myvar,它会自动调用pretty_inspect而不是常规检查.我从哪里开始?理想情况下,我可以在自动调用的.irbrc文件中添加一个方法.有任何想法吗?

谢谢!

ruby default pretty-print irb inspect

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

编译器生成的Cruft

我试图使用Reg Gate的Reflector从程序集中恢复源代码.原始资源利用了几个C#3.0功能,这使得恢复有点困难.例如,这里是匿名类型的恢复源.弹出的第一件事是类标识符中的<> in.运行时类型命名规则显然比设计时规则更自由.很公平.简单的搜索和替换将解决这个问题.我必须注意哪些其他编译器修改以及如何处理它们?

[DebuggerDisplay(@"\{ OverrideType = {OverrideType}, EntityType = {EntityType} }", Type="<Anonymous Type>"), CompilerGenerated]
internal sealed class <>f__AnonymousType1<<OverrideType>j__TPar, <EntityType>j__TPar>
{
    [DebuggerBrowsable(DebuggerBrowsableState.Never)]
    private readonly <EntityType>j__TPar <EntityType>i__Field;
    [DebuggerBrowsable(DebuggerBrowsableState.Never)]
    private readonly <OverrideType>j__TPar <OverrideType>i__Field;

    [DebuggerHidden]
    public <>f__AnonymousType1(<OverrideType>j__TPar OverrideType, <EntityType>j__TPar EntityType)
    {
        this.<OverrideType>i__Field = OverrideType;
        this.<EntityType>i__Field = EntityType;
    }

    [DebuggerHidden]
    public override bool Equals(object value)
    {
        var type = value as <>f__AnonymousType1<<OverrideType>j__TPar, <EntityType>j__TPar>;
        return (((type != null) && EqualityComparer<> <<OverrideType>j__TPar>.Default.Equals(this.<OverrideType>i__Field, type.<OverrideType>i__Field)) && EqualityComparer<<EntityType>j__TPar>.Default.Equals(this.<EntityType>i__Field, type.<EntityType>i__Field));
    }

    [DebuggerHidden]
    public override int GetHashCode()
    {
        int num = -338316509; …
Run Code Online (Sandbox Code Playgroud)

c# compiler-construction recovery name-mangling

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

魔术在新的位置?

我正在"手动"使用动态内存分配,我想看看来自MS的人是如何实现placement new的,但是在调试时我"步入"它让我转到代码:

inline void *__CRTDECL operator new(size_t, void *_Where) _THROW0()
{   // construct array with placement at _Where
return (_Where);
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释这个代码究竟是如何将我的对象放在我的指针所指向的位置,当我在这段代码中看到的所有东西都与带有我作为参数提供的内容的return语句对齐时.我不认为在评论中说我希望这个fnc做什么实际上足以让它起作用.谢谢你的建设性答案.

c++ memory-management placement-new

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

将DataGrid绑定到wpf中的List

我正试图绑定List一个DataGrid.这是代码片段:

public class Parson
{
    public string LastName { get; set; }
    public string FirstName { get; set; }

    public Parson(string lastName, string firstName)
    {
        LastName = lastName;
        FirstName = firstName;
    }
}

public class Persons : List<Parson>
{
    // Parameterless constructor      
    public Persons()
    {
    }
    public new void Add(Person parson)
    {
        base.Add(parson);
    }
}  
Run Code Online (Sandbox Code Playgroud)

背后的代码:

Persons persons = new Persons();
persons.Add(new Parson("New","Person");
dataGrid1.DataContext = persons;
Run Code Online (Sandbox Code Playgroud)

XAML:

<my:DataGrid Name="dataGrid1" 
             xmlns:my="http://schemas.microsoft.com/wpf/2008/toolkit" 
             CanUserAddRows="True" 
             ItemsSource="{Binding}" 
             AutoGenerateColumns="False">
    <my:DataGrid.Columns>
        <my:DataGridTextColumn Header="First …
Run Code Online (Sandbox Code Playgroud)

data-binding wpf datagrid

6
推荐指数
3
解决办法
4万
查看次数

检查是否存在XML Schema Collection?

为Sql Server 2005编写脚本.我正在注册一个模式

CREATE XML SCHEMA COLLECTION [dbo].[MySchema] AS N'<xsd:schema ... >'
Run Code Online (Sandbox Code Playgroud)

现在,当我做出改变时,我想放弃它,打电话给

DROP XML SCHEMA COLLECTION [dbo].[MySchema]
Run Code Online (Sandbox Code Playgroud)

我在开发过程中经常运行这些东西,比如

DROP ...
CREATE ... 
Run Code Online (Sandbox Code Playgroud)

但是这会在Schema不存在的第一次运行时出现问题.我想做类似的事情

IF OBJECT_ID ('MySchema') IS NOT NULL
    DROP ...
CREATE ...
Run Code Online (Sandbox Code Playgroud)

OBJECT_ID ('MySchema')只是回来NULL.是否有正确的方法来测试Sql Server 2005中是否存在已注册的Xml架构集合?

muchos gracias mis amigos :)

sql sql-server-2005 exists xml-schema-collection

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

使用递归子查询因子进行循环检测

自从v2以来,Oracle SQL可以使用其专有的CONNECT BY语法进行分层查询.在他们最新的11g版本2中,他们添加了递归子查询因子,也称为recursive with子句.这是ANSI标准,如果我理解正确,这个也已由其他RDBMS供应商实现.

将connect-by与递归with进行比较时,我注意到使用循环检测时结果集的差异.结果连接对我来说更直观,所以我想知道Oracle的实现是否包含错误,或者这是否是标准ANSI和预期行为.因此,我的问题是,如果您可以使用其他数据库(如MySQL,DB2,SQL Server等)检查递归查询.如果这些数据库当然支持recursive with子句.

以下是它在Oracle 11.2.0.1.0上的工作原理

SQL> select *
  2    from t
  3  /

        ID  PARENT_ID
---------- ----------
         1          2
         2          1

2 rows selected.
Run Code Online (Sandbox Code Playgroud)

使用CONNECT BY语法的查询:

SQL>  select id
  2        , parent_id
  3        , connect_by_iscycle
  4     from t
  5  connect by nocycle parent_id = prior id
  6    start with id = 1
  7  /

        ID  PARENT_ID CONNECT_BY_ISCYCLE
---------- ---------- ------------------
         1          2                  0
         2          1                  1

2 rows selected.
Run Code Online (Sandbox Code Playgroud)

这看起来很直观.但是,使用新的ANSI语法,它会再返回一行:

SQL> with tr (id,parent_id) as
  2 …
Run Code Online (Sandbox Code Playgroud)

sql oracle db2 hierarchical-query

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

你能阻止MSBuild.exe运行Build Events吗?

我正在通过脚本构建许多项目,偶尔使用自定义构建事件会给构建系统带来很大的困难.如果可能的话,我想调用MSBuild.exe,以阻止任何构建事件的执行.从长远来看,这不是构建自动化的问题 - 具有构建事件的项目的提交者被预先警告,这样的破坏是违反规则的.

简而言之,有没有办法调用MSBuild来阻止执行任何自定义构建步骤(如果存在)?

更新:

我考虑过对项目文件进行就地(自动)编辑,但是对于三个事件中的每一个,我更喜欢命令行等效于将"Excluded From Build"(参见Build Events选项)设置为Yes.

msbuild events build

53
推荐指数
6
解决办法
2万
查看次数

Go中的函数冲突

Golang Initialization描述了一种将方法附加到Go编程语言中的任意对象的方法.作为示例,它们显示String了新定义ByteSize类型的方法:

type ByteSize float64
const (
    _ = iota;   // ignore first value by assigning to blank identifier
    KB ByteSize = 1<<(10*iota);
    MB;
    GB;
    TB;
    PB;
    YB;
)
Run Code Online (Sandbox Code Playgroud)

将诸如String之类的方法附加到类型的功能使得这些值可以自动格式化以进行打印,即使是作为常规类型的一部分.

func (b ByteSize) String() string {
    switch {
    case b >= YB:
        return fmt.Sprintf("%.2fYB", b/YB)
    case b >= PB:
        return fmt.Sprintf("%.2fPB", b/PB)
    case b >= TB:
        return fmt.Sprintf("%.2fTB", b/TB)
    case b >= GB:
        return fmt.Sprintf("%.2fGB", b/GB)
    case b >= MB:
        return fmt.Sprintf("%.2fMB", b/MB)
    case b …
Run Code Online (Sandbox Code Playgroud)

go

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

用管道正则表达式

在我看来,| 在正则表达世界中有特殊意义.我使用ruby并且找不到相同的文档.

http://rubular.com/regexes/11724有效.

http://rubular.com/regexes/11725不起作用.为什么以及正确的正则表达式是什么.

ruby regex

0
推荐指数
1
解决办法
2099
查看次数