易截截图软件、单文件、免安装、纯绿色、仅160KB

mysql变量类型

9.3. 用户变量
可以先在用户变量中保存值然后在以后引用它;这样可以将值从一个语句传递到另一个语句。用户变量与连接有关
。也就是说,一个客户端定义的变量不能被其它客户端看到或使用。当客户端退出时,该客户端连接的所有变量将自动释放。
用户变量的形式为@var_name
,其中变量名var_name
可以由当前字符集的文字数字字符、‘.
’、‘_
’和‘$
’组成。
默认字符集是cp1252
(Latin1)
。可以用mysqld
的--default-character-set
选项更改字符集。参见5.10.1节,“数据和排序用字符集”
。用户变量名对大小写不敏感。
设置用户变量的一个途径是执行SET
语句:
SET @
var_name
=
expr
[, @
var_name
=
expr
] ...
对于SET
,可以使用=
或:=
作为分配符。分配给每个变量的expr
可以为整数、实数、字符串或者NULL
值。
也可以用语句代替SET
来为用户变量分配一个值。在这种情况下,分配符必须为:=
而不能用=
,因为在非SET
语句中=
被视为一个比较
操作符:
mysql>
SET @t1=0, @t2=0, @t3=0;
mysql>
SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
+----------------------+------+------+------+
| @t1:=(@t2:=1)+@t3:=4 | @t1  | @t2  | @t3  |
+----------------------+------+------+------+
|                    5 |    5 |    1 |    4 |
+----------------------+------+------+------+
用户变量可以用于表达式中。目前不包括明显需要文字值的上下文中,例如SELECT
语句的LIMIT
子句,或者LOAD
DATA
语句的IGNORE
number LINES
子句。
如果使用没有初始化的变量,其值是NULL

如果用户变量分配了一个字符串值,其字符集和校对规则与该字符串的相同。用户变量的可压缩性(coercibility
)是隐含的。(
即为表列值的相同的可压缩性(coercibility
)。
注释:
在SELECT
语句中,表达式发送到客户端后才进行计算。这说明在HAVING
、GROUP
BY
或者ORDER
BY
子句中,不能使用包含SELECT
列表中所设的变量的表达式。例如,下面的语句不能按期望工作:
mysql>
SELECT (@aa:=id) AS a
,(@aa+3) AS b


相关文档:

java 插入数据到 mysql 乱码 最佳解决

 手动建表:
CREATE TABLE `excel` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(50) DEFAULT NULL,
  `passwd` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;  注意是gb2312
然后在连接数据库时加上:
useUnicode=true&characterEncoding=gb2312.
就ok啦! ......

11 advanced MySQL questions

 

Explain MySQL architecture
. - The front layer
takes care of network connections and security authentications, the
middle layer does the SQL query parsing, and then the query is handled
off to the storage engine. A storage engine could be either a default
one supp ......

.\mysql\user is marked as crashed 解决办法

 
I found a solution to anyone else who may be having this problem.
First start mysql using skip grant tables
root@ns1 [/var/lib/mysql/mysql]# service mysql start --skip-grant-tables
Starting MySQL [ OK ]
now with mysql started, you can repair the mysql/user table
root@ns1 [/var/lib/mysql ......

MySQL数据库中的Show命令具体用法

 MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show命令的使用还容易产生混淆,本文汇集了show命令的众多用法。
a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。
b. show databases; -- 显示mysql中所有数据库的名称。
c. show columns from table_nam ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号