Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1415024
  • 博文数量: 241
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 2253
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-11 22:27
个人简介

--

文章分类

全部博文(241)

文章存档

2021年(3)

2019年(6)

2018年(1)

2017年(9)

2016年(21)

2015年(50)

2014年(125)

2013年(26)

我的朋友

分类: Mysql/postgreSQL

2014-03-02 13:49:32

    数据库操作无外乎增、删、改、查这几个主要的操作,接下来主要针对这几方面学习常用的命令。

1、进入/退出MySQL:
直接进入shell状态,输入root命令即可进入mysql>
退出的话,mysql>exit

2、创建数据库:
mysql> create database database_name;
执行成功会显示:Query OK,1 row affected <0.19 sec>

3、显示数据库:
mysql>show databases;
执行成功后会显示:
+---------------------+
| Database             |
|mysql                   |
|**                        |
+----------------------|

4、删除数据库:
mysql>drop database db_name;
执行成功后显示:
Query OK,0 row affected <0.54 sec>

5、连接/选择使用的数据库
mysql>use db_name;
执行成功后显示:Database changed

6、显示当前数据库相关信息:
(1)显示版本号:
mysql> show version();
(2)
显示当前时间:
mysql> select now(); 

7、显示当前数据库中的表
mysql>show tables;
执行成功会显示表 的列表

8、显示某表的结构:
mysql>desc table_name;
执行成功后会显示表的结构。

9、创建表:
mysql>create table table_name(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));


10、删除表:
mysql> drop table table_name;
DROP TABLE用于取消一个或多个表。您必须有每个表的DROP权限。所有的表数据和表定义会被取消,所以使用本语句要小心!
对与不存在的表,使用IF EXISTS用于防止错误发生。当使用IF EXISTS时,对于每个不存在的表,会生成一个NOTE。

11、
查询表中数据:
(1)查询所有信息:
mysql> select * from table_name;
执行成功后显示表中所有信息

(2)查询某一列信息,按照某种顺序
mysql>select columns_name_1 from table_name order by columns_name_2;// 按照columns_name_2升序 的顺序打印columns_name_1 信息。

(3)查询符合条件的行信息:
mysql> select * from table_name order by id limit 0,2;// 按照id顺序显示,大于0的2个信息。
mysql> select * from  table_name where id>0 and id<3;//效果类似,ID在范围0-3之间的。

(4)查询符合条件的个数:
mysql> select count(column_name) from table_name where column_name=*;

(5)查询排名信息:
mysql>select * from table_name  order by column_name desc limit 5;//前5名的信息,无desc的话,默认为升序排列。

(6)查询某种运算的结果排序信息:
mysql>select *,column_name_1+column_name_2+.. as total_sum from table_name  order by total_sum;

//打印出所有列之和的升序排列顺序。

(7)计算函数的查询命令
计算一列之和:mysql>select sum(column_name_1) from table_name;
计算一列最大值:mysql>select max(column_name_1) from table_name;
计算一列最小值:mysql>select min(column_name_1) from table_name;

select一般配合where使用,以查询更精确更复杂的数据。

12、表插入数据:
 mysql> insert into table_name values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);

13、删除表中数据:
mysql> delete from table_name  where id=1;

14、更改表中数据:
mysql> update table_name  set name='Mary' where id=1;

例子1:单表的MySQL UPDATE语句:
   UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]

例子2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]

15、表中增加字段:
  mysql> alter table table_name  add passtest int(4) default '0'

加索引
   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
例子: mysql> alter table employee add index emp_name (name);

加主关键字的索引
  mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);

加唯一限制条件的索引
   mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique emp_name2(cardnumber);

删除某个索引
   mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;

增加字段:
mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及类型:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删除字段:
MySQL ALTER TABLE table_name DROP field_name;

注:
(1)由于习惯于Linux 的shell,总是忘记每一句之后的分号结束符,如果忘记了,则不会有正确结果,可以再输一遍正确的就行了。
(2)创建表的时候数据一个一个输入。

阅读(928) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~