mysql的update语句,set后面如何跟变量?

mysql的update语句,set后面如何跟变量?,第1张

$query = "UPDATE xxx SET a=1,b=$bb,c='$cc'"

mysql($query)

其中b是数字类型的字段,c是字符串,时间等类型的字段,$bb,$cc就是你说的变量

有些必须在配置文件上修改,有些可以直接修改。

变量有两种,全局变量,session变量。

全局变量对所有session对效,session变量对当前session对效。

修改全局变量: 登陆进mysql: set global 变量名=变量值

修改session变量: set 变量名=变量值。

设置全局变量方法1(不推荐): 修改参数文件, 然后重启mysqld

# vi /etc/my.cnf

[mysqld]

wait_timeout=10

# service mysqld restart

不过这个方法太生硬了, 线上服务重启无论如何都应该尽可能避免。

设置全局变量方法2(推荐): 在命令行里通过SET来设置, 然后再修改参数文件

如果要修改全局变量, 必须要显示指定"GLOBAL"或者"@@global.", 同时必须要有SUPER权限.

mysql>set global wait_timeout=10

or

mysql>set @@global.wait_timeout=10

会话变量和全局变量转换方法:

在命令行里通过SET来设置 将会话变量值设置为对应的全局变量值。

mysql>set @@session.wait_timeout=@@global.wait_timeout

将会话变量值设置为MySQL编译时的默认值(wait_timeout=28800):

mysql>set wait_timeout=DEFAULT

这里要注意的是, 并不是所有的系统变量都能被设置为DEFAULT, 如果设置这些变量为DEFAULT则会返回错误。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6141590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存