Mysql数据库操作基础剖析课件

上传人:29 文档编号:221641510 上传时间:2023-07-06 格式:PPT 页数:55 大小:365.50KB
收藏 版权申诉 举报 下载
Mysql数据库操作基础剖析课件_第1页
第1页 / 共55页
Mysql数据库操作基础剖析课件_第2页
第2页 / 共55页
Mysql数据库操作基础剖析课件_第3页
第3页 / 共55页
资源描述:

《Mysql数据库操作基础剖析课件》由会员分享,可在线阅读,更多相关《Mysql数据库操作基础剖析课件(55页珍藏版)》请在装配图网上搜索。

1、一、Mysql概述特点:特点:MySQL是一款从Linux系统上移植过来的优秀的开源软件,适应于所有的平台(在网上可以任意下载,并且可以查看到它的源文件,进行必要的修改)是一个真正的多用户、多线程SQL数据库服务器,是比较流行的关系数据库,把数据存储在表格中,使用标准的结构化查询语言SQL进行访问数据库。相对其他数据库而言,可以用16个字来概括MySQL,“短小精悍、短小精悍、功能齐全、运行极快、完全免费功能齐全、运行极快、完全免费”使用上也越来越人性化,有多款图形界面的支持,操作越来越简单。Mysql在中小型企业网、门户网的应用中占据了相当大的优势,甚至在大型项目的开发中,MySQL也能应对

2、自如。在MySQL中,不仅支持SQL标准,而且还对其进行了扩展,使得它能够支持更为强大的功能。下表给出SQL标准的关键字及其功能:下表介绍MySQL支持的SQL语句:mysql中有三种注释方式:l以“#”号开头直到行尾的所有内容都是注释。2以“-”号开头直到行尾的所有内容都是注释,注意在注意在“-”后面还有一个空格。后面还有一个空格。3以以“/*”开始,以开始,以“*/”结束的所有内结束的所有内容容都是注释,可以对多行进行注释。二、如何启动、关闭mysql服务器启动、停止MySQL服务器的方法有两种:系统服务器系统服务器和命令提示符命令提示符(dos)在命令提示符下启动在命令提示符下启动MyS

3、QL:进入DOS窗口,在命令提示符下输入如下指令:netstartMySQL(启动启动)、netstopMySQL(停止停止)第一种方法第一种方法直接启动mysql,在启动后的窗口中输入密码即可如何连接如何连接MySQL服务器服务器第二种方法:采用命令第二种方法:采用命令首先设置环境变量:在命令提示符中设置或者在windows的path中设置其次启动mysql(可省略)采用这种方式就不需要每次都在启动和连接数据库之前在命令行窗口中执行命令设置path环境变量了最后连接最后连接MYSQL格式:格式:mysql-h主机地址主机地址-u用户名用户名-p用户密码用户密码连接远程机器:连接远程机器:my

4、sql-h10.4.3.188-uptsdb-p等价写法等价写法mysql-host=10.4.3.188-user=ptsdb-password连接本地机器:连接本地机器:mysql-uroot-p等价写法等价写法mysql-user=root-p(注(注:u与与root可以不用加空格,其它也一样)可以不用加空格,其它也一样)下面对以上参数进行解释说明。下面对以上参数进行解释说明。-u:用户名。:用户名。-h:MySQL所在服务器地址。所在服务器地址。-p:用户密码。:用户密码。输入完命令语句后,按下输入完命令语句后,按下Enter键就进入到了键就进入到了MySQL数据库中。数据库中。第三种

5、第三种先先打开命令提示符,切换到C:ProgramFilesMySQLMySQLServer5.0bin(Mysql的与运行目录)进行连接注意注意用户在连接数据库时,如果只输入mysql也可以进入,但是这样用的是一个匿名用户登陆,虽然无需用户名、密码,就可以直接登录,但是非常不安全。最好使用文中提到的连接格式,养成良好的书写习惯。如果密码在“-p”后直接给出,那么密码就是明文显示出来的,例如:MySQLurooth127.0.0.1p123456为了安全,我们可以输入p后就按Enter键,然后在一下行中再输入密码,这样输入的就是密文密码。三、三、修改连接修改连接mysql的密码的密码1.通过修

