CodingAlarm的专栏

表与数据库与MYSQL数据库服务器(table&database&mysqlserver)?

表由多行多列的数据组成 (一张表建立好表头,表结构就算建立好了,剩下的只剩往里填数据)

数据库由多张表组成 tables–>database

数据库服务器中有多个数据库 databases–>mysql server

什么是SQL语言?

是结构化查询语言(Structured Query Language)

它是一种what类型语言,我们平时使用的是who类型语言,如JAVA要想实现些功能,你必须告诉它,你这一步该怎么样,如果遇到什么情况又该怎么样。而SQL语言是what类型的,你直接告诉它你要什么,它就会给你返回值。

SQL语言分哪三类?

DML数据库操作语言,它约占平时操作的80%,是对已有数据进行查询、修改、删除的操作(其中查询又占它的80%),是站在使用者的角度。

DDL数据库定义语言,占15%,,建立表、建立库、建立视图(建立时就需要定义结构,所以建立也叫定义),站在建设者的角度(项目经理建表就是项目经理的角度)

DCL数据库控制语言,占5%,控制数据库的权限,监视你有没有操作这个数据库的权限。当前用户有权查看哪些库,无权查看哪些,站在管理员的角度。

insert操作

行是数据库中最原子的单位,任何操作都是针对行的,即使是一列,或是多列也是基于对哪行的哪列进行操作。

可以插入指定列

也可以插入全部列

但是列和值一定要对应,不想添加的值可以不写,它会以NULL来填充

一张表建立后表结构是固定的,你可以插入全部列,也可以插入部分列。

语法:插入到哪张表,要插入哪几列,这几列都插入什么内容 (这里不用where id,如果你插入时没有指定插入的id,那么会自动递增,如果指定的id已经存在,会报错)

insert into user (id,name,age) values (3,’lilei’,18);

如果想给所有列都添加值,可以把前面括号的列名省略

insert into user values(5,’Lucy’,16);

查看表结构的语句:desc user;

update操作

语法:更新哪张表,修改成什么,更改哪条数据

例一 update user set age=16 where name=’Lucy’; 更新修改的条件不一定非得是id,可以是name或其它

例二 update user set,age=’28’ where schoolcode=’15’;

非常严重的错误写法,没写要改哪条:

update user set age = 18; 这样写整个表的age都被改成了18,工作中要这样写,啥也别说,赶紧跑路吧。

*Oracle和MySQL等数据库一般可以设置新手模式,不写where条件不允许提交,以防数据丢失。

delete操作

在关系型数据库中,一行是最原子的单位,要删除只能删除一整行,如果只删除一个字段,那是修改,得用update,把你要删除的那行set成Null

所以在delete语法中不用写你删除的字段,因为一删就是一行,删除语句相对来说最简单。

语法:删除哪张表,的哪一行数据。

delete from user where id=9;

严重错误,忘记写条件!!

delete from user; 会把整个user表的数据都删光,删完接着跑路。。

select操作(占DML数据库操作语言的80%,也是最难的部分,要靠数据查询模型)

最简单的查询操作是select * from user; 但现实工作中不能用*,几条语句还好,现在工程当中都是几百万条数据,用*来查询,瞬间就把内存挤爆了,简直是胡闹,应该用哪条数据查哪条,只会select * from 的人,工资水平也就3K了。

语法:要查什么(哪几列),哪张表,第几行记录

select * from user where id=9;

查询数据的时候,你可以查询它的多行

select * from user where id=3;

select * from user where id>=3;

你还可以查它的哪几列

select name,age from user where id>=5;

查一列

select name from user where id=5;

数据库的操作都是对列内容进行操作,然后指定是对哪一行的列进行操作!

我们可以沿途用镜头记录彼此的笑脸,和属于我们的风景。

CodingAlarm的专栏

相关文章:

你感兴趣的文章:

标签云: