




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MYSQLMYSQL1Q&A1语法1杂1修改 root 用户密码2MySQL中的数据类型2创建和删除数据库2操作MySQL数据库表(查询除外)2完整性约束3索引3视图4触发器4多表查询4存储过程和函数5Q&AC:Documents and SettingsAll UsersApplication DataMySQLMySQL Server 5.6杂数据文件存放在安装目录data下面,一个数据库对应一个文件夹à数据库导出: 数据库可以再SQLyog软件中选择导出为excel xml,然后用excel打开并另存为xls的文件à数据库备份直接可以再SQLyog软件
2、中选择à导出,转储SQL形成.sql文件,然后导入可以选择执行.sql脚本就可以了àMYSQL 服务开启与关闭net stop MYSQL56net start MYSQL56à查看默认存储引擎show variables like storage_engine%;show variables是显示所有的变量,后面like关键字是匹配显示,%是通配符修改 root 用户密码执行命令: mysqladmin -u root -p password 新密码,执行后提示输入旧密码完成密码修改, 当旧密码为空时直接按回车键确认即可。语法MySQL中的数据类型My
3、SQL有三大类数据类型, 分别为数字、日期时间、字符串, 这三大类中又更细致的划分了许多子类型:à数字类型整数: tinyint、smallint、mediumint、int、bigint浮点数: float、double、real、decimal日期和时间: date、time、datetime、timestamp、yearà字符串类型字符串: char、varchar文本: tinytext、text、mediumtext、longtext二进制(可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblobFor float(M,D),
4、 double(M,D) or decimal(M,D), M must be >= D (column 'id'). 其中M是总位数,D是小数位数int不需要括号,有括号也没啥用,char后面的括号有用,标示字符的最大位数创建和删除数据库create database 数据库名 其他选项;提示: 可以使用 show databases; 命令查看已经创建了哪些数据库。同理用drop database 数据库名可以删除数据库操作MySQL数据库表(查询除外)à创建数据库表: create table 表名称(列声明); 用逗号分开à查询表清单
5、:show table status; /有status的更详细些à表中插入数据:Insert into 表名 (列名1, 列名2, 列名3, .) values (值1, 值2, 值3, .);à表中插入查询数据: insert into table_name(field1,field2,) select field1,field2 from table_name2 where order by field1 ASC|DESC,field2 ASC|DESC;à查询表中的数据: SELECT distinct function(字段四则运算) asotherfi
6、eld from 表名称 WHERE ORDER by field1 ASC|DESC,field2 ASC|DESCLIMIT offset_start, row_count GROUP BY field HAVING 分组组显示条件;Distinct 为避免重复显示数据Limit 为限制查询数量As otherfield 为查询的列设定新的名称Function是统计函数,count(),avg(),sum(),max(),min()Group,有重复的就显示不同组的各一条数据CONCAT举例:select CONCAT(ename,雇员年薪为:,sal*12) as yearsalary
7、from table_name;GROUP_CONCAT():显示字段对应的内容 eg:select GROUP_CONCAT(ename) from table_name;HAVING 为分组后显示组的条件除了顺序和倒序之外想指定排列顺序可以如下:SELECT * FROM t_equip WHERE week_id='50' ORDER BY equipment_id,FIND_IN_SET(book_date,'Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday')à按特定条件查询:w
8、here 关键词用于指定查询条件, 用法形式为: select 列名称 from 表名称 where 条件;以查询所有性别为女的信息为例, 输入查询语句: select * from students where sex="女"where 子句不仅仅支持 "where 列名 = 值" 这种名等于值的查询形式, 对一般的比较运算的运算符都是支持的, 例如 =、>、<、>=、<、!= 以及一些扩展运算符 is not null (不能用=null)、not in (eg: where field in(value1,valu
9、e2,))、not like(-通配单字符,%通配任意字符) 等等。 还可以对查询条件使用 or 和 and 进行组合查询à更新表中的数据,和alter区别是alter是该数据定义,update是改表的具体数据update 语句可用来修改表中的数据, 基本的使用形式为:update 表名称 set 列名称1=新值1, 列名称2=新值2where 条件;à删除表中的数据: delete from table_name where 条件;à修改表名: Alter table table_name rename new_table_nameà显示表清单:Sho
10、w tables;à增加列: Alter table table_name add 列名 类型 特定设置;特定设置比如first插在第一列,如果没有就是默认在最后一列,比如after 列名à删除列:Alter table table_name drop 列名à修改列数据类型: Alter table table_name modify 列名 新类型à修改列名和数据类型: Alter table table_name change 原列民 新列名 新类型à修改列顺序: Alter table table_name modify 目标列 目标列类型
11、 after 目标列2;Alter table table_name modify 目标列 目标列类型 first;à查找表结构: Describe table_name;Show create table table_name; 可以看到表的创建结构完整性约束ànot null, 空就会报警àdefault, 无输入的默认值àunique, 唯一值,字段有重复则报警,删除得 alter table table_name drop index 字段 àprimary key, 等于非空约束+唯一约束,可以是单字段约束,也可以是多字段约束,一个表
12、只能有一个primary key,可以有多个unique,删除主键:alter table table_name drop primary key;àauto_increment, 一个表只能有一个自增,而且必须是整数àforeign key索引à创建表时创建索引Index前加unique为唯一索引à在已经创建好的表上创建普通索引Create 【unique】index 索引名 /删除就是讲create换成drop就行On 表名(属性名 (长度) ASC|DESC)或者alter table table_name add 【unique】 index|k
13、ey 索引名(属性名 (长度) ASC|DESC)视图视图实在物理实表的基础上建立的虚拟表格,不占存储空间,可以起到隐藏某些数据的作用à创建视图Create view view_name as 查询语句 /之后就可以和表一样用select语句查询了à删除视图 drop view view_name;à修改视图 create or replace view view_name as 查询语句,原来存在的修改,原来不在的创建,或者alter view view_name as 查询语句对视图的修改数据会直接影响基本表,不过当视图由多表组成的话,不能修改视图的数据触发器
14、à创建触发器DELIMITER $ /语句结束符定义,因为begin end中已经用到;所以临时变更下CREATE TRIGGER 触发器名称 BEFORE|AFTER INSERT|update|delete ON 表名 FOR EACH ROWBEGIN执行语句;执行语句2;END$DELIMITER ;à查看触发器:show triggers;à删除触发器:drop trigger trigger_name;多表查询à内连接: SELECT field1,field2 FROM table_name1 INNER JOIN table_name2
15、ON join_condition;à外连接: SELECT field1,field2FROM table_name1 LEFT|RIGHT JOIN on join_condition;àUNION 关键字:SELECT field1,field2 FROM table_name1UNION|UNION ALL /union将查询合起来然后去掉重复,union不会去掉重复SELECT fiedl1,field2FROM table_name2;à子查询:即在FROM和WHERE的地方再次加入select查询,为嵌套查询,其中where可以包含NOT IN,AN
16、Y(>ANY,<ANY,=ANY(这个等同于IN),标示只要主查询满足任意子查询条目就可以,因为子查询条目有好几个),ALL(>=ALL,<=ALL,标示主查询要大于所有子查询的条目,大于或大于等于可以,但是不能单独等于),NOTEXISTS关键字, FROM关键字加入select语句是形成临时表存储过程和函数à创建存储过程语法:CREATE PROCEDURE procedure_name(procedure_parameter,)characteristic routine_bodyprocedure_parameter: IN|OUT|NOUT para
17、meter type /输入输出,参数名,数据类型characteristic:LANGUAGE SQL /表示由SQL语言组成,是默认语句|NOT DETERMINISTIC /执行结果确定与否|CONTAIN SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA /CONTAIN SQL表示可以包含SQL语句,但是不包含读或写的语句,NO SQL表示不包含SQL语句, 默认为CONTAIN SQL|SQL SECURITY DEFINER|INVOKER /DEFINER表示只有定义者可以执行,INVOKER表示调用者可以执行|COMMENT string
18、à查看存储过程:SHOW PROCEDURE STATUS LIKE %;à修改存储过程:ALTER PROCEDURE procedure_namecharacteristic相比创建,此处的characteristic取值只能如下:|CONTAIN SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA |SQL SECURITY DEFINER|INVOKER|COMMENT stringà删除存储过程:DROP PROCEDURE procedure_name;à创建函数语法:CREATE FUNTION func
19、tion_name(function_parameter,)characteristic routine_bodyà查看函数:SHOW FUNCTION STATUSLIKE %;à修改函数:ALTER FUNCTION function_namecharacteristic相比创建,此处的characteristic取值只能如下:|CONTAIN SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA |SQL SECURITY DEFINER|INVOKER|COMMENT stringà删除函数:DROP FUNCTION f
20、unction_name;à变量:声明变量:DECLARE var_name, typeDEFAULT value变量赋值:SET var_name=expr,变量只有在存储过程中能用à游标:用来指向查询语句返回的多条记录声明游标:DECLARE cursor_name CURSOR FOR select语句;打开游标:OPEN cursor_name;使用游标:FETCH cursor_name INTO var_name,var_name; /var_name必须在游标使用前定义关闭游标:CLOSE cursor_name;àIF条件控制:IF search_
21、condition THEN statement_list ELSEIF search_condition Then statement_list ELSE search_conditionEND IFàCASE 条件控制:CASE case_value WHEN when_value THEN statement_list WHEN when_value THEN statement_list ELSE statement_listEND CASEàLOOP 循环控制:begin_label: LOOPStatement_listEND LOOP end_label结束循
22、环:LEAVE labelàWHILE循环控制:begin_label: WHILE search_condition DOStatement_listEND WHILE end_labelàREPEAT 循环控制:begin_label: REPEAT search_condition DOStatement_listEND REPEAT end_label事务à事务的隔离级别:安全性相关权限à创建用户:CREATE USER username IDENTIFIED BY PASSWORD password,username IDENTIFIED BY PASSWORD password /用户名和服务器名都需要单引号à删除普通用户:DROP USER user_name;à查看权限:在mysql这个数据库中有个user的表,用select语句就可以看到详细的用户及权限信息,或者SHOW GRANTS FOR u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园防火防灾宣传合作合同(2篇)
- 《幼儿舞蹈创编2》-项目三《造型练习》教案
- 2025新车买卖的合同
- 2025年出口购销合同范本示例
- 2025汽车租赁合同协议书模板
- 2025版工业制造合同范本
- 2025烘焙技术合作协议合同
- 亚急性心内膜炎的临床护理
- 新北师大五年级数学上册分数的再认识教学设计
- 视像不等的临床护理
- 小学心理健康教育《在合作中成长》教学课件
- 房室折返性心动过速课件
- 直饮水工程施工组织设计
- 2022年山东中烟工业有限责任公司滕州卷烟厂招聘笔试题库及答案解析
- 急救技术气道开放技术课件
- 监理整改回复单(模板)
- 招贴设计 课件完整版
- 杭州市主城区声环境功能区划分图
- 6G项目实施方案参考模板
- 高层建筑无地下室倾覆及滑移计算
- 广东省东莞市第二人民法院
评论
0/150
提交评论