SQL:结构化查询语言,是一种what型语言,是告诉服务器自己想要什么样的数据,不需要考虑内部如何去做。

SQL语言一般分为三种:DML(数据操作语言)sql中处理数据等操作统称为数据操作语言,比如增删改查。

           DDL(数据定义语言)用于定义和管理SQL数据库中的所有对象的语言(建设者的角度,建表,建库,建视图等等)。

           DCL(数据控制语言)用来授予和回收访问数据库的某种特权,并控制数据库操纵事物发生的时间及效果,对数据库实行监视等。(管理员角度,               DBA(数据库管理员),这个用户是否有权限建表等)。

SQL命令:

使用客户端连接本地mysql:mysql -h localhost -u 用户名 -p密码

使用客户端连接远程主机上的mysql:mysql -h192.168.3.227 -u用户名 -p密码

修改数据库密码:mysqladmin -u用户名 -p旧密码 password新密码

创建数据库:create databases 库名 charset utf8;

删除数据库:drop database 库名;

查询建表语句:show create table user;

删除表:drop table 表名;

查看库:show databases;

选库:use 库名;

查看库下面的表:show tables;

查看表的结构:desc 表名;

 

SQL语句->增加

1.增加所有列

insert into 表名(id,title,content) values (1,'张三','今天运气真好');

2.增加部分列(列与值要严格对应)

insert into 表名(id,title) values (2,'李四');

3.插入所有列的简写(键可以不写)

insert into 表名 values (3,'赵六','好饿想吃饭');

4.一次添加多行数据(多行数据要用逗号隔开)

insert into 表名 values(4,'aa','bb'),(5,'cc'.'dd')(6,'ee','ff');

 

SQL语句—>修改(一定要记得加where限制条件,不然整个数据库的数据都修改了)

update 表名 set 列1=新值,列2=新值 where id=1;

如update use set title='ss',content='jj' where id=4;

 

SQL语句->删除

delete from 表名 where id=1;

delete from user where id=1;

 

SQL语句->查询

1.查询表的所有行所有列(尽量少用,增加数据库的负担)

select * from 表名

2.查询一行

select * from 表名 where id=4;

3.查询多行

select * from 表名 where id>2;

4.查询某几行的某几列,*代表所有列

select id,title from 表名 where id>2;

 

查询模型

1.列是变量,每一行列在变化,从上到下,遍历行,where是表达式,当值为真,则取出该行

select * from user where 1 //取出所有行 1可以看成true

select * from user where 0 //一行都取不出来  0可以看出false

2.变量可以计算

算出明年多少岁:

select name,age+1,gende from user where id=1;

查询本店商品价格比市场价低多少 :

select shop_id,shop_name,shop_price,market_price-shop_price from shop;

3.投影的概念

user有3列我们只取出其中二列(部分列),叫做投影运算,就像手电筒只照到二列投出影子显示出来 投影运算并没有运算:

select name age from user;

二个列做运算叫广义投影:

select shop_id,shop_name,shop_price,market_price-shop_price from shop;

 

以上是笔记里有SQL命令更详细的列子。