传智播客PHP培训韩忠康PHP视频教程MysqlPPT_第1页
传智播客PHP培训韩忠康PHP视频教程MysqlPPT_第2页
传智播客PHP培训韩忠康PHP视频教程MysqlPPT_第3页
传智播客PHP培训韩忠康PHP视频教程MysqlPPT_第4页
传智播客PHP培训韩忠康PHP视频教程MysqlPPT_第5页
已阅读5页,还剩90页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 数据库数据库-MySQL-MySQL韩忠康韩忠康高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 目标l如何使用MySQL数据库l如何设计数据库高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 什么是数据库?高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 为什么是MySQL?l常用的数据库:高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 关系型数据库l实体结构+实体联系高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播

2、客教育 关系型数据(RDBMS)的常用术语l数据库l表l行l列l记录l字段lSQL高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 MySQL架构lC/S CLIENT/SERVER,客户端/服务器高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 管理MySQL服务器l作为Windows服务管理,服务(services.msc)lNet start MySQLlNet stop MySQLl直接运行mysqld服务器程序高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 操作MySQLl通过MySQL客户端,操作MySQLlMys

3、ql(mysql.exe) hlocalhost P3306 uroot plExit quit ql步骤:l1,连接,认证。l2,客户端发送操作指令到服务器端l3,服务器端处理请求指令l4,服务器端将处理结果返回给浏览器l5,客户端显示得到的结果高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 指令-SQL结构化查询语言lSQL=DDL,DML(DQL+DML),DCL高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之数据库操作语言l创建数据库Create database if not exists 数据库名 数据库选项 数据库名:可以是

4、任意字符(目录可以创建成功),但特殊的字符需要使用反引号包裹。标识符的大小写区别于操作系统的大小写特征。If not exists 表示在数据库不存在时创建。数据库选项中,可以设定数据库字符集(character set utf8)和校对集(collate utf8_general_ci)。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之数据库操作语言l查询已经存在的数据库:Show databases like patternLike pattern 指的是显示符合哪些命名规则的。不存在指的是所有的数据库。l查询创建数据库的语句:lShow create da

5、tabase db_name;高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之数据库操作语言l删除数据库lDrop database if exists db_name;lIf exists 表示数据库存在才删除。l当删除一个数据库时,同时删除该数据库相关的目录及其目录内容。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之数据库操作语言l更新数据库选项信息lalter Database db_name 更新的表选项l(表选项与定义时是一致的)高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l创

6、建表:lCreate table if not exists tbl_name (列定义) 表选项 lCreate table if not exists tbl_name like old_tbl_name; lCreate table if not exists tbl_name select 语句; l每当创建一个表,会在数据目录创建对应的文件保存表信息。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l列定义:l列名 类型 是否为空 Default 默认值 是否为自动增长 是否为主索引或唯一索引 comment 注释 引用定义l类型指的是 当前列所

7、保存数据的类型。(简单的 int 整型,varchar字符串类型,需要指定最大长度)l每个列定义使用逗号分隔。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l表选项,常用的表选项l表引擎:engine|type=引擎l表字符集与校对集 charset set=字符集 collate=校对集l注释 comment=注释高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l查询表:l查询数据库中存在的数据表lShow tables from db_name like pattern; 如果没有数据库名,则采用当前数据库,如果

8、没有like则获得所有表。l查询当前表的定义语句:lShow create table tbl_name;l查看当前表的列结构:lDesc|describe tbl_name;(show columns from tbl_name);高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l删除表lDrop table if exists tbl_name;l注意,可以同时删除多个表名,表名之间使用逗号分割。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l更新表l重命名,rename table tbl_name to ne

9、w_tbl_name; 可以同时针对多个表进行重命名,甚至可以跨数据库。l更新表结构,alter table。可以提供对表选项和列定义的修改。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l更新表结构表选项管理l与新建表格一致对表选项重新设置。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL之表操作l更新表结构列定义管理l增加列:Alter table tbl_name add column_definition。可以同时增加多个列,使用括号括起来多个列的定义。l删除列:alter table tbl_name drop c

