我有一个包含约 300,000 行的 .csv 文件,其中一些违反了我在 postgres 数据库中设置的某些约束。有没有办法将我的 .csv 文件复制到数据库中并让 postgres 过滤掉违反约束的行?我不希望这些行显示在数据库中。
如果这是不可能的,有没有其他方法可以解决这个问题?
我现在正在做的是
COPY blocksequences from '/tmp/blocksequences.csv CSV HEADER;
Run Code Online (Sandbox Code Playgroud)
我得到
'ERROR: new row for relation "blocksequences" violates check constraint "blocksequences_partid3_check"
DETAIL: Failing row contains (M001-M049-S186, M001, null, M049, S186).
CONTEXT: COPY blocksequences, line 680: "M001-M049-S186,M001,,M049,S186"
Run Code Online (Sandbox Code Playgroud)
错误原因:包含 M049 的列不允许输入该字符串。许多其他行都有这样的违规行为。
我读了一点关于exception when check violation --do nothing我在这里是否走在正确的轨道上?似乎这只是一个 mysql 的事情也许
是否可以在 VSCode 中编辑远程PC 的WSL2 中的文件。(这就像 Remote-WSL 和 Remote-SSH 的组合。)我可以通过 ssh 和 RDP 连接到那台远程 PC。
该路径\\wsl$\在我的远程 ssh 连接中似乎不可用。
PCA - me, local, VSCode
^
|
ssh and/or RDP
|
V
PCB - remote, WSL2
Run Code Online (Sandbox Code Playgroud)
(我目前在远程 PC 上设置了 Windows OpenSSH,使用默认的 CMD shell。我尝试将 shell 设置为 Bash,但随后无法安装远程扩展。)
更新设置 PC-B 的 ssh 服务器外壳bash.exe 确实解决了我的所有问题。我不确定为什么它以前不起作用。有关更多详细信息,请参阅下面我的回答。
我在 Ubuntu 上安装了 OpenFOAM(它本身位于 Linux 的 WSL Windows 子系统上)。我在尝试启动时遇到问题paraFoam,出现以下错误:
Invalid $PV_PLUGIN_PATH and -plugin-path= not defined
No supplementary ParaView/OpenFOAM reader modules
Using builtin reader: paraFoam -vtk
paraview: error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
它似乎来自 paraview 或 Qt,但我不知道该怎么做。该文件libQt5Core.so.5确实存在于计算机中
当我打字时qmake --version我有
QMake version 3.1
Using Qt version 5.12.8 in /usr/lib/x86_64-linux-gnu
Run Code Online (Sandbox Code Playgroud) 当值被引用时,我需要在模式下使用 Apache 公共资源中的 CSVPrinter,但标头不是。看起来报价模式是唯一的选项,影响标题和值。这个可以独立完成吗?
CSVFormat format = CSVFormat.DEFAULT.withHeader(new String(){"a", "b"})
.withQuoteMode(QuoteMode.ALL);
CSVPrinter printer = new CSVPrinter(new FileWriter(new File("out.csv")), format);
printer.printRecord("a val", "b val");
printer.printRecord("1", "2");
printer.flush();
printer.close();
Run Code Online (Sandbox Code Playgroud)
给出:
"a", "b"
"a val", "b val"
"1", "2"
Run Code Online (Sandbox Code Playgroud)
但要求是这样的:
a,b
"a val", "b val"
"1", "2"
Run Code Online (Sandbox Code Playgroud) 为了与工作树一起使用,我正在尝试制作一个裸克隆,但是远程分支被映射到远程跟踪分支。
我正在尝试建立一个通用的工作树工作流程。我的 repo 真的很大,所以克隆它很昂贵。即使使用硬链接,随着 repos 被gc编辑,它们往往会随着时间的推移而发散并占用额外的空间,并且在一个 repo 中获取对另一个 repo 没有帮助,因此在工作树中工作似乎是显而易见的事情。(你必须相信我。)
工作树需要一个实际保存对象的“主”存储库。显然,该克隆不能被删除,所以我想把它放在像/var/cache/git/reponame.wt.git. (我正在为我和我的同事制定一个通用的解决方案,所以我必须使它相当万无一失。)
我可以让它成为一个普通的克隆,但是它必须有一个分支检出,然后该分支不能被任何其他工作树检出,所以我必须制作一个wt_dummy可能混淆人们的虚拟分支(例如)。我真正想做的是使主要回购成为bare回购。
问题是git clone --bare不创建远程跟踪分支。所以为了制作一个“裸回购但带有远程跟踪分支”,我已经开始走这条路
git clone --bare <remote> repo.tmp
mv repo.tmp.git reponame.wt.git
cd reponame.wt.git
git config core.bare true
git config --remove-section branch.master
... and I'm not quite there yet ...
Run Code Online (Sandbox Code Playgroud)
但是 a) 看起来太长太复杂了,并且 b) git 存储库仍然认为它已经master检出。
有没有更好的方法来制作这个“带遥控器的裸机”?
(也许总体上有更好的方法来设置工作树,但我知道这处于堆栈溢出的“特定编程解决方案”范围的毛茸茸的边缘。)
我想预先初始化哈希数组的元素,以便在填写数据时,我不需要检查是否存在各种成员并在每个循环中初始化它们.如果可以的话,我想预先初始化数据结构的一般形式,它应该是这样的:
$num_sections = 4;
# Some magic to initialize $VAR1 to this:
$VAR1 = {
'sections' => [
{},
{},
{},
{}
]
};
Run Code Online (Sandbox Code Playgroud)
我想这个工作,
$ph->{sections} ||= [({} x $num_sections )];
但它导致了
$VAR1 = {
'sections' => 'HASH(0x21b6110)HASH(0x21b6110)HASH(0x21b6110)HASH(0x21b6110)'
};
Run Code Online (Sandbox Code Playgroud)
并且没有使用()列表上下文和{}空哈希引用的数量似乎使其工作.
这可行,但它不是一个单行
unless ($ph->{sections})
{
push @{ $ph->{sections}}, {} foreach (1..$num_sections);
}
Run Code Online (Sandbox Code Playgroud)
我可以使用一些perl魔法来添加unless到最后,但我还没有弄明白.
我觉得我太近了,但我真的不能理解.
更新 Oleg指出这可能根本没有必要.见下面的评论.
我有两个属于一个人的属性年龄(浮点)和姓名(字符串)。我想将它们写入csv文件,因此,我使用numpy来存储数据,然后将其写入csv。
import numpy as np
import random
age_name = np.empty((2, 10))
print (age_name.shape)
for i in range (10):
age = random.randint(0,100)
name = 'ABC'
age_name[0,i]=age
age_name[1,i]=name
print (age_name)
Run Code Online (Sandbox Code Playgroud)
我收到错误
回溯(最近一次调用最后一次):文件“python”,第 9 行,在 ValueError:无法将字符串转换为浮点数:'ABC'
这可能不是一个好的选择,因为数据既有字符串又有浮点数,你能给我建议一种可以轻松存储到 csv 文件的好方法吗?
我无法解决这个问题,我该如何解决这个问题?
import React, { Component } from "react";
import "./Main.css";
import { FaSearch, FaEdit, FaWindowClose } from "react-icons/fa";
export default class Main extends Component {
state = {
pesquisaNFE: "",
resultado: [],
};
handleSubmit = (e) => {
e.preventDefault();
const { resultado } = this.state;
let { pesquisaNFE } = this.state;
pesquisaNFE = pesquisaNFE.trim();
if (resultado.indexOf(pesquisaNFE) !== -1) return;
const newSearch = [...resultado];
this.state({
resultado: [...newSearch, pesquisaNFE],
});
};
Run Code Online (Sandbox Code Playgroud)
错误:

csv ×3
copy ×1
git ×1
git-worktree ×1
java ×1
javascript ×1
numpy ×1
openfoam ×1
paraview ×1
perl ×1
postgresql ×1
python ×1
python-3.x ×1
reactjs ×1