小编Syl*_*oux的帖子

MySQL - 添加约束一次用不同的情况添加两次

当我向MySQL表添加约束时,我有这种奇怪的行为:

[...] add constraint qrtz_blob_triggers_ibfk_1 foreign key [...]
Run Code Online (Sandbox Code Playgroud)

现在SHOW CREATE TABLE显示两次约束:

CONSTRAINT `qrtz_blob_triggers_ibfk_1` FOREIGN KEY [...]
CONSTRAINT `QRTZ_BLOB_TRIGGERS_ibfk_1` FOREIGN KEY [...]
Run Code Online (Sandbox Code Playgroud)

这是完整的会话:

mysql> DROP DATABASE IF EXISTS my_test; CREATE DATABASE my_test default character set utf8 collate utf8_bin;
Query OK, 2 rows affected (0.07 sec)

Query OK, 1 row affected (0.00 sec)

mysql> use my_test;
Database changed
mysql> 
mysql> DROP TABLE IF EXISTS `QRTZ_TRIGGERS`;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> 
mysql> CREATE TABLE `QRTZ_TRIGGERS` (
       `TRIGGER_NAME` varchar(80) …

mysql constraints duplication case-sensitive

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

操作'='的排序规则(utf8_unicode_ci,COERCIBLE)和(utf8_general_ci,COERCIBLE)的非法混合

当我运行以下查询时:

CREATE ALGORITHM = UNDEFINED VIEW d_view_galerias AS (
SELECT id, titulo, 'foto' AS tipo, '' AS embed
FROM d_galeria_fotos
)
UNION (

SELECT id, titulo, 'video' AS tipo, embed
FROM d_galeria_videos
)
Run Code Online (Sandbox Code Playgroud)

我得到错误:

操作'='的排序规则(utf8_unicode_ci,COERCIBLE)和(utf8_general_ci,COERCIBLE)的非法混合

“ tipo”的格式为utf8_unicode,但其他字段的格式为utf8_general ...如何进行转换,转换?

mysql casting

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

使用 Sox 更改多个音频文件的音高

我打算使用我的整个音乐收藏并将音高从原始录制的 a=440hz 更改为更自然的声音/感觉 a=432hz。

对于那些不熟悉这个概念或“为什么”这样做的人,我强烈建议您进行谷歌搜索并了解它的全部内容。但这并不完全相关。

我知道我什至可以将 Audacity 和一个一个,转换和重新导出具有新音高的文件。我试过这个,是的,它确实有效。但是,我的收藏非常大,我很高兴找到更合适的命令行选项 SOX。任何的想法 ?

audio frequency sox pitch

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

如何使用Bash解析HTTP标头?

我需要从使用curl的网页标题中获取2个值.我已经能够使用以下方法单独获取值:

response1=$(curl -I -s http://www.example.com | grep HTTP/1.1 | awk {'print $2'})
response2=$(curl -I -s http://www.example.com | grep Server: | awk {'print $2'})
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何使用单个curl请求单独grep值,如:

response=$(curl -I -s http://www.example.com)
http_status=$response | grep HTTP/1.1 | awk {'print $2'}
server=$response | grep Server: | awk {'print $2'}
Run Code Online (Sandbox Code Playgroud)

每次尝试都会导致错误消息或空值.我确信这只是一个语法问题.

linux bash curl

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

如果 xmlcharrefreplace 和 backslashreplace 不起作用,我应该如何解码字节(使用 ASCII)而不丢失任何“垃圾”字节?

我有一个网络资源,它返回给我的数据(根据规范)应该是 ASCII 编码的字符串。但在极少数情况下,我会收到垃圾数据。

例如,一个资源返回b'\xd3PS-90AC',而另一个资源对于相同的键返回b'PS-90AC'

第一个值包含非 ASCII 字符串。显然违反了规范,但不幸的是这超出了我的控制范围。我们没有人 100% 确定这确实垃圾或应该保留的数据。

调用远程资源的应用程序将数据保存在本地数据库中以供日常使用。我可以简单地执行“data.decode('ascii', 'replace')或”操作..., 'ignore'),但随后我会丢失稍后可能有用的数据。

我的第一反应是使用'xmlcharrefreplace'or'backslashreplace'作为错误处理程序。很简单,因为它会产生一个可显示的字符串。但后来我收到以下错误:TypeError: don't know how to handle UnicodeDecodeError in error callback

唯一有效的错误处理程序是surrogateescape,但这似乎适用于文件名。另一方面,对于我的意图和目的来说,它会起作用。

为什么有效'xmlcharrefreplace''backslashreplace'无效?我不明白这个错误。

例如预期执行将是:

>>> data = b'\xd3PS-90AC'
>>> new_data = data.decode('ascii', 'xmlcharrefreplace')
>>> print(repr(new_data))
'&#d3;PS-90AC'
Run Code Online (Sandbox Code Playgroud)

这是一个人为的例子。我的目标是不丢失任何数据。如果我使用ignorereplace错误处理程序,则相关字节基本上会消失,并且信息会丢失。

python encoding byte python-3.x

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

将任意二进制数据存储在仅接受有效UTF8的系统上

我有任意二进制数据.我需要将它存储在一个需要有效UTF8的系统中.它永远不会被解释为文本,我只需将其放在那里并能够检索它并重新构建我的二进制数据.

显然base64会起作用,但我不能有那么多的通货膨胀.

我怎样才能在python 2.7中轻松实现这一点?

python unicode utf-8 python-2.7

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

合并oracle中的集合?

我需要合并两个集合.我知道可以合并两个表,但不确定集合.合并馆藏的最佳方式是什么?下面说的是示例代码

------------
CREATE OR REPLACE TYPE obj_test AS OBJECT(
id number(9),
val number (9)
)
/

CREATE OR REPLACE TYPE obj_test_list AS TABLE OF obj_test
/
Run Code Online (Sandbox Code Playgroud)

我有两个列表/集合

list1 obj_test_list ;
list2 obj_test_list ;
list3 obj_test_list ;


list1        
id val 
1 100 
2 200 
3 300


list2       
id val 
1 300 
4 500 
Run Code Online (Sandbox Code Playgroud)

我想基于id匹配list1和list2并添加val else insert.我想在list3中如下所示.

list3 
id val 
1 400 
2 200 
3 300
4 500
Run Code Online (Sandbox Code Playgroud)

有人可以为此提供示例代码吗?

sql oracle plsql

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

在 Oracle 中创建具有多个外键的表

我正在尝试创建一个 ENCOUNTER 实体表。我已经成功创建了与该表关联的所有外键表,但是当我尝试在 Oracle 数据库快捷版 11g 上运行它时,它不断给出以下错误消息,我找不到任何错误。ORA-00907: missing right parenthesis下面是命令语法。

CREATE TABLE ENCOUNTER (
ENCT_ID VARCHAR2(25) PRIMARY KEY,
ENCT_DATE DATE NOT NULL,
PT_MRN NUMBER NOT NULL,
ENCT_BP VARCHAR2(10) NOT NULL,
ENCT_WT NUMBER(3,2) NOT NULL,
ENCT_TEMP NUMBER(3) NOT NULL,
ACCT_ID VARCHAR2(25) NOT NULL,
PHX_ID VARCHAR2(25) NOT NULL,
CONSTRAINT FK_PATIENT FOREIGN KEY (PT_MRN) REFERENCES PATIENT(PT_MRN)
CONSTRAINT FK_ACCOUNT FOREIGN KEY (ACCT_ID) REFERENCES ACCOUNT(ACCT_ID)
CONSTRAINT FK_PTHISTORY FOREIGN KEY (PHX_ID) REFERENCES PTHISTORY(PHX_ID));
Run Code Online (Sandbox Code Playgroud)

oracle

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

在 Python 3.8 之前的版本中将内存视图设置为只读

Python 3.8添加了该memoryview.toreadonly()方法。但是有没有办法在以前版本的Python中创建只读内存视图——特别是Python 3.5和3.3?

为了了解更多背景信息,我使用内存视图在对象之间共享大型二进制 blob 的部分。有时 blob 是内存中的byte对象,但有时它也是读/写映射文件。我想避免通过内存视图错误地修改底层文件。

python-3.x python-3.3 python-3.5

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

HTTP 是否允许服务器在收到整个正文之前发送其响应?

在HTTP/1.1标准中,是否明确允许或禁止服务器在收到所有请求数据之前发送响应?

举个例子,当使用 POST 请求上传大量数据时,我可以想象服务器在收到请求的标头后但在收到整个正文之前返回“202 ACCEPTED”响应。合法还是不合法?这是野外存在的东西吗?

与服务器在收到整个请求之前发送 HTTP 响应是否可以接受密切相关?,但那里的响应似乎侧重于处理“错误”(可能是 4xx、5xx),而不是“成功”(2xx)

http

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