传智播客---MySQL数据库安装与常见问题解决和Sql基本的语法

在咱们传智播客学习就是好,老师讲的那些东西一听就懂,讲的真仔细啊,那学习气氛,是集体的气氛。传智播客在业界的口碑很不错的,这不是浪得虚名,是拿自己的付出打拼出来的,这口碑里面有多少得心血汗水在里面,因为学校的每一位领导每一位老师都是在用心去做事去任教,我的命运此次在传智播客改变,是传智播客给力我腾飞的翅膀,让我又能力去蓝天飞翔,而且飞的比谁都高,比谁都远,传智播客的老师们,你们辛苦了!!!!!

开始讲数据库啦,给大家晒晒吧

什么是数据库? 就是一个文件系统,通过标准SQL语言操作文件系统中数据 ---- 用来存放软件系统的数据
Oracle 甲骨文公司,专门数据库厂商他收购了BEA 、SUN、MySQL ------- oracle是收费大型数据库 ,用于任何系统任何平台
MySQL 早期是开源免费数据库产品,LAMP组合 Linux + Apache + MySQL + PHP 完全开源免费
,自从mysql被oracle收购后,从6.0开始出现收费版本
DB2 IBM数据库产品 大型收费数据库 websphere服务器一起使用
SYBASE 中等规模数据库 收费 PowerDesigner 数据库建模工具
SQL Server 微软公司数据库产品 收费中等规模数据库 ,操作系统要求是windows 结合.net 一起使用
Java开发者主要使用 MySQL 、Oracle、DB2 三种数据库
创建数据库 会为每个软件系统创建单独数据库
SQL语句分类 按功能(定义、操纵、控制、查询)分类
DDL 数据定义语言,定义表、库、视图
DML 对数据表记录 增加、修改和删除操作
DCL 授权、事务控制、条件判断
DQL (不是W3C组织 给出分类) 数据表记录查询
MySQL 安装配置:
1.安装
 选择自定义安装
 MySQL Server 默认位置 c:\program files\mysql目录
 Server Data File 数据文件 C:\Documents and Settings\All Users\Application Data\MySQL 目录

 安装后进行mysql配置
 1) 配置mysql 默认字符集
 默认latin1 等价于 ISO-8859-1 改为 utf8
 2) Include Bin Directory in Window Path 将mysql/bin 目录配置环境变量path ---- 勾选
 3) 输入超级管理root 密码

 测试mysql是否安装成功 启动cmd窗口 输入 mysql -u root -p 回车 输入密码 123 ==== 出现 mysql> 安装成功
2.重置root密码
 1) 停止mysql服务器 运行输入services.msc 停止mysql服务
 2) 在cmd下 输入 mysqld --skip-grant-tables 启动服务器 光标不动 (不要关闭该窗口)
 3) 新打开cmd 输入mysql -u root -p 不需要密码
 use mysql;
 update user set password=password('abc') WHERE User='root';
 4) 关闭两个cmd窗口 在任务管理器结束mysqld 进程
 5) 在服务管理页面 重启mysql 服务
 密码修改完成
MySQL 服务器内部存储结果
一个数据库服务器可以创建多个数据库
一个数据库可以创建多张数据表
每张数据表 用来保存 数据记录
use 数据库名;//切换到使用的数据库
desc 表名;查看表结构
 操作数据表
1.创建数据库
(1)语法 : create database 数据库名称 ;
 复杂写法 create database 数据库名称 character set 字符集 collate 比较规则
 create database 数据库名字 ;//创建一个数据库
 create database 数据库名字 character set 字符集;//设置字符集
 create database 数据库名字 character set 字符集 collate 比较方式;
 创建一个名称为mydb1的数据库。 create database mydb1;;  (创建数据库采用数据库服务器默认字符集 )
 创建一个使用utf8字符集的mydb2数据库。 create database mydb2 character set utf8;
 创建一个使用utf8字符集,并带校对规则的mydb3数据库。create database mydb3 character set utf8 collate utf8_bin;
(2)查询数据库
 show databases; ----- 查看所有数据库
 show create database 数据库名; ------ 查看数据编码集
(3)删除数据库
 语法 :drop database 数据库名称;
(4)修改数据库编码集
 语法:alter database 数据库名称 character set 字符集 collate 比较规则;
 修改mydb2字符集为gbk;  alter database mydb2 character set gbk;
 切换当前使用数据库: use 数据库名称
 查看当前正在使用数据库: select database();