6、改通过修改MYSQL数据库中数据库中MYSQL库的库的USER表表用普通的UPDATE语句修改mysql状态下输入状态下输入usemysqlupdateusersetpassword=password(新密码新密码)whereuser=root;回显回显QueryOK,0rowsaffected(0.00sec)Rowsmatched:2Changed:0Warnings:0mysql状态下输入状态下输入FLUSHPRIVILEGES;回显回显QueryOK,0rowsaffected(0.00sec)mysql状态下输入状态下输入quit或或exit退出退出sql注意:注意:每个命令后都要加

7、上一个分号每个命令后都要加上一个分号;mysql才开始执行该行命令才开始执行该行命令而而FLUSHPRIVILEGES指令会让已载入记忆体的指令会让已载入记忆体的mysql系统资料库更新系统资料库更新重起重起mysql.在更新在更新root密码后,日后要与密码后,日后要与MySQL连线的方法为:连线的方法为:mysql-uroot-p新密码新密码2.在命令行中使用如下命令(在命令行中使用如下命令(注意不是注意不是mysql提示符下提示符下)C:ProgramFilesMySQLMySQLServer5.0binmysqladmin-uroot-ppassword123456接下来会提示接下来会

8、提示Enterpassword:如果你是第一次登陆还没修改过密码,直接回车就可如果你是第一次登陆还没修改过密码,直接回车就可以了(以前初始密码是以了(以前初始密码是root的话输入的话输入root)。)。这是这是root密码就修改成了密码就修改成了123456。密码不要加引号,否则密码就修改成了密码不要加引号,否则密码就修改成了123456这个这个8位字符,而不是位字符,而不是6位的了。位的了。3.忘记忘记MYSQL密码的解决方案密码的解决方案1、netstopmysql停止停止mysql服务服务2、执行、执行mysqld-nt-skip-grant-tables这样启动,不需要密码就可以进入

9、这样启动,不需要密码就可以进入MySQL了了3、此时打开一个新的命令窗口,执行、此时打开一个新的命令窗口,执行mysql,进入进入MySQL4、修改、修改root密码密码usemysqlupdateusersetpassword=password(NEWPASSWORD)whereuser=root;flushprivileges;5、在任务管理器里、在任务管理器里kill掉掉mysqld-nt进程进程6、netstartmysql重启重启MySQL即可即可数数值类值类型型 (例如例如:Float,Int,DoubleFloat,Int,Double 等等)日期和日期和时间类时间类型型 (例如

10、例如:Date,TimeDate,Time,TIMESTAMP等等)StringString类类型型 (CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM)四、四、MysqlMysql常用的数据类型:常用的数据类型:数值类型Float(同义real)小(单精度)浮点数。允许的值是-3.402823466E+38到-1.175494351E-38、0和1.175494351E-38到3.402823466E+38。Double(同义DOUBLEPRECISION)普通大小(双精度)浮点数。允许的值是-1.7976931348623157E+308到-2.22

11、50738585072014E-308、0和2.2250738585072014E-308到1.7976931348623157E+308日期和时间类型表示时间值的DATE和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。每个时间类型有一个有效值范围和一个“零”值,当指定不合法的MySQL不能表示的值时使用“零”值。TIMESTAMP类型有专有的自动更新特性日期和时间类型-DateDATE日期。支持的范围为1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式显示DATE值,但允许使用字符串或数字为DATE列分配值。日期和时间类型-Dat

12、etimeDATETIME日期和时间的组合。支持的范围是1000-01-0100:00:00到9999-12-3123:59:59。MySQL以YYYY-MM-DDHH:MM:SS格式显示DATETIME值,但允许使用字符串或数字为DATETIME列分配值。日期和时间类型-TIMESTAMPTIMESTAMP(Mysql4.1版本以下)时间戳。范围是1970-01-0100:00:00到2037年。TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间。如果你不分配一个值,表中的第一个TIMESTAMP列自动设置为最近操作的日期和时间。也可以通过分配一个NULL值,将TIMES

13、TAMP列设置为当前的日期和时间。TIMESTAMP值返回后显示为YYYY-MM-DDHH:MM:SS格式的字符串,显示宽度固定为19个字符日期和时间类型-TimeTIME时间。范围是-838:59:59到838:59:59。MySQL以HH:MM:SS格式显示TIME值,但允许使用字符串或数字为TIME列分配值。日期和时间类型下面的表显示了各类“零”值的格式。请注意如果启用NO_ZERO_DATESQL模式,使用这些值会产生警告。String类型-CHAR和VARCHAR类型CHAR和和VARCHAR类型声明的长度表示你类型声明的长度表示你想要保存的最大字符数。例如,想要保存的最大字符数。例

14、如,CHAR(30)可以占用可以占用30个字符。个字符。CHAR列的长度固定为创建表时声明的长度。列的长度固定为创建表时声明的长度。最大长度为最大长度为8,000个字符。个字符。VARCHAR列中的值为可变长字符串。最列中的值为可变长字符串。最大长度为大长度为8,000个字符。个字符。下面的表显示了将各种字符串值保存到下面的表显示了将各种字符串值保存到CHAR(4)和和VARCHAR(4)列后的结果,说明了列后的结果,说明了CHAR和和VARCHAR之之间的差别:间的差别:char是一种固定长度的类型,是一种固定长度的类型,varchar则是一种可变长则是一种可变长度的类型度的类型char(M

15、)类型的数据列里,每个值都占用M个字节,如果某个长度小于M,MySQL就会在它的右边用空格字符补足(在检索操作中那些填补出来的空格字符将被去掉)在varchar(M)类型的数据列里,每个值只占用刚好够用的字节再加上一个用来记录其长度的字节(即总长度为L+1字节)。char固定长度,所以在处理速度上要比varchar快速很多,但是对费存储空间,所以对存储不大,但在速度上有要求的可以使用char类型,反之可以用varchar类型来实现BINARY和和VARBINARY类型类型BINARY和VARBINARY类类似于CHAR和VARCHAR它们包含字节字节字符串而不是字符字符串。BINARY和VAR

16、BINARY允许的最大长度一样,如同CHAR和VARCHAR,不同的是BINARY和VARBINARY的长度是字节长度而不是字符长度。String类型-BLOB和TEXT类型可以容纳可变数量的数据BLOB列被视为二进制字符串(字节字符串)。TEXT列被视为非二进制字符串(字符字符串)。Text数据类型的列可用于存储大于8kb的字符。五、五、Mysql数据库管理的基本操作数据库管理的基本操作1.数据库的相关操作数据库的相关操作(创建、删除、查看、选择创建、删除、查看、选择)2.MySQL数据库中的一些字段类型解释数据库中的一些字段类型解释3.数据表的操作数据表的操作(创建、删除、修改创建、删除、

17、修改)4.添加、删除、修改数据添加、删除、修改数据1.数据库的相关操作数据库的相关操作1)创建数据库创建数据库使用使用MySQL创建数据库,格式如下:创建数据库,格式如下:MySQLCREATEDATABASE*;QueryOK,1rowaffected(0.01sec)2)显示数据库列表显示数据库列表:mysqlshowdatabases;3)选择要用的数据库,查看包含的信息选择要用的数据库,查看包含的信息MySQLUSE*;DatabasechangedMySQLSHOWTABLES;4)显示表格显示表格mysqlshowtablesfrommydb(数据库名数据库名);显示表结构显示表结

