- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Head First SQL
数据和表 保存所有东西的地方
数据库是保存表和其他SQL结构的容器。
数据库内的信息组成表。列是存储在表中的一块数据,行是一组能够描述某个事物的列的集合。列和行构成了表。
数据库包含关联数据。
CREATE DATABASE database_name;
USE database_name;
CREATE TABLE table_name(
column_name type[length] [NOT NULL] [DEFAULT] [AUTO_INCREMENT]…,
……
[, PRIMARY KEY (COLUMNNAME)]);
AUTO_INCREMENT会忽略insert时指定的null。
DESC table_name;
DROP TABLE table_name;
INSERT INTO table_name(column_name,…) VALUES(…);
NULL不等于0,不是空字符串变量。两个NULL变量也不能比较。
SELECT 语句 取得精美包装里的数据
SELECT *
用’,\转义
= = = IS NULL BETWEEN LIKE(% _) AND OR NOT IN
DELETE和UPDATE 改变是件好事
DELETE FROM *** WHERE ***
UPDATE *** SET ***=***,***=***,… WHERE ***;
聪明的表设计 为什么要规范化
设计表:
挑出事物,挑出希望描述的某样事物
列出一份关于那样事物的信息列表,这些信息都是使用表时的必要信息
使用信息列表,把关于那样事物的综合信息拆分成小块信息,以便用于组织表
具有原子性数据的列中不会有多个类型相同的值
具有原子性数据的列中不会有多个存储同类数据的列
主键用于独一无二地识别出每条记录
主键不可以为NULL
插入新纪录时必须指定主键值
主键必须简洁
主键值不可以被修改
第一范式:
每个数据行必须包含具有原子性的值
每个数据行必须具有主键
SHOW CREATE TABLE ***;
ALTER
ALTER TABLE ** ADD COLUMN ** TYPE [NOT NULL] [AUTO_INCREMENT][POSITION] …,…
ALTER TABLE ** ADD PRIMARY KEY (**)
(多个个ADD可以用逗号隔开,连在一起。上面第二行可自动填充主键。POSITION值为FIRST……)
ALTER 改写历史
ALTER中 POSITION可取的值:
FIRST, SECOND, THIRD, …, LAST, AFTER COLUMN_NAME, BEFORE COLUMN_NAME
ALTER 选项
CHANGE 可同时改变现有列的名称和数据类型(有遗失数据风险)
MODIFY 修改现有列的数据类型或位置(有遗失数据风险)
ADD 在当前表中添加一列,可自选类型
DROP 从表中删除某列(有遗失数据风险)
RENAME 表更名
ALTER TABLE TABLENAME
CHANGE COLUMN OLD_NAME [NEW_NAME] [TYPE] [NOT NULL] […], CHANGE/ADD/…;
ALTER TABLE TABLENAME
MODIFY COLUMN COLUMN_NAME [NEW_TYPE][NEW_POSTION];
ALTER TABLE TABLENAME DROP COLUMN COLUMN_NAME;
ALTER TABLE OLD_TABLE_NAME RENAME TO NEW_TABLE_NAME;
字符串函数(不会改变存储在表中的内容,将修改当成查询结果返回)
RIGHT/LEFT(COLUMN, COUNT) 在列中,从右/左截取COUNT个字符
SUBSTRING_INDEX (COLUMN, ‘SUB’, LOCATION)
在列中,截取第LOCATION个指定字符串前的所有内容
SUBSTRING(COLUMN, START_POSITION, LENGTH) 从指定位置开始截取指定数量字符UPPER/LOWER(COLUMN)
REVERSE (COLUMN)
LTRIM/RTRIM(COLUMN) 清除字符串左侧/右侧的多于空格
LENGTH(COLUMN)SELECT进阶 以新视角看你的数据
CASE 根据条件更新列
UPDATE TABLE_NAME
SET COLUMN =
CASE
WHEN ***
THEN **
WHEN ***
THEN ***
…
ELSE ***
END;
ORDER BY ASC
您可能关注的文档
最近下载
- 妇产科-自然流产教案.docx VIP
- 2025年秋新教科版三年级上册科学全册精编教案教学设计(新教材).docx
- 促进母乳喂养成功课件.pptx VIP
- 2025秋教科版(2024)科学二年级上册第一单元《我们的家》教学设计.docx VIP
- 英语口语8000句(最全版本).pdf
- 医院耳穴学习班国标考核试题.pdf
- 《活动挂物架的制作--定位和钻孔》ppt劳技教学课件.pptx VIP
- 2025云南怒江州福贡县义务教育教师专项招聘65人笔试模拟试题及答案解析.docx VIP
- 小学综合实践课程标准新版.pdf VIP
- 2025怒江州福贡县义务教育教师专项招聘(65人)笔试备考试题及答案解析.docx VIP
文档评论(0)