小编ges*_*alt的帖子

计划中的列表长度

嗨,我正在尝试编写一个程序,给定列表列表检查它们是否大小相等,如果它们返回#t.

那么例如,如果我要写(列表计数器?'((1 2 3)(4 5 6)(7 8 9)))程序将返回#t,和(list-counter?'((1 2) 3)(4 5 6)(7 8)))将返回#f.

到目前为止,这就是我所做的:

 (define list-counter?
  (lambda (x)
    (if (list? x)
        (if (list?(car x))
      (let (l (length (car x))))
        (if (equal? l (length(car x))))
        (list-counter?(cdr x))
 ) ) ) ) ) 
Run Code Online (Sandbox Code Playgroud)

在我将l的长度设置为第一个列表的长度之后,我想我错了.任何帮助,将不胜感激.

scheme

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

PostgreSQL中的约束和断言

我正在尝试创建一个简单的数据库,其中有一个客户数据表和一个订单数据表.我正在尝试编写一个约束,使得客户无法在特定日期订购超过特定数量的商品.这就是我所拥有的:

CREATE TABLE CUSTOMER
(
    CUSTOMER_NUM CHAR(3) PRIMARY KEY,
    CUSTOMER_NAME CHAR(35) NOT NULL,
    STREET CHAR(15),
    CITY CHAR(15),
    STATE CHAR(3),
    ZIP CHAR(5),
);
CREATE TABLE ORDERS
(
    ORDER_NUM CHAR(5) PRIMARY KEY,
    ORDER_DATE DATE,
    CUSTOMER_NUM CHAR(3),

    CONSTRAINT CUSTOMER_NUM_FKEY FOREIGN KEY (CUSTOMER_NUM)
        REFRENCES CUSTOMER (CUSTOMER_NUM) MATCH SIMPLE
        ON UPDATE CASCADE ON DELETE CASCADE 
);
Run Code Online (Sandbox Code Playgroud)

这就是我为强制执行此约束而编写的内容,但它不起作用.我假设它是因为ORDER_NUM和ORDER_DATE永远不会有相同的值.

CREATE ASSERTION ITEM_LIMIT
CEHCK(
        (   SELECT COUNT(*)
            FROM CUSTOMER C1, ORDERS O1
            WHERE C1.CUSTOMER_NUM = O1.CUSTOMER_NUM AND
                O1.ORDER_DATE = O1.ORDER_NUM
     ) <= 1000
Run Code Online (Sandbox Code Playgroud)

我的问题是如何使这个约束起作用,比如如何限制每天的订单量.

sql postgresql triggers constraints plpgsql

4
推荐指数
2
解决办法
9518
查看次数

从属于对象的所有列表中获取元素总数

我得到了一些代码,其中包含由不同类型的列表组成的对象.我的意思的一个简单例子:

public class Account
{
    private long accountID;
    private List<string> accountHolders;
    private List<string> phoneNumbers;
    private List<string> addresses;

    public Account()
    {
        this.accountHolders = new List<string>();
        this.phoneNumbers = new List<string>();
        this.addresses = new List<string>();
    }

    public long AccountID
    {
        get
        {
            return this.accountID;
        }
        set
        {
            this.accountID = value;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

对于需求,我需要获取每个列表中的元素总数以进行验证.我有以下方法可行:

public class AccountParser
{
    // Some code
    public int CountElements(Account acct)
    {
        int count = 0;
        count += acct.accountHolders.Count();
        count += acct.phoneNumbers.Count();
        count += acct.addresses.Count();

        return count;
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# linq

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

标签 统计

c# ×1

constraints ×1

linq ×1

plpgsql ×1

postgresql ×1

scheme ×1

sql ×1

triggers ×1