我知道使用mysql,您可以将SQL语句写入.sql文件,并从mysql命令行运行该文件,如下所示:

mysql> source script.sql

如何将变量传递给脚本? 例如,如果我想运行一个检索部门中所有员工的脚本,我希望能够将部门的编号作为变量传递。

我不是试图通过shell脚本运行查询。 我从mysql命令行运行简单的查询。 我已经厌倦了一直重新输入它们,为它们编写shell脚本会有点过分。

===============>>#1 票数:20 已采纳

像这样:

set @department := 'Engineering';

然后,在script.sql中的任何地方引用@department

update employee set salary = salary + 10000 where department = @department;

===============>>#2 票数:15

    #!/bin/bash

    #verify the passed params
    echo 1 cmd arg : $1
    echo 2 cmd arg : $2

    export db=$1
    export tbl=$2

    #set the params ... Note the quotes ( needed for non-numeric values )
    mysql -uroot -pMySecretPaassword \
    -e "set @db='${db}';set @tbl='${tbl}';source run.sql ;" ;

    #usage: bash run.sh my_db my_table
    #
    #eof file: run.sh

    --file:run.sql

    SET @query = CONCAT('Select * FROM ', @db , '.' , @tbl ) ;
    SELECT 'RUNNING THE FOLLOWING query : ' , @query ;
    PREPARE stmt FROM @query;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;

    --eof file: run.sql

您可以从以下项目中重复使用整个概念

===============>>#3 票数:-10

你真的应该考虑一种更合适的方式。 我猜你正试图通过shell脚本运行mysql查询。 你应该使用像PERL或PHP这样的东西。

  ask by Tom Burke translate from so

未解决问题?本站智能推荐:

1回复

将值传递给Shell脚本中的变量

我正在编写一个脚本,它将执行以下操作: 删除特定目录 将加密的密码设置为变量 使用encrypet密码可以将其解密 将解密的密码设置为变量 在命令中使用解密的密码启动服务 这就是我到目前为止 因此,文件夹删除是正确的。 crypto命令
2回复

Errno 13:将Python变量传递给bash脚本[重复]

这个问题已经在这里有了答案: 无法从python子进程执行shell脚本:权限被拒绝 2个答案 目前,我正在测试一个非常简单的代码段。 我只是想编写一个设置变量的python脚本,然后将该变量传递到bash脚本中以供使用。 Python脚本: Bas
1回复

在脚本之间传递PHP变量

我对此有困难,因此我在Google上搜索并在此处阅读。 最后,我尝试了一个W3网站的2个小摘录,像2个文件Z1.php和Z2.php: Z1 我放入一行以包含Z2-然后Z2是: 我将所有内容放入Zend,并得到了输出 最喜欢的颜色是。 最喜欢的动物是。 我
2回复

BASH,将多项目变量传递给函数

我有一个功能: 等等。 在脚本的“主体”正文中,我具有以下内容: FILE是包含IP列表的文件的名称。 当我将PORTS传递给函数时,仅第1项被传递。 我也尝试过使用双引号。 我把那个“ echo”声明确认。 它仅显示PORTS中的第一项,即22。 如
1回复

将CMD结果传递给批处理文件中的变量

我正在尝试使用PSTools安装应用程序和一组服务,但是我要考虑到我尝试连接的计算机可能已关闭或位于内部网络无法访问的其他网络上。 基本上,如果无法通过管理员共享访问计算机,这是我收到的消息: 无法访问MachineName : 找不到网络路径。 确保在MachineNa
1回复

在Powershell中将多个变量传递给Export-CSV

大家好,我遇到了Powershell 2.0问题,这使我发疯。 我的目标:创建一个脚本,该脚本确定Documents文件夹的大小以及当前用户在同一行中,但在csv文件中的两个不同字段中。 到目前为止,我已经尝试了以下脚本: 该脚本可以工作并导出文件夹大小(总和)以及一些我不需要的列,
3回复

在python脚本之间传递变量的简单方法?

我是python /编程的新手,所以也许我一直在为这个问题搜索错误的语法。 我正在研究一些python脚本。 例如,在其中一个python脚本中,我正在抓取传感器数据,如时间,海拔高度和压力,让我们称之为getsensor.py 然后,我有另一个需要“getsensor.py”数据
2回复

将变量从Shell脚本传递到sql语句

我试图使cat1.txt作为变量($ 2),以便将其插入sql select语句中。 有没有办法做到这一点? 我的SQL语句 我想尝试一下,请参阅下文。 无需手动键入prod_bill,就可以像文件名一样将其设置为变量。 我应该添加到Shell脚本中的任何内容吗? 谢谢
4回复

统一的其他脚本中的变量

我想在Unity 2d中创建一个游戏。 我完成了大部分我想做的事情并且已经转移到了敌人身上。 敌人(龙)从屏幕的不同点进入。 要做到这一点,我已经将精灵游戏对象放置在我希望龙产生的地方。 我让所有这些对象成为另一个名为DragonAncores的对象的子对象。 我在DragonAnco
3回复

Bash脚本中的时间变量

如果每次有3个不同的脚本在每次写入文件时都在不同的时间运行,那么如何编写bash脚本以仅在特定的时间运行特定的脚本。 这并不像cron作业那么简单(尽管cron可能会根据时间交换出.sh文件),但我正在寻找时间变量。 例如: 我问了类似的问题,但我对所要查找的变量或如何定义它们的