MYSQL语句集
1.查看MYSQL 数据库编码
SHOW VARIABLES LIKE ‘character_set_%’;
mysql> show variables like ‘character_set_%’;
其中,set_connection是连接编码,latin1是瑞典编码。
2.导入.TXT文件与导出*.TXT
load data infile ‘TXT文件的完整路径’ into table 表名;
linux:TXT文件的完整路径=‘/tmp/aaa.txt’
windowns:TXT文件的完整路径=’e:\\aaa.txt’
.txt的文件用Tab隔离
表中有auto_increment属性的字段,在.txt文件中使用null
select * from table_name into outfile ‘ path/filename.txt ‘ ;
3.新增用户
一:登录进入MySQL数据库后:
(1).use mysql;
(2).INSERT INTO user
VALUES (‘localhost’, ‘newuser’, PASSWORD( ‘newpassword’ ) , ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ”, ”, ”, ”, ‘0’, ‘0’, ‘0’, ‘0’);
(3).FLUSH PRIVILEGES ;
提示:PASSWORD函数的运用需要注意版本,参考函数的调用:OLD_PASSWORD
注意:第三点是插入数据成功后,让他生效的。
二:用 grant 分配
grant all on * . * to admin @localhost identified by ‘ admin ‘ ;
说明: admin 用户(密码为admin)分配所有权限(除grant),对所有数据库和所有表.
grant all on db_name . * to chenlb@ % identified by ‘ chenlbpassword ‘ ;
说明: chenlb用户有所有权限,只对 db_name的所有表.
grant select , insert on db_name .tb_name to clb @chenlb .com identified by ” ;
说明: clb 用户(密码为空,只有 chenlb.com 主机才有效,
如果改为%.chenlb.com就对所有后缀为chenlb.com的主机都有效)
只对 db_name 中的 tb_name 表中有 select,insert 权限.
权限可以加上(delete,update,drop,create ……)。
4.重命名表
ALTER TABLE table_name
RENAME new_table_neme
;
5.改用户密码
use mysql;
update user set password = password(“new_pass”) where user = “root”;
flush privileges ;
mysqladmin – u username – p pw password newpassword
6.设远程用户
use mysql;
update user set Host = ‘ % ‘ where user = ‘ user_name ‘ ;
flush privileges ;
或为特定的IP
注意:否则,登录时出错–Access denied for user ‘clb’@’localhost’ (using password: YES)
7.mysql导出\入.sql文件
导出:
mysqldump – u user_name – p [ your_password ] db_nmae > path\ file_name .sql
如果[your_password]缺省,然后提示输入密码:有密码则输入,否则直接回车
导入:
mysql – u user – p [ your_password ] db_name < path\filename.sql
同上。
在linux上导出
如果用mysqldump导出出现了乱码也没有关系,可以运行iconv来转换一下
iconv -c -f UTF-8 -t GB2312 库文件名 > 新的gb2312的库文件名
8.设置密码的几种方法
//不行1.mysqladmin -u user_name password new_password
9.符合条件的从那里开始,在多少以内.
select * from talbe_name limit 0 , 30 ;
说明:从符合条件的第1条开始,读出30条,如果不够30条,取最大.
10.添加字段
ALTER TABLE table_name
ADD colum_name
VARCHAR ( 11 ) NOT NULL AFTER colum_name
;
11.函数
select coalesce(null,3,null)
返回列表的第一个非NULL值
select greatest(3,5)
返回列表的最大值
select least(2,0)
返回列表的最小值
12.加入单引号
INSERT INTO userinfo
(id
, username
, lastlogin
)
VALUES (NULL, ”’陈”’, ‘2006-07-28’);
说明用两个单引号.
13.输出警告
warnings
14.安装/删除服务
mysqld — install MySQL –defaults-file=C:\my-opts.cnf
mysqld –remove
15.改变自增值
ALTER TABLE table_name
AUTO_INCREMENT =1
16.设主键
ALTER TABLE table_name
ADD PRIMARY KEY (id
)
17.搜索
SELECT * FROM email_list
WHERE relation LIKE ‘%老%’
18.表结构
DESCRIBE db_name;
19.添加索引(即:唯一)
ALTER TABLE user
ADD UNIQUE (username
)
20.删除
delete from text order by id desc limit 2;
21.建表
CREATE TABLE tt
(
id
INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
name
VARCHAR( 50 ) NOT NULL
) ENGINE = MYISAM ;
22.帐户
drop user svn @localhost ;
23.去除重复
select distinct name from tab