最近都没有课,昨天的数学考试虽然考得不好,甚至有挂科的可能,但是没有了考试就是很宽心。终于可以学习编程了,今天学的是数据库,本来就有数据库的底子,看起来很简单也很快。
数据库的基本单元是表,数据库是一层层表的叠加,组成了整个数据库系统,表之间有自己的连接关系,每张表的存储有自己方式,一个数据库可以使用不同的存储引擎,在mysql数据库中默认的存储引擎是innoDB,innoDB的主要特点是提供事务安全机制;myISAM存储引擎是在Web应用最常用的引擎之一;memory存储引擎不太了解,其实对这些存储引擎认识很浅薄,并不清楚什么时候用什么样的引擎。
对数据库的操作也就是对表的操作,主要学了以下的语法:
1、创建数据库database: create database db_name;
注:数据库用“db_”作为前缀,表用“tb_”作为前缀,可以很清晰的辨识是数据库还是表。每个语句的结束都是以“;”结尾,然后点击ENTER执行。
2、在数据库中创建table:首先要 use db_name;确定是在哪个数据库中操作,新建表:create table tb_name1(id int(10) primary key auto_increment ,name varchar(25) default 0,deptid int(20) ,salary float
constraint 'fk-dept' foreign key ('deptid') conference tb_name2('id')
);
创建表的时候为tb_name1的deptid设置外键约束,关联tb_name2的id
3、删除外键约束:alter table tb_name1 drop foreign key fk-dept;
注:外键约束的主表无法被删除,只有删除foreign key 才能删除主表
4、删除表:drop table tb_name2;
修改表名:alter table tb_name2 rename tb_name_new;
添加字段:alter table tb_name2 add fieldname1 first/after fieldname_exist;默认是排在最后
修改字段名:alert table tb_name2 change/modify fieldname1 fieldname2 newtype(新的数据类型);
primary key 主键标识符
auto_increment 主码属性值自增
查看表的语法:
show create table tb_name;
该语法结果是显示 表的属性信息,例如表的字段,字段类型,主键,外键约束,还有存储引擎的类型,(修改存储引擎:alter table tb_name engine=new_enginename).
describe/desc tb_name;
以表的形式描述各个字段的属性,
select *from tb_name;
具体查询表中所有的数据,并显示。