微信小程序 > 微信公开课 > 小程序Mysql常用操作
微信小程序,微信公开课,小程序Mysql常用操作

小程序Mysql常用操作

2019-04-03 15:16:50

如何看待微信公开课小程序热门讨论「小程序Mysql常用操作」
摘要:小程序Mysql常用操作
展开:一、初始数据库数据库管理系统DBMSOracle、MySQL、SQLServer、informix、DB2数据库/仓库DBSQL结构化查询语言二、数据库常用命令a、查询数据库版本1、mysqlv2、mysqlversion3、进入数据库selectversion();b、基本的命令1、showdatabases;查看所有数据库2、use数据库名;使用数据数据库3、showtables;查看当前数据库下面的表4、selectdatabase()查看当前的数据库5、selectfrom数据库名查看数据库下面有多少表6、source脚本路径导入数据库脚本关键字7、desc表名查看表结构8、showcreattable表名;查看创建该表的sql语句9、droptableifexists表名;如果存在删除该表c、SQL语句分类1、DQL语句数据查询语句1)、简单查询1、select字段名称from表名;查询单个字段2、select字段1,字段2from表名;查询多个字段3、selectfrom表名;查询全部(不建议使用,在开发中尽量不要用,写字段)4、select字段1,字段2as别名from表名;as给字段2起别名,as可省略但是开发中不建议省略2)、条件查询where关键字放在from之后1、常用的运算符1、、或!(不等于)、、、、2、betweenand两个值之间包括两端的值3、isnull为空isnotnull不为空4、and并且5、or或者6、in包含相当于多个or(notin不在这个范围)7、not可以取非主要用在is或in中8、likelike为模糊查询,支持%或下划线匹配%匹配任意个字符下划线,一个下划线只匹配一个字符9、模糊查询%是通配符下划线是占位符2、or和and优先级and比or的优先级高3、null什么都不是不能进行运算,用is来查询4、selectfrom表名where字段like%字段%模糊查询like关键字3)、数据排序asc(升序)、desc(降序)1、单一字段排序orderby字段名称默认升序orderby放在where语句后面1、单一字段排序语法:select字段1,字段2from表名orderby字段asc/desc;2、多个字段排序语法:select字段1,字段2from表名orderby字段1asc/desc,字段2asc/desc.;3、按条件排序语法:select字段1,字段2from表名where条件orderby字段1asc/desc,字段2asc/desc.;2、字段下标排序(下标最终显是出来)不建议使用下标程序不健壮1、先查询出来数据再根据下标排序,4)、处理函数1)、单行处理函数1、Lower(字段)转换小写2、upper(字段)转换大写3、substr(字段,第几个字段开始,截取几个字段)取字符串(substr(被截取的字符串,起始下标,截取的长度))4、length(字段)as别名取长度5、trim(字段)去空格mysql默认去除字段后面的空格6、str_to_date(19930814,%m%d%Y)将字符串转换日期1、str_to_date(19930814,%m%d%Y)条件查询时2、7、format()设置千分为8、round(数字,保留几位小数)四舍五入9、rand(rand()122)生成随机数0,1之间的随机数10、Ifnull()可以将null装换成一个具体值11、date_format()格式化日期yyyyMMddHH:mm:ssjava中1、date_format(日期类型数据,日期格式%Y/%m/%d)12、casewhen..thenelseend当..的时候做什么操作2)、分组凼数/聚合凼数/多行处理凼数自动忽略控制不能直接使用在where语句后面a、常用函数聚合函数1、sum(字段)求和2、avg(字段)求平均值3、max(字段)取最大值4、min(字段)取最小值5、count(字段)取记录数或具体字段b、distinct去除重复1、distinct字段去除单一重复字段2、distinct字段1,字段2去除多个字段去重复字段3)、分组查询groupby1、groupby字段名2、groupby字段1,字段23、groupby字段1having4)、select语句总结selectxxx查询之后显示的字段fromxxx查询的表wherexxx查询的条件groupbyxxx分组字段havingxxxorderbyxxx排序5)、跨表查询a、年代分类1、SQL92表关联语法select字段1,字段2from表1as别名1,表2as别名2where别名1.字段1别名2.字段22、SQL99表关联语法(掌握)select别名1.字段1,别名2.字段2from表名1别名1join表名2别名2on别名1.字段1别名2.字段2where数据过滤条件b、连接分类1、内连接省略关键字inner1、等值连接select别名1.字段1,别名2.字段2from表名1别名1innerjoin表名2别名2on别名1.字段1别名2.字段2where数据过滤条件2、非等值连接select别名1.字段1,别名2.字段2from表名1别名1innerjoin表名2别名2on别名1.字段1between别名2.字段2and别名2.字段3where数据过滤条件;3、自连接:把一张表看成两张表使用select别名1.字段1,别名2.字段1as区别的字段from表名1别名1innerjoin表名1别名2on别名1.字段1别名2.字段2where数据过滤条件;2、外连接查询出来的条数内连接查询出来的数据outer省略一个关键字1、左外连接/左连接outer省略一个关键字select别名1.字段1,别名2.字段2from表名1别名1liftjoin表名2别名2on别名1.字段1别名2.字段2where数据过滤条件2、右外连接/右连接outer省略一个关键字select别名1.字段1,别名2.字段2from表名1别名1rightouterjoin表名2别名2on别名1.字段1别名2.字段2where数据过滤条件3、全连接多表查询select别名1.字段1,别名2.字段2from表名1别名1join表名2别名2on别名1.字段1别名2.字段2join表名3别名3on别名1.字段1between别名2.字段2and别名2.字段36)、子查询select查询语句中套select语句select(select)..极少使用from(select)..where(select)..7)合并集合union合并(相加)集合字段类型,字段个数,字段所表示的意义都要一样select字段1,字段2from表1where字段2值1unionselect字段1,字段2from表1where字段2值2;8)分页查询mysql中limit起始下标m长度n1、从第一个截取selectfrom表名limit起始下标,截取长度2、MySQL分页查询(三要素:当前页,起始索引,一页显示几天)selectfrom表名limit(当前页1)一页多少条,一页多少条);2、DML语句数据库操作语言1、insert插入数据insertinto表名(字段名1,字段2)values(字段值,字段值,);2、delete删除字段deletefrom表名where删除条件3、update修改字段update表名set字段名称字段值,字段名称字段值where限制条件;3、DDL语句数据库定义语言1、createcreatetablet_表名/tb1_表名(字段名称字段类型字段长度字段约束)createtable表2asselectfrom表1;快速创建一张表2、dropdroptable表名;droptableifexists表名;如果存在就删除表3、alter修改表结构1、添加1列altertable表名add字段名称字段类型字段长度字段约束;2、修改表中的字段类型altertable表名modify字段名字段类型;3、删除表中的字段altertable表名drop字段名称;4、修改表中的字段名altertable表名change原字段名称新字段名称字段类型;4、TCL语句事务控制语言1、commit提交事务2、rollback回滚事务三、表a)、表的组成行和列组成:行称为数据或记录列称为字段字段有包含:字段名称、字段类型、长度、约束b)、表的创建createtablet_表名/tb1_表名(字段名称字段类型字段长度字段约束,字段名称字段类型字段长度字段约束,字段名称字段类型字段长度字段约束)快速复制一张表createtable表2asselectfrom表1;c)、字段类型charchar(n)定长的字符串varcharvarchar(n)变长的字符串int4个字节bigint8个字节float(有效数字位数,小数位)double(有效数字位数,小数位)date8字节日期BLOB流媒体的CLOB字符串d)、删除表droptable表名;droptableifexists表名;如果存在删除该表e)、给表里面字段设置默认值创建表时字段加default1默认为空f)、创建表加入约束(constraint)查询表中的所有约束selectconstraint_namefrom1、非空约束(notnull)2、唯一性约束(unique):唯一性,不可重复列级写法:写到字段数据类型后面unique表级写法:写到最后unique(字段名)可以联合唯一性:3、主键约束(primarykey)自动生成主键primarykeyauto_increment4、外键约束(foreignkey)添加外键约束:constraint外键别名foreignkey(外键字段名)references[引用的那张表的那个字段]表名(字段名);级连操作:切忌不要瞎玩级联更新:onupdatecascade1、删除原来的外键约束altertable子表名dropforeignkey外键名;2、添加新的外键约束altertable子表名addconstraint外键别名foreignkey(外键字段名)references[引用的那张表的那个字段]表名(字段名)onupdatecascade;级联删除:ondeletecascade1、删除原来的外键约束altertable子表名dropforeignkey外键名;2、添加新的外键约束altertable子表名addconstraint外键别名foreignkey(外键字段名)references[引用的那张表的那个字段]表名(字段名)ondeletecascade;四、存储引擎a、b、c、五、索引(index)1、1、数据量大加索引2、少的使用DML操作3、经常出现在where语句2、创建索引createindex索引名on表名(字段);3、查看索引showindexfrom表名;4、删除索引dropindex索引名on表名;六、视图(view)1、创建视图createview视图名asselectfrom表名;2、删除视图dropview视图名;3、视图的作用a、隐藏表的细节b、提高检索效率七、数据库设计三大范式1、第一范式:必须有主键最基本的要求、字段不能再分2、第二范式:建立在第一字段基础之上,减少联合主键3、第三范式:建立在第二范式基础之上,要求非主键字段不能产生传递与主键字段八、数据库的事务(Transaction)1、事务是什么a、一个最小的不可再分的工作单元b、通常一个事务对应一个完整的事务c、而一个完整的业务需要批量的DML(insert、update、delete)语句共同完成d、事务只和DML语句有关系,或者说DML语句才有事务e、业务逻辑不同DML语句也不同2、事务的四个特性ACIDa、原子性(Atomicity):事务是最小单元,不可再分;b、一致性(Consistency):必须同时成功或同时失败c、隔离性(Isolation):不影响其他事务的运行d、持久性(Durability):不会回滚3、事务的一些概念a、开启事务:starttransactionb、结束事务:endtransactionc、提交事务:committransactiond、回滚事务:rollbacktransaction4、查看数据库事务:showvariableslike%commit%;开启事务:1:手动开启(一次设置一次)starttransaction;commit;2:关闭自动提交事务setautocommitoff;事务的隔离级别:1、readuncommitted读未提交(级别最低)2、readcommitted读已提交3、repeatableread可重复读mysql默认4、seriallzable串行化5、查看隔离级别select@@tx_isolation;会话级隔离级别select@@session.tx_isolation;会话级隔离级别select@@global.tx_isolation;全局的隔离级别6、设置隔离级别settransactionisolationlevelisolationlevel;查询重复的数量SELECTCOUNT()FROMusersWHEREusernamelisi查询两列返回一列SELECTCONCAT(id,username)FROMusers;
标签:小程序
微信小程序,微信公开课,小程序Mysql常用操作

「小程序Mysql常用操作」热门讨论订阅

方法1:微信扫描微信公开课小程序码即可订阅热门讨论「小程序Mysql常用操作」

方法2:微信搜索微信公开课小程序名称进入,即可订阅热门讨论「小程序Mysql常用操作」

方法3:微信网页访问即速商店,长按识别微信公开课小程序码即可订阅热门讨论「小程序Mysql常用操作」

微信公开课小程序热门讨论「小程序Mysql常用操作」由微信公开课原创摘录于微信小程序商店shop.jisuapp.cn,转载请注明出处。

微信公开课热门讨论「小程序Mysql常用操作」由微信公开课开发者向微信用户提供,并对本服务内容、数据资料及其运营行为等真实性、合法性及有效性承担全部责任。