10、olumn_name; l修改已有列定义:alter table tbl_name change old_column new_column_definition;或者Alter table tbl_name modify column_definition。其中change可以重命名列高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 简单的数据操作DMLl增加数据:lInsert into tbl_name (字段列表) values (值列表);l查询数据:lSelect 字段列表 from tbl_name 检索条件;l删除数据:lDelete from tbl_n

11、ame 删除条件;l更新数据:lUpdate tbl_name set 字段=值 列表 更新条件高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 字符集&校对集l字符集:是一套字符与字符编码的集合。l字符,用于显示的抽象符号。l编码,计算机都是二进制存储,因此需要将显示符号转换成二进制数才能存储,每个字符所转换成的二进制数,就是字符编码。l常见的字符集&编码:lAscii字符集,GB2312字符集,gbk字符集,latin1字符集,unicode字符集等。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 MySQL字符集lShow character

12、 set; 可以获得MySQL支持的所有字符集。lMySQL可以使用多种字符集保存数据。lMySQL,可以针对字段,表,数据库,服务器进行字符集的设置,还可以设定连接字符集(客户端与服务器端交互时)高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 服务器字符集l数据字符集确定:高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 连接字符集l连接字符集由以下三个部分组成:高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 校对规则l指的是,当前字符集内,字符之间的比较关系。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智

13、播客教育 列类型高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 数值型-整数类型类型类型字节字节最小值(有符号最小值(有符号/无符号)无符号)最大值(有符号最大值(有符号/无符号)无符号)TINYINT1-128/0127/255SMALLINT2-32768/032767/65535MEDIUMINT3-8388608/08388607/16777215INT/INTEGE4-2147483648/02147483647/4294967295BIGINT8-9223372036854775808/09223372036854775807/184467440737095

14、51615l可使用unsigned控制是否有正负l可以使用zerofill来进行前导零填充l也存在 布尔bool类型,但是就是tinyint(1)的别名高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 数值型-小数类型类型类型存储空间(字节)存储空间(字节) 最小值(理论)最小值(理论)最大值(理论)最大值(理论)FLOAT4-3.402823466E+383.402823466E+38DOUBLE8-1.7976931348623157E+3081.7976931348623157E+308DECIMAL变长,大致是每9个数字,采用4个字节存储。整数和分数分开计算M,最

15、大是65D,最大是30默认是10,2-(65个9)(+65个9)可以利用M,D控制数值范围;可以无符号;可以zerofill;可以使用科学计数法高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 日期时间类型类型类型显示格式显示格式取值取值存储存储空间空间零值零值DATETIMEYYYY-MM-DD HH:MM:SS1000-01-01 00:00:00到9999-12-31 23:59:5980000-00-00 00:00:00TIMESTAMPYYYY-MM-DD HH:MM:SS是1970-01-01 00:00:00到2038-01-19 03:14:074000

16、0-00-00 00:00:00 DATEYYYY-MM-DD1000-01-01到9999-12-3130000-00-00TIMEHH:MM:SS-838:59:59到838:59:59300:00:00YEARYYYY1901到215510000高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 字符串类型类型类型最大长度最大长度备注备注char255Char(M),M字符数varchar65535,但需要1-2个保存信息,同时由于记录的限制,因此最大为65532编码不同字符数不同:Gbk=32767Utf8=21845tinyText,text,mediumText

17、,longtextL + n。L为最大长度28+1, 216+2, 224+3, 232+4定义时,通常不用指定长度,可以自己计算。enum1、2。枚举选项量(65535)内部存储是整型表示。字段值只能是某一个Set1、2、3、4、8。元素数量:64Binary,varbinary,blobBinary(char),varbinary(varchar),blob(text) 做类比二进制数据(字节而非字符)高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列类型-如何选择l参考原因:高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 定义列属性l列属性

18、,列约束高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列属性-NULLlNull,表示没有值。与任何数据不同。表示什么都没有。lNull | not null可以规定当前列,是否可以为null。lNull的操作:l插入值null。l判断null,需要使用 is null or is not null来判断,不能直接比较=null高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列属性-defaultlDEFAULT子句用于为列指定一个默认,当该字段不存在值时,会被启用。l默认值必须为一个常数,不能为一个函数或一个表达式l可以不存在default,