2.创建数据库表
 MySQL 常用数据类型
 java 中 char String   -----  mysql 中字符串型 char varchar* char是定长 varchar是变长
 java 中 byte short int long float double ----- mysql 中数值类型 TINYINT 、SMALLINT、INT、BIGINT、FLOAT、DOUBLE
 java 中 boolean ---- mysql 逻辑性 bit 存放一位数值 0 或者1
 java 中 Date ----- mysql 日期类型 date (只有日期) time(只有时间) datetime(日期时间都有) timestamp(日期时间都有 )*
 datetime和timestamp 表现形式上完全相同,区别就在于timestamp 在数据库可以自定更新(当前时间)
 java中 大数据类型 inputStream 二进制文件 Reader 文本文件 ------- mysql 大数据类型 blob(存放大二进制数据)
 text(存放大的文本文件) * tinyblob tinytext 255字节 blob text 64KB mediumblob mediumtext 16MB  longblob longtext 4GB
 1、数据表的创建
  语法:create table 表名(列名 类型(长度),列名 类型(长度)... );
  一个数据表 可以存在很多列,每列具有类型和长度
  * 创建表时没有指定 字符集,将采用数据库默认字符集
  * 创建表之前 必须使用use db 语法指定操作数据库
  一个java类 对应数据库中一张数据表,一个java对象 对应数据表中一条数据记录 
 2.查看表:
  desc 表名;
  创建day12 数据库 create database day12;
  切换到day12 数据库 use day12;
 3.数据表结构修改
  1) 增加列 语法: alter table 表名 add 列名 类型(长度) 约束;
  2) 修改现有列类型、长度和约束 语法:alter table 表名 modify 列名 类型(长度) 约束;
  3) 修改现有列名称 语法:alter table 表名 change 旧列名 新列名 类型(长度) 约束;
  4) 删除现有列 语法:alter table 表名 drop 列名 ;
  5) 修改表名 rename table 旧表名 to 新表名;
  6)删除表 drop table 表名;
  * 修改表的字符集:alter table student character set utf8;
 4.数据表删除
  语法:drop table 表名;
 约束:
 主键约束:primary key   信息记录某个字段可以唯一区分其他信息记录,这个字段就可以是主键 (唯一 非空) 如果主键约束类型为 数值型 int bigint ,添加auto_increment自动增长
 唯一约束:unique 该字段的值不允许重复 * 一张表中可以有很多个唯一约束,只能有一个(两个)作为主键约束
 非空约束:not null 非空约束 not null :该字段的值不能为空
 列子:创建一个表
  创建一个表:
 create table employee (
    id int,
    name varchar(20),
    gender varchar(20),
    birthday date,
    entry_date date,
    job varchar(30),
    salary double,
    resume longtext
 );
