Module: SQLActionHelper
- Defined in:
- lib/action/module/sql_action.rb
Instance Method Summary collapse
-
#sql_send(host = HOST, port = PORT, user = USER, password = PASSWORD, database, sqltxt) ⇒ Object
功能: 发送sql请求.
-
#sql_send_arr(host = HOST, port = PORT, user = USER, password = PASSWORD, database, sqltxt) ⇒ Object
功能: 发送sql请求.
Instance Method Details
#sql_send(host = HOST, port = PORT, user = USER, password = PASSWORD, database, sqltxt) ⇒ Object
功能:
发送sql请求
参数解释:
-
host 机器名或ip
-
port 端口
-
user 用户名
-
password 密码
-
database 数据库名字
-
sqltxt sql语句
注意:
需要注意的是在访问之前需要保证使用的用户和密码具有远程访问的权限
Example:
sql_send “space”, “show tables;”
检查的方法:
assert_body “正则式”
26 27 28 29 30 31 32 33 34 |
# File 'lib/action/module/sql_action.rb', line 26 def sql_send(host=HOST, port=PORT, user=USER, password=PASSWORD, database, sqltxt) toolspath = TOOL_ROOT cmdtxt="cd #{toolspath}; ./mysql -h #{host} -P#{port} -u#{user} -p#{password} \"#{database}\" -e \"#{sqltxt}\"" ret=`#{cmdtxt}` Context.set("IOBODY", ret) puts cmdtxt $log.debug cmdtxt $log.debug Context.get("IOBODY") end |
#sql_send_arr(host = HOST, port = PORT, user = USER, password = PASSWORD, database, sqltxt) ⇒ Object
功能:
发送sql请求
参数解释:
-
host 机器名或ip
-
port 端口
-
user 用户名
-
password 密码
-
database 数据库名字
-
sqltxt sql语句
注意:
需要注意的是在访问之前需要保证使用的用户和密码具有远程访问的权限
Example:
sql_send_arr “space”, “show tables;”
返回值:
以二维数组格式返回
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/action/module/sql_action.rb', line 58 def sql_send_arr(host=HOST, port=PORT, user=USER, password=PASSWORD, database, sqltxt) toolspath = TOOL_ROOT if password.size !=0 cmdtxt="cd #{toolspath}; ./mysql -h #{host} -P#{port} -u#{user} -p#{password} \"#{database}\" -e \"#{sqltxt}\"" else cmdtxt="cd #{toolspath}; ./mysql -h #{host} -P#{port} -u#{user} \"#{database}\" -e \"#{sqltxt}\"" end #puts cmdtxt ret=`#{cmdtxt}` arr = [] i = 0 ret.each_line do |line| arr[i] = line.split i = i + 1 end $log.debug cmdtxt $log.debug arr return arr end |