Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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
如何插入复杂的linux终端命令';s输出到mysql数据库表_Mysql_Linux_Database_Terminal_Output - Fatal编程技术网

如何插入复杂的linux终端命令';s输出到mysql数据库表

如何插入复杂的linux终端命令';s输出到mysql数据库表,mysql,linux,database,terminal,output,Mysql,Linux,Database,Terminal,Output,我正在尝试转换以下终端命令: date +"%m/%d/%Y %H:%M:%S" 其输出为: 12/07/2017 19:49:48 将来自日期+%m/%d/%Y%H:%m:%S“的终端输出作为mysql数据库表中的值插入到终端命令中: 我尝试使用的完整终端命令是: echo "INSERT INTO block (date, data, sha256) VALUES ($(date +"%m/%d/%Y %H:%M:%S"), "dogs are loyal", "6324542a2ce0b

我正在尝试转换以下终端命令:

date +"%m/%d/%Y %H:%M:%S"
其输出为:

12/07/2017 19:49:48

将来自
日期+%m/%d/%Y%H:%m:%S“
的终端输出作为mysql数据库表中的值插入到终端命令中:

我尝试使用的完整终端命令是:

echo "INSERT INTO block (date, data, sha256) VALUES ($(date +"%m/%d/%Y %H:%M:%S"), "dogs are loyal", "6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637dabda113e35e");"| mysql blockchain -u root;
我得到以下错误:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '19:49:48, dogs are loyal, 6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637da' at line 1
奇怪的是,我从错误中注意到“date”命令运行,但它只捕获
%H:%M:%S
,因为它提到
19:49:48

我尝试在mysql命令行界面中直接运行该命令,但出现以下错误:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '19:49:48, dogs are loyal, 6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637da' at line 1
错误1305(42000):功能区块链。$不存在

我的数据库详细信息如下:

我的数据库名为“区块链”,表名为“区块”,表说明如下

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| blockchain         |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.01 sec)

mysql> show tables;
+----------------------+
| Tables_in_blockchain |
+----------------------+
| block                |
+----------------------+

mysql> desc block;

+--------+-------------------+------+-----+---------+----------------+
| Field  | Type              | Null | Key | Default | Extra          |
+--------+-------------------+------+-----+---------+----------------+
| id     | int(255) unsigned | NO   | PRI | NULL    | auto_increment |
| date   | varchar(20)       | NO   |     | NULL    |                |
| data   | varchar(250)      | NO   |     | NULL    |                |
| sha256 | varchar(64)       | NO   |     | NULL    |                |
+--------+-------------------+------+-----+---------+----------------+
基于这些错误,我假设它与特殊字符有关,主要是“$”,但也可能是命令中的“+”或“”空格

我做了一些研究,并尝试使用escape字符esr''vs``vs“$”vs“\”使命令的输出成为mysql表的插入值,但是 我仍在遇到一些问题,我希望作为最后的手段接触到这个社区

提前感谢您的耐心和帮助

真诚地


作为一个谦逊的学生

我认为您生成的sql在数据周围没有正确的引用。请尝试以下操作:

echo "INSERT INTO block (date, data, sha256) VALUES ('$(date +"%m/%d/%Y %H:%M:%S")', "\'dogs are loyal\'", "\'6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637dabda113e35e\'");"| mysql blockchain -u root;

对于我的ubuntu虚拟机,它工作得很好

我认为您生成的sql在数据周围没有正确的引号。请尝试以下操作:

echo "INSERT INTO block (date, data, sha256) VALUES ('$(date +"%m/%d/%Y %H:%M:%S")', "\'dogs are loyal\'", "\'6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637dabda113e35e\'");"| mysql blockchain -u root;

对于我的ubuntu虚拟机,它工作得很好

您是否尝试过在终端中使用单引号围绕值运行命令,即
“dogs is忠诚”
?您是否尝试过在终端中使用单引号围绕值运行命令,即
“dogs is忠诚”
?谢谢您,这是一个简单的修复,我在正确的轨道上,但在错误的位置尝试了\和。我能够使用你的建议:我为新手的错误道歉,但我学到了很多。谢谢你的时间和耐心<代码>root@kali:~#echo“插入块(日期、数据、sha256)值(“$(日期+%m/%d/%Y%H:%m:%S”),“‘狗是忠诚的’,“‘6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637dabda113e35e’”;“| mysql区块链-u根然后它写到了桌面谢谢你M H Rasel,这是一个简单的修复,我在正确的轨道上,但在错误的位置尝试了\和。我能够使用你的建议:我为新手的错误道歉,但我学到了很多。谢谢你的时间和耐心<代码>root@kali:~#echo“插入块(日期、数据、sha256)值(“$(日期+%m/%d/%Y%H:%m:%S”),“‘狗是忠诚的’,“‘6324542a2ce0b80ad32e45b5ca8e8b9dd02da8802c6fc9939637dabda113e35e’”;“| mysql区块链-u根并写入表中