19、但是mysql会判断:l如果该列可以为空,则默认值为null;如果不可以,则不设置默认值。高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列属性-主键|唯一索引高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列属性-自动增长lAuto_increment,为新行生成唯一标识高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 列属性-注释高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 实体之间的关系高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 实体之间的关系l实现高级软件人才实作

20、培训专家高级软件人才实作培训专家! !北京传智播客教育 外键约束lForeign key高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 存储引擎高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 范式-1NFl属性不可再分,字段保证原子性讲师讲师性别性别班级班级教室教室代课时间代课时间代课时间(开始,结束)代课时间(开始,结束)韩忠康Malephp033110230天2013-03-31,2013-05-05韩忠康Malephp022810630天2013-02-28,2013-03-30韩顺平malePhp022810615天2013-03-31,

21、2013-05-05讲师讲师性别性别班级班级教室教室代课时间代课时间开始开始结束结束韩忠康Malephp033110230天2013-03-312013-05-05韩忠康Malephp022810630天2013-02-282013-03-30韩顺平malePhp022810615天2013-03-312013-04-20高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 范式-2NFl不能出现部分依赖,增加单列关键字讲师讲师P性别性别班级班级P教室教室代课时间代课时间开始开始结束结束韩忠康Malephp033110230天2013-03-312013-05-05韩忠康Ma

22、lephp022810630天2013-02-282013-03-30韩顺平malePhp022810615天2013-03-312013-04-20IDP讲师讲师性别性别班级班级教室教室代课时间代课时间开始开始结束结束1韩忠康Malephp033110230天2013-03-312013-05-052韩忠康Malephp022810630天2013-02-282013-03-303韩顺平malephp022810615天2013-03-312013-04-20高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 范式-3NFl不能出现传递依赖IDP讲师讲师性别性别班级班级教

23、室教室代课时间代课时间开始开始结束结束1韩忠康Malephp033110230天2013-03-312013-05-052韩忠康Malephp022810630天2013-02-282013-03-303韩顺平malephp022810615天2013-03-312013-04-20IDP讲师讲师班级班级代课代课时间时间开始开始结束结束1韩忠康php033130天2013-03-312013-05-052韩忠康php022830天2013-02-282013-03-303韩顺平php022815天2013-03-312013-04-20讲师讲师性别性别韩忠康male韩顺平male班级班级教室教

24、室Php0228106Php0331102高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 常用SQL-获取数据高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-select_expr,tbl_name高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 select-where高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-group byId教师教师班级班级天数天数1韩信0331252李世民0228223韩信0228204韩非子0228155李世民033122如果需要查询某个教

25、室,或者某个班级的代课情况可以按照教师或班级分组,右图中,按教师分组高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 聚合(合计)函数lGroup function高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-havingId教师教师班级班级天数天数1韩信0331252李世民0228223韩信0228204韩非子0228155李世民033122l按照教师分组后,l如果期望得到代课天数l大于40天的老师l思路就是,先分组计算l老师的代课天数,比较l执行顺序高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Sele

26、ct-order byId教师教师班级班级天数天数1韩信0331252李世民0228225李世民0331223韩信0228204韩非子022815按照代课天数进行降序排序高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-limitId教师教师班级班级天数天数1韩信0331252李世民0228225李世民0331223韩信0228204韩非子022815l我只需要,l天数最多的两个记录l分页的核心技术l就是 limit高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-选项高级软件人才实作培训专家高级软件人才实作培训专家! !

27、北京传智播客教育 Select-union联合高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-subquery子查询高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Subquery-子查询返回值高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Subquery-子查询位置高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-Join连接(连结)查询高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Select-into outfile结果导出高级软件人才实作

28、培训专家高级软件人才实作培训专家! !北京传智播客教育 insert & replace高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Load data infile导入高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Delete删除高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 update高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 备份/还原高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 视图高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 事务高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 锁高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 index高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 索引高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 Explain高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL编程高级软件人才实作培训专家高级软件人才实作培训专家! !北京传智播客教育 SQL编程-变量高级软件人才实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论