小编Mat*_*Bak的帖子

如何向表中添加检查约束?

我在这张桌子上遇到了麻烦

CREATE TABLE `Participants` (
  `meetid` int(11) NOT NULL,
  `pid` varchar(15) NOT NULL,
  `status` char(1) DEFAULT NULL,
  PRIMARY KEY (`meetid`,`pid`),
  CONSTRAINT `participants_ibfk_1` FOREIGN KEY (`meetid`) REFERENCES `Meetings` (`meetid`) ON DELETE CASCADE
  CONSTRAINT `participants_ibfk_2` CHECK (status IN ('a','d','u'))
  CONSTRAINT `participants_ibfk_3` CHECK (pid IN (SELECT name FROM Rooms) OR pid IN (SELECT userid FROM People))
);
Run Code Online (Sandbox Code Playgroud)

我希望有一个外键约束,这是有效的.然后我想为属性添加一个约束,status这样它只能取值'a','d'和'u'.我不可能将字段设置为Enumset.

任何人都可以告诉我为什么这段代码在MySQL中不起作用?

mysql sql database constraints check-constraints

32
推荐指数
4
解决办法
5万
查看次数

协议类型“Encodable”的值不能符合“Encodable”;只有结构/枚举/类类型可以符合协议

我有以下 Swift 代码

func doStuff<T: Encodable>(payload: [String: T]) {
    let jsonData = try! JSONEncoder().encode(payload)
    // Write to file
}

var things: [String: Encodable] = [
    "Hello": "World!",
    "answer": 42,
]

doStuff(payload: things)
Run Code Online (Sandbox Code Playgroud)

导致错误

Value of protocol type 'Encodable' cannot conform to 'Encodable'; only struct/enum/class types can conform to protocols
Run Code Online (Sandbox Code Playgroud)

怎么修?我想我需要更改 的类型things,但我不知道该怎么做。

附加信息:

如果我更改doStuff为不通用,我只会在该函数中遇到相同的问题

func doStuff(payload: [String: Encodable]) {
    let jsonData = try! JSONEncoder().encode(payload) // Problem is now here
    // Write to file
}
Run Code Online (Sandbox Code Playgroud)

generics ios swift

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

注入javascript thourgh <img> -tag

我想知道是否可以通过img-tag注入一些javascript代码.场景是一个人设置这样的html页面

<img src="anotherdomain.com/someimage.jpg" />
Run Code Online (Sandbox Code Playgroud)

Anotherdomain是我的域名.是否可以将/someimage.jpg的调用重定向到包含在请求图像时执行的som javascript代码的另一个文件?

html javascript image javascript-injection

14
推荐指数
1
解决办法
5218
查看次数

拦截对构造函数的调用

我在拦截对库的构造函数调用时遇到了一些麻烦(以后我可以重放它们),同时仍然保持原型链.更具体地说,我正在使用一个库(ThreeJS,但可能是任何库),以及一些使用该库的代码.我想要做的是编写一段修改库对象的代码,这样每次调用构造函数时我都可以运行一段代码.

示例:创建新场景时,我想将"创建新场景"打印到控制台.

var scene = new THREE.Scene();
Run Code Online (Sandbox Code Playgroud)

当构造函数接受参数时,我也想记录这些参数.

javascript prototype prototype-chain

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