我正在尝试将数组传递给oracle过程.我搜索了它,首先我创建了一个名为'dizi'的类型(在这里输入链接描述).所以它适用于oracle开发人员.问题是; 我不能将我的c#数组作为参数传递给procedure.那么如何将我的数组传递给我的程序呢?
这是我的代码(当我执行时,oracle错误说:并非所有变量都绑定)
public void InsertQuestion(List<string> area_list)
{
quest_areas = area_list.ToArray();
command.Connection = connect;
connect.Open();
var arry = command.Parameters.Add("Areas", OracleDbType.Varchar2);
arry.Direction = ParameterDirection.Input;
arry.CollectionType = OracleCollectionType.PLSQLAssociativeArray;
arry.Value = quest_areas;
command.CommandText ="TESTPROCEDURE(:Areas)";
command.CommandType = CommandType.StoredProcedure;
command.ExecuteNonQuery();
connect.Close();
}
Run Code Online (Sandbox Code Playgroud) 我使用nestjs和postgresql。prisma我有两个相关的表,我想创建一个 where 子句,以便在第二个表中的记录计数小于 - 比方说 - 3 时获取记录。更多详细信息;
这是我的架构
model User {
id String @id
someOtherFields String
outgoingPlayMateRequest PlayMateRequest[] @relation("userId")
incomingPlayMateRequest PlayMateRequest[] @relation("targetId")
}
model PlayMateRequest {
id Int @id
requestingUser User @relation(name: "userId", fields: [requestingUserId], references: [id], onDelete: Cascade)
targetUser User @relation(name: "targetId", fields: [targetUserId], references: [id], onDelete: Cascade)
requestingUserId String
targetUserId String
someOtherFields String
response String //accept-reject-block
}
Run Code Online (Sandbox Code Playgroud)
这是我的带有 where 子句的代码(我通过删除不相关的部分来简化它)
const userId = 'testUser';
return await this.prismaService.user.findMany({
where: {
NOT: { …Run Code Online (Sandbox Code Playgroud)