搜索

常用sql 语句

已有 1776 次阅读2015-4-22 10:43

  1. select MD5('123456');//生成MD5格式
  2. select * from table1 where in (select line1 from table2 where id=‘...’);//级联查询
  3. select * from table where id='1' order by id desc limit 5;
  4. select * from table where id='1' order by id asc limit 5;
  5. select * from db1.table a INNER JOIN db2.table b ON a.id = b.id where b.id2 ='-1' limit 10
  6. right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录
  7. left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记
增:
  1. insert  into `table`  values(row1,row2,row3...); //插入整行
  2. insert  table (row1,row2,row3...) values ('num1','num2','num3'...);//插入字段 
  3. insert  into  table SET id='54477248',valid_time='2014-11-04 00:00:00';
删:
  1. delete from table where id=‘000’ //删所有行
  2. delete * from table; //删所有行
  3. delete line1 from table; //删所有行中的一列
改:
  1. update table set line=‘000’ where id=‘111’;
  2. UPDATE "表格" SET "栏位1" = [值1], "栏位2" = [值2] WHERE "条件";
查:
  1. select * from table where id='111';//查满足条件的所有
  2. select line1 from table where id='111';//查一列
  3. select * from table where id in (num1,num2,num3);//多个满足条件的行
链接mysql
shell> mysql -h192.168.1.32 -ulashou_test -psongwei123 //链接数据库
shell> mysql -h localhost -u myname -pmypass mydb  //链接数据库
use db;//选中要操作数据库

二、显示命令

1、显示当前数据库服务器中的数据库列表:

mysql> SHOW DATABASES;

注意:mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。

2、显示数据库中的数据表:

mysql> USE 库名;
mysql> SHOW TABLES;

3、显示数据表的结构:

mysql> DESCRIBE 表名;

4、建立数据库:

mysql> CREATE DATABASE 库名;

5、建立数据表:

mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));

6、删除数据库:

mysql> DROP DATABASE 库名;

7、删除数据表:

mysql> DROP TABLE 表名;

8、将表中记录清空:

mysql> DELETE FROM 表名;

9、显示表中的记录:

mysql> SELECT * FROM 表名;

10、往表中插入记录:

mysql> INSERT INTO 表名 VALUES (”hyq”,”M”);

11、更新表中数据:

mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';

12、用文本方式将数据装入数据表中:

mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE 表名;

13、导入.sql文件命令:

mysql> USE 数据库名;
mysql> SOURCE d:/mysql.sql;

14、命令行修改root密码:

mysql> UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root';
mysql> FLUSH PRIVILEGES;

15、显示use的数据库名:

mysql> SELECT DATABASE();

16、显示当前的user:

mysql> SELECT USER();

三、一个建库和建表以及插入数据的实例

drop database if exists school; //如果存在SCHOOL则删除

create database school; //建立库SCHOOL

use school; //打开库SCHOOL

create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default ‘深圳',
year date
); //建表结束

//以下为插入字段
insert into teacher values(”,'allen','大连一中','1976-10-10′);
insert into teacher values(”,'jack','大连二中','1975-12-23′);

如果你在mysql提示符键入上面的命令也可以,但不方便调试。

(1)你可以将以上命令原样写入一个文本文件中,假设为school.sql,然后复制到c:\\下,并在DOS状态进入目录\\mysql\\bin,然后键入以下命令:

mysql -uroot -p密码 < c:\\school.sql

如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。

(2)或者进入命令行后使用 mysql> source c:\\school.sql; 也可以将school.sql文件导入数据库中。

四、将文本数据转到数据库中

1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用\\n来代替.例:

3 rose 大连二中 1976-10-10

4 mike 大连一中 1975-12-23

假设你把这两组数据存为school.txt文件,放在c盘根目录下。

2、数据传入命令 load data local infile “c:\\school.txt” into table 表名;

注意:你最好将文件复制到\\mysql\\bin目录下,并且要先用use命令打表所在的库。

五、备份数据库:(命令在DOS的\\mysql\\bin目录下执行)

1.导出整个数据库

导出文件默认是存在mysql\bin目录下

mysqldump -u 用户名 -p 数据库名 > 导出的文件名

mysqldump -u user_name -p123456 database_name > outfile_name.sql

2.导出一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

mysqldump -u user_name -p database_name table_name > outfile_name.sql

3.导出一个数据库结构

mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql

-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table

4.带语言参数导出

mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql

1. 备份数据库 
mysqldump -uroot -p test_db > test_db.sql 
2. 恢复数据库 
mysql -uroot -p test_db < test_db.sql 
3. 创建权限 
grant all privileges on test_db.* to test_db@'localhost' identified by '123456'; 
兼容mysql4.1之前模式: 
update mysql.user set password=old_password('123456') where user='test_db'; 
4. 忘记密码 
在“my.cnf”或“my.ini”文件的“mysqld”配置段添加“skip-grant-tables”,然后重新启动mysql即可登录修改root密码。



路过

雷人

握手

鲜花

鸡蛋

全部作者的其他最新日志

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

 
 
大数据行业交流
大数据行业交流
大数据求职招聘
大数据求职招聘
站长电话:
15010106923
微信联系:
hb-0310
站长邮箱:
ab12-120@163.com
大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-5-18 20:36 , Processed in 0.044845 second(s), 22 queries .

返回顶部