Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 使用加密时Oracle Sql将中断_Sql Server_Oracle_Hibernate_Encryption - Fatal编程技术网

Sql server 使用加密时Oracle Sql将中断

Sql server 使用加密时Oracle Sql将中断,sql-server,oracle,hibernate,encryption,Sql Server,Oracle,Hibernate,Encryption,我正在运行一个基本的SQL命令 有点像: insert into $table (myEncryptedKey) values( ENCRYPTED_KEY); 当我使用基本字符串作为加密密钥时,它运行良好 让我们说“我的钥匙” 然而,当我使用一个加密的,说“ASDFSA/==”它失败了。org.hibernate.exception.sqlgrammareexception:SQL语句错误中的语法错误 我尝试用“”字符包围字符串,例如: “诸如此类”“按键+”“诸如此类” 但这似乎不起作用

我正在运行一个基本的SQL命令

有点像:

insert into $table (myEncryptedKey) values( ENCRYPTED_KEY);
当我使用基本字符串作为加密密钥时,它运行良好

让我们说“我的钥匙”

然而,当我使用一个加密的,说“ASDFSA/==”它失败了。org.hibernate.exception.sqlgrammareexception:SQL语句错误中的语法错误

我尝试用“”字符包围字符串,例如:

“诸如此类”“按键+”“诸如此类”

但这似乎不起作用

我的桌子有点像

$table
     keyvalue varchar(255)
我现在不能修改它

我能为你做些什么?我仍然需要插入加密的sql查询值。它的哪一部分导致了错误


谢谢

您需要使用绑定变量。不要直接将字符串放入SQL(特别是当它们可以包含特殊字符时)。列是声明为
varchar2
还是声明为
raw
?加密数据是以字符串形式还是以二进制数据类型存储在客户端上?通常,加密产生二进制值。将加密数据存储在
varchar2
中通常是一个坏主意,因为这样字符集转换会使数据无法读取,除非您对加密数据进行Base-64编码(这会影响所需列的大小).@Thilo你能解释一下绑定变量是什么意思吗?@JustinCave嗯,我会调查一下,一秒钟谢谢你他们是varchar。。。然而,我现在真的没有改变它们的选择