3.往数据库表中添加数据
 1.insert增加数据
  insert into 表名(列名,....) values (值,....);增加数据 注意key 与value类型的对应,
  注意事项
  1) 插入值 类型必须和 列类型匹配
  2) 值长度不能超过 列定义长度
  3) 值的顺序和 列顺序对应
  4) 字符串和日期型值 必须写 单引号
  5) 插入空值 可以写 null
  默认cmd是以gbk存储数据的,而mySql的配置客户端码表是utf-8,服务器就会以utf-8解码,如果指定gbk,那么服务器就会以gbk解码
  存中文数据
  查看系统所有字符集 : show variables like 'character%';
 解决办法:修改客户端字符集为gbk
 MYSQL中共有6个地方字符集 :client connetion result 和客户端相关 、database server system 和服务器端相关
 第一种:
 当前窗口临时修改 set names gbk ;
 * 只对当前窗口有效,关闭后就会失效
 第二种:去mysql目录下修改my.ini配置文件
 [mysql] 修改客户端配置
 [mysqld] 服务器端配置
 修改客户端字符集 [mysql] 字符集为gbk  default-character-set=gbk
 编码;当前窗口才有用,mysql/myini文件中[mysql]客户端配置[mysqld]服务器配置,修改客户端的编码为gbk
 2.delete删除数据
  where的运算符 :
   比较:
    > < <= >= <> =
    between  and  在指定区间的值
    in(set) 显示满足列表中的值 (100,200...)
    like ‘张%’%代表一个或多个任意字符 ‘张_’_代表一个字符
    is null 判断是否为空
   逻辑:
    and 多个条件相同时成立
    or 多个条件任一成立
    not 不成立
  delete from 表名 where如果不加条件删除所有表数据
  如果要删除表中所有数据记录,使用 truncate table 表名; 等价于 delete from 表名;
  试题:如果使用delete删除表中所有记录和使用truncate table 表名 删除表中所有记录 有何不同 ?
  truncate 删除数据,过程先将整个表删除,再重新创建
  delete 删除数据,逐行删除记录
  * truncate 效率要好于 delete
  truncate 属于DDL ,delete 属于DML ======== 事务管理只能对DML 有效 ,被事务管理SQL语句可以回滚到SQL执行前状态
  (也就是别删除的数据还是可以再恢复的)
 删除表中名称为’zhangsan’的记录。 ------ delete from 表名 where name='zhangsan'; 
 删除表中所有记录。----- delete from 表名; (可以事务回滚)
 使用truncate删除表中记录。 ---- truncate table 表名;使用truncate删除表中记录,数据无法在恢复
 3.update更新数据
  update 表名 set 列=value where=条件表达式;如果不加where条件那么修改的是所有列
 4.select查询数据  
  select * form 表名。查看表中所有的的数据
  select 列名,... from 表名;查询指定的列名
  select distinct 列名 from exam; 查询所有列并过滤完全重复的数据
  select 列名,列名+5,列名+5,列名+5 from exam;所有列都加5分,返回
  select 列名 as 别名 from 表名;修改列名为指定别名
  select * from 表名 where 列名 between 条件 and 条件;查询在指定区间的数据
  select * from 表名 where 列名 in(80,90);查询显示满足列表中的值的数据
  select * from 表名 where 列名 like '赵%';'赵_' 代表一个或多个任意字符 ‘张_’_代表一个字符
  select * from 表名 where 列名 is not null;查找指定列名不等于null的数据  is null 代表等于空
  select 列名,列名+列名.. as 别名 from exam; 查询指定列名,并将指定列相加,在起一个别名返回
  select * from 表名 order by 列名 asc|desc ;  ---- asc升序 desc降序 默认asc升序
  select * from exam order by 列名+列名+列名 desc; 从高到低(降序)的顺序输出