18、构:mysqldescmydb.tablename;等价于等价于mysqlshowcolumnsfrommydb.tablename;5)删除数据库)删除数据库MySQLDROPDATABASE*;6)显示显示MySQL数据库的版本:数据库的版本:mysqlselectversion();SQL主要语句语法数据定义语句CREATEDATABASE语法CREATETABLE语法CREATEINDEX语法DROPDATABASE语法DROPINDEX语法DROPTABLE语法ALTERTABLE语法RENAMETABLE语法CREATETABLE语法CREATETABLE(列级完整性约束条件,列级

19、完整性约束条件),);注:列级约束条件有两个任选项:NOTNULL,表示此列不得置NULL,在其后还可加UNIQUE任选项,表示列值不得重复。DEFAULT,当此列的值空缺时,填以缺省值例如:stu_idchar(20)notnull,pricefloatdefault0.01表级完整性约束条件表级完整性约束条件主关键字约束指定表的一列或几列的组合的值在主关键字约束指定表的一列或几列的组合的值在表中具有惟一性,即能惟一地指定一行记录。表中具有惟一性,即能惟一地指定一行记录。每个表中只能有一列被指定为主关键字,且每个表中只能有一列被指定为主关键字,且IMAGE IMAGE 和和TEXT TEXT

20、 类型的列不能被指定为主关键字,也不允类型的列不能被指定为主关键字,也不允许指定主关键字列有许指定主关键字列有NULL NULL 属性。属性。语法如下:语法如下:CONSTRAINT constraint_namePRIMARY KEY CONSTRAINT constraint_namePRIMARY KEY(column_namecolumn_name)column_namecolumn_name指定组成主关键字的列名指定组成主关键字的列名constraint_nameconstraint_name指定约束的名称约束的名称指定约束的名称约束的名称Createtableproducts(id

21、char(20)notnull,pricefloatdefault0.01,constraintprimarykey(id);CREATEINDEX语法CREATEINDEXindex_nameONtbl_name(index_col_name,.)注:index_col_name:col_name(length)ASC|DESC例如:createindexstu_ageonstudent(ageASC);ALTERTABLE语法ALTERTABLEtbl_nameADD完整性约束DROP列名MODIFY;ADD用于增加新列和新的完整性约束条件,新增加的列一律为空值。(index,primar

22、ykey等)DROP用于删除指定的完整性约束条件(index,primarykey,foreignkey)MODIFY用于修改原有的列定义Altertableaaaddprimarykey(id);Altertableaaaddnamechar(20);Altertableaadropprimarykey;Altertableaamodifyidchar(100)notnull;RENAMETABLE语法RENAMETABLEtbl_nameTOnew_tbl_name对一个表重命名例如:renametablestudenttoss;创建,删除视图(view)创建视图语法:Createview

23、(,.)Asselect查询语句删除视图语法:Dropview视图名Createviewstu_test(id,name)Asselectstu_id,namefromstudent;Dropviewstu_test;SQL主要语句语法-数据操作语句SelectUpdateInsertDeleteSelect查询语句SELECTALL|DISTINCT,FROM,WHEREGROUPBYHAVINGORDERBYASC|DESC;Select查询语句SELECT指明需要查询的项目,一般是列名,也可以是表达式,查询表中未存储但可导出的结果。WHERE用来说明查询的条件DISTINCT任选项用来消

24、除查询结果的重复项GROUP用来将结果按列名1的值进行分组,该属性列值相等的元组为一组ORDER将结果表按列名2的值升序或降序排序where查询满足条件的元组(where子句)1.比较大小2.确定范围(BETWEENAND/NotBeteween.and)3.确定集合(IN,NOTIN)4.字符匹配(LIKE,NOTLIKE)可适用通配符%和 _。%:代表任意长度(长度可以为0)的字符串:a%_:代表任意单个字符:a_Select*fromstudent;Select*fromstudentwhereagenotbetween18and19;Select*fromstudentwherenam

25、elikea%;Update修改语法一般格式:INSERTINTO(,)VALUES(,)功能是将新元组插入指定的表中INTO中没有出现的属性列,新纪录在其上取空值属性列省略则按已有关系模式顺序插入,且其在每个属性列上均有值。Insertintostudentvalues(1,aa,asdf,1980-12-09);Insertintostudent(stu_id,name)values(2,bb);INSERTINTO(,)子查询;Insert插入语法Delete删除语法DELETEFROMWHERE;功能是从指定表中删除满足条件的所有元组如果省略WHERE子句,表时删除表中全部元组,但表的

26、定义仍在数据字典中。即:只删除数据。例如:Deletefromstudentwherename=“aa”;从Mysql中导入和导出数据库结构导入数据库导入数据库常用source命令进入mysql数据库控制台,如mysql-uroot-pmysqluse数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysqlsourced:/test_db.sql使用mysqldump:(mysqldump命令位于mysql/bin/目录中)几个常用用例:1.导出整个数据库mysqldump-u用户名-p数据库名导出的文件名mysqldump-uroot-pdatanamedataname.sql这个时候会提示要你输入root用户名的密码,输入密码后dataname数据库就成功备份在mysql/bin/目录中.2.导出一个表mysqldump-u用户名-p数据库名表名导出的文件名mysqldump-uroot-pdatanameusersdataname_users.sql3.导出一个数据库结构mysqldump-uwcnc-p-d-add-drop-tabledatanamed:wcnc_db.sql-d没有数据-add-drop-table在每个create语句之前增加一个droptable

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!