CREATE TABLE `user`( `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, /**INT表示数字,在括号里设置一下最大的位数,NOT NULL表示不能为空,AUTO_INCREMENT表示字段的值是自动增加的,就是添加的第一条记录ID是1,第二条是2,PRIMARY KEY将这个栏目设置为主键,主键一般是项目里的ID字段,值是唯一的,这样就可以通过唯一的值,就可以获取表格里指定的记录。**/ `name` VARCHAR(255) NOT NULL UNIQUE KEY /**VARCHAR表示可以存储字符串类型的值,最大长度为255,UNIQUE KEY表示字段的值在数据表格里必须是唯一的,不能让用户拥有同样的用户名**/ `password` VARCHAR(255) NOT NULL );
处理数据 SQL
插入记录 INSERT,调取数据 SELECT,更新数据 UPDATE,删除数据 DELETE
插入:
1 2 3
INSERT INTO `post` (`title`,`content`) VALUES ('关山月','明月出天山,苍茫云海间'), ('望岳','会当凌绝顶,一览众山小');
调取:
1 2 3 4 5 6 7
SELECT * FROM `post`; //调取全部 SELECT * FROM `post` LIMIT 1; //调取一条 SELECT * FROM `post` LIMIT 1 OFFSET 1; //调取第二条 SELECT `id`,`title` FROM `post`; //调取id和title字段 SELECT `id`,`title` FROM `post` WHERE `id` = 2; //WHERE筛选,调取id为2的记录 SELECT `id`,`title` FROM `post` ORDER BY `id` DESC; //ORDER BY表示设置排序的标准 DESC表示降序 SELECT `id`,`title` FROM `post` ORDER BY `id` ASC; //ORDER BY表示设置排序的标准 DESC表示升序
更新:
1 2 3
UPDATE `post` SET `content` = '一道残阳铺水中,半江瑟瑟半江红' WHERE `id` = 3; //选择id为3的记录
删除:
1 2
DELETE FROM `post` WHERE `id`= 4; //删除id为4的记录
数据关系
用户发布了一个内容,我们除了要存储内容本身,还得记录内容的作者是谁,创建两张数据表,一张存储用户账户的数据,一张存储用户发布的内容,在两张数据表之间建立一种关系,通过这种关系将两张数据表拼接在一起,利用这种关系去调取用户发布的内容列表,或者调取作者相关的信息。举例,在用户发布内容的表里添加一个存储用户 id 的栏目,保存用户发布内容的同时,记录一下用户在用户表里对应的 id 字段的值,这样通过用户的 id,就可以把两张表拼接在一起。
建立关系
1 2 3 4 5 6 7
ALTER TABLE `post` ADD FOREIGN KEY(`userID`) REFERENCES `user`(`id`) ON DELETE NO ACTION // 设置删除动作,没有动作 ON UPDATE NO ACTION // 设置更新动作,没有动作