4. show databases ;显示所有数据库
 show database();显示当前使用的数据库
 show tables;显示所有表
 show create table 表名;查看键表语句和字符集
 use 数据库名;//切换到使用的数据库
 desc 表名;查看表结构
 quit 退出MySQL

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
.Net精品就业班课程表 : 1、.Net基础加强(10天) 核心技术课程 常用数据结构(List、Dictionary、Array)、多态、常用设计模式、反射、常用.net类库、泛型、IO流、委托事件、正则表达式、XML、反射、GC等。 2、数据库开发及ADO.Net(6天) 核心技术课程 数据库开发基础、Microsoft SQLServer基础、SQL语言基础、索引、事务、SQL语言高级技术(空值处理、聚合与分组、数据分页、Union、日期函数、类型转换函数、流控函数、表连接、子查询、存储过程、触发器)、数据库设计范式、数据库调优。 ADO.Net(行集、数据集、类型化数据集、SQLHelper、SQL注入漏洞防范、数据绑定)。 3、三层架构MIS项目(5天) 查看项目演示 功能点 本项目基于流行的三层架构(DAL+BLL+UI)。 主要功能点:高安全性的用户管理体系、高安全性的异构系统数据导入导出、拼音检索、复合检索、无限级次数据管理、个性化邮件群发、Excel文件导入导出。 技术点 ADO.Net技术应用、SQLServer、MD5安全算法、基于NPOI的Excel文件处理、树状结构数据处理、递归、CodeSmith、代码生成器、三层架构。 项目说明 这是一个用WinForm技术实现的系统,传智播客在开课的半个月就安排一个项目,体现了传智播客“项目驱动学习”的先进教学理念。 4、网页开发与JavaScript(7天) 查看案例演示 核心技术课程 HTML基础加强、css(包含Div+CSS布局)、JavaScript、Dom(事件、window对象、document对象、对话框、定时器、粘贴板、动态Dom、跨浏览器兼容性解决方案、JS压缩和CDN、Internet Explorer Developer Toolbar)、JQuery(JQuery函数、隐式迭代、链式编程、id选择器、tag选择器、CSS选择器、层次选择器、表单选择器、过滤选择器、复合选择器、节点导航、节点操作、样式操作、事件、动画、JQuery Cookie、JQuery Live、JQueryUI)。 课程说明 CSS、JavaScript是ASP.Net开发的基础,把这些掌握好了就能很轻松的学会ASP.Net;Dom是实现网页动态效果的技术,在网站越来越个性化年代,招聘企业对应聘者的Dom水平要求非常高;JQuery是近几年异军突起的JavaScript框架库,几乎成了Web前端开发事实上的标准,大部分企业都是使用JQuery进行Web前端的开发。 学完了这阶段课程,学员将学会开发主流网站的前端效果,比如:焦点图、滚动展示图、网页防复制、网页自定义菜单、WebOS、美女时钟、无刷新评论、评分控件、表格特效、图片悬浮详细信息、微博界面、QQ消息框效果、Div对话框等。 5、ASP.Net开发(12天) 核心技术课程 自己动手写Web服务器(Socket、多线程)、ashx模式Web开发、ViewState、Cookie、Session、Http协议、Web开发基本原则、XSS漏洞防范、Request对象、Response对象、Server对象、虚拟路径、HttpHandler深入、ASP.Net生命周期、WebForm原理、服务端基本控件、WebShell漏洞防范、HTML服务端控件、验证框架、MasterPage、数据绑定控件(ObjectDataSource、列表类绑定控件、GridView、FormView、ListView、Repeater、高效率分页)、CKEditor、Membership、缓存、互联网调优(SEO、HTML压缩、页面静态化、移除ViewState、表单GET化)、URL重写、错误处理、AJAX(XMLHTTP、JQuery AJAX、Json)、全局文件、HttpHandler与HttpModule、IIS配置。 课程说明 由于微软对ASP.Net进行高度封装,因此ASP.Net入门非常简单,开发人员不需要了解HTML、JavaScript、Http协议也可以快速开发出一个Web系统,正因为如此,社会上充斥着大量这样的“拖控件的开发人员”,使得很多Java、PHP等语言的开发人员诋毁ASP.Net开发人员的时候经常会说“你们什么都不懂,就会拖控件”。ASP.Net的快速开发是ASP.Net非常大的一个优点,可以加快开发效率,这是行业的发展趋势,但是局限于这样的“傻瓜化开发方式”的开发人员的竞争力和成长性都是非常有限的,遇到ASP.Net一些高级技术(比如ASP.Net MVC、SEO、网站调优、服务端客户端混合编程、AJAX等)的时候就完全不能胜任。通过上一个阶段的HTML、JavaScript、Dom的学习,学员已经有了很好的HTML、JavaScript基础;在ASP.Net课程的一开始,不是直接教学员怎么拖ASP.Net控件进行快速开发,而是通过ashx的模式开发原始的动态网站,让学员明白“请求—处理—响应模型”、“Http协议、Http无状态”、“c#代码渲染生成浏览器端JavaScript”、“ViewState的作用”、“Session的原理”等这些基本而又重要的原理,从而扫清后面ASP.Net知识学习的基础性障碍。 由于访问量非常大,因此互联网项目的开发对ASP.Net开发人员的要求非常高,所以我们安排了互联网调优、缓存、网站防黑等内容。 ASP.Net中控件数量是非常多的,讲解ASP.Net的教材通常要上千页,让初学者望而生畏,其实ASP.Net大部分控件相似性非常强的,同类型的控件学会了一个那么其他控件也就很容易学会了。比如只要学会了DropDownList,那么RadioButtonList、ListBox、CheckBoxList、BulletedList等几乎不用学就会用;再比如只要学会了ListView,那么Repeater、GridView、FormView等控件也是触类旁通。传智播客认真钻研教学,对知识进行分类、整理、提炼精华,让学员在短时间内掌握ASP.Net技术。 ASP.Net中有一些技术是有局限性的,传智播客根据这些技术在企业中的实际应用情况进行了调整、补充。比如项目中几乎没有在UI层直接访问数据库的,而是采用三层架构,因此我们不讲解UI层直连数据库的控件SQLDataSource,而是把主要精力放在讲解三层架构开发模式。再比如ASP.Net内置的AJAX解决方案UpdatePanel只在部分要求不高的内网项目中才被使用,因此我们在讲解UpdatePanel的使用和原理之外,把更多的时间放在讲解企业中用的最多的JQuery AJAX解决方案上。 6、B/S系统项目(7天) 项目说明 1、网上图书商城。这是一个典型的B2C网上商城,使用经典的复杂三层架构(工厂模式)进行开发。涉及图书管理、搜索、订单管理、导航管理等核心模块。在讲解ASP.Net基础后安排这样一个B2C网上商城系统,让学员在实际项目中将学到的知识学以致用。 2、办公自动化OA系统。这是一个典型的基于ASP.Net技术的OA协同办公项目,包含了权限管理、公告管理、文档管理、工作流、论坛管理、新闻模块管理、人员管理等典型的OA系统模块。 3、数据采集和邮件群发。这是一个基于多线程的邮件营销平台,核心技术包括网络爬虫、多线程、HTML解析、邮件发送、生产者消费者模式等。 注:以上三个案例,上课时会根据每个班的课堂反馈选择其中一个案例予以讲解学习。 7、如鹏网项目(9天) 查看项目演示 功能点 站内搜索、栏目管理、视频播放(完全模仿优酷视频页面)、焦点图、静态页面生成(新浪、搜狐等大型网站普遍采用的技术)、文章管理、无刷新评论、评论的无刷新分页、敏感词过滤、用户管理、友情链接管理、缓存管理、广告位管理、RSS输出、水印设置、无刷新上传图片、搜索引擎优化设置、数据备份恢复、伪静态设置、网上商城、订单管理、在线支付(支持支付宝、财付通、块钱等第三方支付平台)、网站调优(数据库优化、缓存、静态页、CSS Spirit、js压缩)。 技术点 搜索引擎技术:Lucene.Net、多线程开发、爬虫技术、网页分析、正则表达式、Log4Net日志框架、Quartz.Net定时作业调度。 大型互联网开发技术:代码生成、网页静态化、基于JQuery的Web2.0页面开发、AJAX、SEO、网站调优、采集器、RSS/XML、网站防黑(防XSS攻击、防注入漏洞攻击、防CC攻击、防挂马、防盗链、敏感词过滤、广告帖智能过滤)、IIS管理与调优、流量分析、第三方脚本嵌入(广告、统计代码、内容联盟等)、图片服务器分离。 项目说明 如鹏网项目是已经上线三年的网站,日访问量最高20000人次,网址www.rupeng.com。本系统旧版本基于PHP、J2EE技术,由如鹏网开发者亲手操刀用.net重写新版本。系统分为前台Web界面、后台管理界面、站内搜索、监控客户端四个子系统。 大型互联网站由于访问量非常大,因此不是那些单纯用ASP.Net控件拖拽开发的开发人员能够开发的,也不是闭门造车能够造出来的,必须是在实际项目中经过无数访问者的使用、反馈、修改才能做出来的。搜房网、汽车之家等大型网站中用到的网站静态化、图片服务器分离、高性能缓存、HTML/JS压缩、CDN、CSS Sprite、负载均衡、Memcached、镜像服务器同步等问题不是那些随手写出来的所谓在线商城、电子商务系统所所能够涉及到的。 这个项目完全按照高访问量互联网站进行设计,通过这个项目,学员不仅可以在实战中巩固对前面学习的ASP.Net、ADO.Net、WinForm等知识的掌握,还可以掌握网站防黑、缓存、SEO、静态化、搜索引擎技术、AJAX等大型互联网开发中涉及到的技术。 8、.Net新技术(Windows Phone、ASP.Net MVC)(6天) 项目说明 未来是移动互联网的时代,未来将是Windows Phone、Android、iphone三足鼎立的时代,掌握了移动开发的技能的人是就业市场的抢手货。微软推出的Windows Phone平台是微软在移动互联网时代的一个重量级产品,微软对于WindowsPhone7的推广力度非常大,因此很多公司也开始进行Windows Phone7产品的研发,2011年下半年Windows Phone7开发人员的需求将会出现井喷,为了帮助学员掌握移动3G开发技术,传智播客.Net班加入了Windows Phone开发课程,采用传智播客独创的WP7Simulator教学平台,学员可以做出一个基于云计算架构的LBS系统。点击查看传智播客独创WP7Simulator教学平台。 ASP.Net MVC是微软推出的区别于ASP.Net WebForm的Web开发新技术,由于ASP.Net MVC解决了ASP.Net WebForm的很多缺点,非常适合大型、中型项目的开发,一经推出就受到了.Net开发社区的追捧,很多.Net开发人员的职位要求中都提到了MVC,可见掌握ASP.Net MVC技术必将提升自己就业的砝码。 9、就业指导(2天) 项目说明 总结以往所学知识,讲解《传智播客.Net面试、笔试宝典》,介绍简历、笔试、面试等所需的知识和技巧。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值