
C1_MySql
C1_MySql
少年西西
这个作者很懒,什么都没留下…
展开
-
MySQL与Oracle序列
MySQL自增列Oracle序列序列使用Oracle实现自增的两种方式参考:https://blog.youkuaiyun.com/qq_45554909/article/details/116812296原创 2021-05-17 09:15:02 · 331 阅读 · 0 评论 -
MySQL与Oracle触发器
概念作用语法new与old使用举例举例一举例二触发器限制原创 2021-05-17 09:11:44 · 246 阅读 · 0 评论 -
MySQL与Oracle视图
概念创建举例举例一:举例二:创建一张视图view_cust_totalprice,可以通过cust_id条件查出该顾客的所有订单总额MySQL:create view view_cust_totalprice as select c.cust_id,sum(c.sum_money) sumMoney from ( select o1.cust_id cust_id,o1.order_num order_num,sum(o2.quantity * o2.item_price) sum_mon原创 2021-05-17 09:07:39 · 907 阅读 · 0 评论 -
Oracle中实现自增列的两种方式(序列、触发器)
测试表:CREATE TABLE UserInfo(id NUMBER(10) NOT NULL,username VARCHAR2(15) NOT NULL,CONSTRAINTS PF_UserInfo PRIMARY KEY(Id));方法一:显示调用序列的下一个值插入:SQL语句:-- 创建序列CREATE SEQUENCE Tab_UserInfo_SequenceSTART WITH 1MINVALUE 1MAXVALUE 999999999INCREMENT BY原创 2021-05-17 09:01:13 · 5440 阅读 · 0 评论 -
MySQL和Oracle的远程访问和修改密码
原创 2021-05-17 08:57:03 · 260 阅读 · 0 评论 -
MySQL与Oracle的函数定义
概念函数示例一:创建一个函数hello(name),返回hello+nameMySQL:drop function if exists hello;create function hello(name varchar(10))returns varchar(30)begin #定义变量 declare result varchar(30); #赋值运算,使用字符串连接函数把两个字符串连接起来 set result = concat('hello,',n原创 2021-05-15 21:37:16 · 348 阅读 · 0 评论 -
MySQL与Oracle的系统函数
MySQL数学函数ABS(x):返回x的绝对值SQL语句:select ABS(-2) from dual;ceil(x):返回不小于x的最小整数值 大于等于SQL语句:select ceil(-2.1) from dual;select ceil(2.3) from dual;floor(x):返回不大于x的最大整数值 小于等于SQL语句:select floor(2.1) from dual;mod(x,y):返回x/y的模(取余)SQL语句:select mo.原创 2021-05-15 10:39:19 · 532 阅读 · 0 评论 -
存储过程
概念语法示例示例一示例二游标原创 2021-05-15 19:32:04 · 196 阅读 · 0 评论 -
MySQL与Oracle的常用命令
MySQL:远程连接:mysql -uroot -p1127 -h192.168.56.1 -P3306结果:库表视图展示:show databases;结果:use epoint;select database();结果:show full tables;结果:版本查询:select version();结果:列信息:desc customers;结果:表定义:show create table customers;结果:视图定义:s原创 2021-05-15 01:17:49 · 351 阅读 · 0 评论 -
在Oracle中实现自增列的两种方式。
测试表:CREATE TABLE UserInfo(id NUMBER(10) NOT NULL,username VARCHAR2(15) NOT NULL,CONSTRAINTS PF_UserInfo PRIMARY KEY(Id));显示调用序列的下一个值插入:SQL语句:-- 创建自增序列CREATE SEQUENCE Tab_UserInfo_SequenceSTART WITH 1MINVALUE 1MAXVALUE 999999999INCREMENT BY 1原创 2021-05-15 01:11:34 · 516 阅读 · 0 评论 -
了解drop、truncate、delete相关区别,分别通过界面和命令操作下。
drop:直接将表删除,删除完成后,这张表就找不到了,是一个DDL操作,无法回滚,速度很快。Truncate:截断表,将表数据全部删除,保留表结构,同样是DDL操作,无法回滚,速度很快。delete:清空表数据,保留表结构,是DML操作,可以回滚,会将删除的数据记录到日志中,因此速度较慢,特别是数据量很大时。...原创 2021-05-15 01:08:59 · 372 阅读 · 0 评论 -
MySQL与Oracle的查询举例
(1)在商品信息表products查询唯一的供应商ID:SQL语句:select distinct vend_id from products;结果:(2)在商品信息表products查询唯一的供应商ID和商品价格:SQL语句:select distinct vend_id,prod_price from products;结果:(3)查询所有商品名称,并按名称升序排序:SQL语句:select prod_name from products order by pr...原创 2021-05-15 01:07:02 · 2683 阅读 · 3 评论 -
MySQL与Oracle的库表操作
表空间表空间操作——OracleOracle中创建表空间test,并如下创建3个数据文件,最后删除表空间test及其数据文件。test_01.dbf 初始大小为10m,开启自动扩展,每次扩展10m,最大10Gtest_02.dbf 初始大小为20m,不开启自动扩展。test_03.dbf 初始大小为30m,开启自动扩展,每次扩展10m,不限制大小。创建表空间test,并创建3个数据文件:CREATE tablespace test datafile 'C:\app\It.me\o原创 2021-05-14 23:33:04 · 830 阅读 · 6 评论 -
MySQL与Oracle常用数据类型
数据类型MySQL数据类型Oracle数据类型数字类型:number(p,s)、integer字符串类型(n为字节): char(n)、varchar2(n)日期类型: date、timestamp大字段类型 :blob、clob原创 2021-05-14 23:16:06 · 737 阅读 · 0 评论 -
MySQL与Oracle的用户权限操作
Oracle的权限介绍Oracle 角色权限分类:(1)CONNECT:拥有Connect权限的用户只可以登录Oracle,无法操作其他对象。(2)RESOURCE:拥有Resource权限的用户可以在自己的模式下操作对象,不可以操作其他模式下的对象。(3)DBA:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。对于普通用户:授予 connect, resource 角色权限。对于DBA管理用户:授予 connect,resource,dba 角色权限。Oracle用户创建授权原创 2021-05-14 23:09:13 · 814 阅读 · 1 评论 -
Oracle和MySQL数据库介绍
MySQL数据库Oracle数据库初始密码:数据库对象库/模式数据表视图触发器函数与存储过程序列与同义词SQL语言原创 2021-05-14 21:52:22 · 163 阅读 · 0 评论 -
mysql与oracle区分大小写的规则
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:1、数据库名与表名是严格区分大小写的;2、表的别名是严格区分大小写的;3、列名与列的别名在所有的情况下均是忽略大小写的;4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。oracle中分为两种情况,单纯的sql语句不区分大小写,但是如果查询某个字符的话就需要区分大小写。1、如以下情况,是不区分大小写的,查询结果都是一致的select * from emp;SELECT * FROM EMP;2原创 2021-05-13 14:25:19 · 1516 阅读 · 0 评论 -
打开Navicat for MySql 连接数据库报Can‘t connect to MySQL server on ‘localhost‘ 10038错误
这里建议优先:使用mysqld --console 启动 查看启动的报错信息,再根据报错信息查找解决方法报错如下:在打开Navicat for MySql时报:Can’t connect to mysql server on ‘localhost’ (10038)错误,遇到这种错误,很大程度上忘记开Mysql的服务,这样我们将服务开启就可以。如果开启了还错,那么考虑防火墙的阻止解决方式:点击启动,最好将其设置为自启动发现无法启动并报错:本地计算机上的mysql服务启动停止后,某些服务在未原创 2021-01-29 12:06:50 · 17681 阅读 · 7 评论 -
登录mysql报错mysql: [Warning] Using a password on the command line interface can be insecure.
登录mysql报错:mysql: [Warning] Using a password on the command line interface can be insecure.ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)解决方法:其它解决方式参考:https://piaoyun.cc/944.htmlhttps://blog.youkuaiyun.com/zxssoft/artic原创 2021-01-09 23:10:47 · 29263 阅读 · 4 评论 -
MySQL的安装与卸载
官网 : https://www.mysql.com/这里建议大家使用压缩版,安装快,方便.不复杂.1、软件下载mysql5.7 64位下载地址: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-winx64.zip电脑是64位的就下载使用64位版本的!2、步骤1、下载后得到zip压缩包.2、解压到自己想要安装到的目录,本人解压到的是D:\JAVA\javasoft\mysql-5.7.19-winx643、添加环境变量原创 2021-01-06 17:27:46 · 307 阅读 · 0 评论 -
IDEA连接mysql又报错设置时区!Server returns invalid timezone.
IDEA连接mysql又报错!Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ prope解决:https://blog.youkuaiyun.com/liuqiker/article/details/102455077转载 2021-01-01 10:09:52 · 133 阅读 · 1 评论 -
MySql数据库设计三范式
第一范式任何一张表都应该有主键,并且每一个字段原子性不可再分。第二范式建立在第一范式的基础之上,所有非主键字段完全依赖主键,不能产生部分依赖。如果一个表是单一主键,那么它就复合第二范式,部分依赖和主键有关系多对多?三张表,关系表两个外键。一个学生有多个老师,一个老师也有多个学生。t_student学生表sno(pk) sname-------------------1 张三2 李四3 王五t_teacher 讲师表tno(pk) tname------原创 2020-12-18 16:33:03 · 227 阅读 · 1 评论 -
MySql的视图和DBA的命令
一、MySql视图1、什么是视图?视图是一种根据查询(也就是SELECT表达式定义的数据库对象,用于获取想要看到和使用的局部数据。视图时也被成为“虚拟表”。视图可以被用来从常规表(称为“基表”或其他视图中查询数据。相对于从基表中直接获取数据,视图以下好处: 访问数据变得简单 可被用来对不同用户显示不同的表的内容用来协助适配表的结构以适应前端现的应用程序视图作用:提高检索效率隐藏表的实现细节【面向视图检索】2、怎么创建视图?怎么删除视图?创建:creat原创 2020-12-18 16:21:28 · 276 阅读 · 1 评论 -
MySql中的索引
1、什么是索引?有什么用?索引就相当于一本书的目录,通过目录可以快速的找到对应的资源。在数据库方面,查询一张表的时候有两种检索方式:第一种方式:全表扫描第二种方式:根据索引检索(效率很高)索引为什么可以提高检索效率呢?其实最根本的原理是缩小了扫描的范围。索引虽然可以提高检索效率,但是不能随意的添加索引,因为索引也是数据库当中的对象,也需要数据库不断的维护。是有维护成本的。比如,表中的数据经常被修改这样就不适合添加索引,因为数据一旦修改,索引需要重新排序,进行维护。添加索引是给某一个字段,原创 2020-12-18 16:14:16 · 124 阅读 · 1 评论 -
MySql的事务(Transaction)
1、概述一个事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的,一个事务是一个完整的业务逻辑单元,不可再分。比如:银行账户转账,从A账户向B账户转账10000.需要执行两条update语句:update t_act set balance = balance - 10000 where actno = 'act-001';update t_act set balance = balance + 10000 where actno = 'act-002';以上原创 2020-12-18 16:02:50 · 383 阅读 · 3 评论 -
MySql的存储引擎
1、完整的建表语句CREATE TABLE `t_x` ( `id` int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;注意:在MySQL当中,凡是标识符是可以使用飘号括起来的。最好别用,不通用。建表的时候可以指定存储引擎,也可以指定字符集。mysql默认使用的存储引擎是InnoDB方式。默认采用的字符集是UTF8在创建表时,可使用ENGINE项为CREATE TABLE语句显式指定存储引擎。CREATE TABLE T原创 2020-12-18 15:48:30 · 112 阅读 · 1 评论 -
MySql的约束
1、什么是约束?常见的约束有哪些呢?在创建表的时候,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的合法性、有效性、完整性。2、常见的约束有哪些呢?非空约束(not null):约束的字段不能为NULL唯一约束(unique):约束的字段不能重复主键约束(primary key):约束的字段既不能为NULL,也不能重复(简称PK)外键约束(foreign key):...(简称FK)检查约束(check):注意Oracle数据库有check约束,但是mysql没有,目前mysq原创 2020-12-18 15:35:02 · 374 阅读 · 0 评论 -
数据定义语言(DDL):创建表create、修改表alter、删除表drop
一、create1、创建表建表语句的语法格式:create table 表名(字段名1 数据类型,字段名2 数据类型,字段名3 数据类型,…);2、关于MySQL当中字段的数据类型?以下只说常见的int 整数型(java中的int)bigint 长整型(java中的long)float 浮点型(java中的float double)char 定长字符串(String)varchar 可变长字符串(StringBuffer/StringBuilder)d原创 2020-12-18 10:09:24 · 1537 阅读 · 0 评论 -
数据操作语言(DML)二:常见函数
一、概述功能:类似于java中的方法好处:提高重用性和隐藏实现细节调用:select 函数名(实参列表);二、单行函数1、字符函数concat: 连接substr: 截取子串upper: 变大写lower: 变小写replace:替换length:获取字节长度trim:去前后空格lpad:左填充rpad: 右填充instr: 获取子串第一次出现的索引2、数学函数ceil: 向上取整round:四舍五入mod:取模floor:向下取整truncate:截断rand:原创 2020-12-18 10:09:07 · 167 阅读 · 0 评论 -
数据操作语言(DML)一:插入数据insert、修改数据update、删除delete
一、插入数据(insert)1、insert语句插入数据语法格式:insert into 表名(字段名1,字段名2,字段名3,…) values(值1,值2,值3,…)举例:insert into t_student(no,name,sex,classno,birth) values(1,'zhangsan','1','gaosan1ban');//ERROR 1136 (21S01): Column count doesn't match value count at row 1要求:字段原创 2020-12-17 23:27:57 · 2534 阅读 · 0 评论 -
MySql中的数据查询语言(DQL)五:union和limit
1、union (可以将查询结果集相加)合并结果集的时候,需要查询字段对应个数相同。在Oracle中更严格,不但要求个数相同,而且还要求类型对应相同。举例:案例:找出工作岗位是SALESMAN和MANAGER的员工?第一种:orselect ename,job from emp where job = 'MANAGER' or job = 'SALESMAN';第二种:inselect ename,job from emp where job in('MANAGER','SALESMAN')原创 2020-12-17 23:18:41 · 168 阅读 · 0 评论 -
MySql中的数据查询语言(DQL)四:子查询
1、什么是子查询?子查询都可以出现在哪里?子查询就是嵌套的select语句,可以理解为子查询是一张表,select语句当中嵌套select语句,被嵌套的select语句是子查询。子查询可以出现在哪里? select ..(select). from ..(select). where ..(select).2、where子句中使用子查询举例1:找出高于平均薪资的员工信息。第一步:找出平均薪资select avg(sal) from emp;第二步:原创 2020-12-17 23:11:17 · 447 阅读 · 1 评论 -
MySql中的数据查询语言(DQL)三:连接查询
一、概念1、什么是连接查询?连接查询:也可以叫跨表查询,需要关联多个表进行查询在实际开发中,大部分的情况下都不是从单表中查询数据,一般都是多张表联合查询取出最终的结果。在实际开发中,一般一个业务都会对应多张表,比如:学生和班级,起码两张表。学生和班级信息存储到一张表中,结果就像上面一样,数据会存在大量的重复,导致数据的冗余。2、连接查询的分类?根据语法出现的年代来划分的话,包括:SQL92(一些老的DBA可能还在使用这种语法。DBA:DataBase Administrator,数据库管理原创 2020-12-17 22:50:49 · 336 阅读 · 0 评论 -
MySql中的数据查询语言(DQL)二:分组函数/聚合函数/多行处理函数和分组查询
一、分组函数/聚合函数/多行处理函数1、概念分组函数一共5个。分组函数自动忽略NULL分组函数还有另一个名字:多行处理函数。多行处理函数的特点: 输入多行,最终输出的结果是1行记住:所有的分组函数都是对“某一组”数据进行操作的。2、说明注意:分组函数自动忽略空值,不需要手动的加where条件排除空值。select count(*) from emp where xxx;符合条件的所记录总数。select count(comm) from emp; comm这个字段中不为空的元素总原创 2020-12-17 22:39:08 · 274 阅读 · 0 评论 -
MySql中的数据查询语言(DQL)一:简单查询、条件查询、排序数据
一、简单查询语法格式: Select语句后面跟的是字段名称,select是关键字,select和字段名称之间采用空格隔开,from表示将要查询的表,它和字段之间采用空格隔开select 字段名1,字段名2,字段名3,… from 表名;提示:1、任何一条sql语句以“;”结尾。2、sql语句不区分大小写。 举例:1、查询员工的姓名和月薪mysql> select ename,sal from emp;±-------±--------+| ename | sal |±-原创 2020-12-17 10:13:34 · 567 阅读 · 1 评论 -
MySql的常用命令
1、查看MySQL版本未登录前: MySQL程序项具以下两种通用形式:长项,由单词之前加两个减号组成短项,由单个字母之前加一个减号组成C:\Users\It.me>mysql --versionmysql Ver 14.14 Distrib 5.5.36, for Win32 (x86)C:\Users\It.me>mysql -Vmysql Ver 14.14 Distrib 5.5.36, for Win32 (x86)登录MySQL后:mysql> selec原创 2020-12-17 09:44:58 · 147 阅读 · 0 评论 -
MySql数据库概述及数据准备
1、sql、DB、DBMS分别是什么,他们之间的关系?DB: DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)DBMS: DataBase Management System(数据库管理系统,常见的有:MySQL Oracle DB2 Sybase SqlServer…)SQL:结构化查询语言,是一门标准通用的语言。标准的sql适合于所有的数据库产品。SQL属于高级语言。只要能看懂英语单词的,写出来的sql语句,可以读懂什么意思。SQL语句在执行的时候,实际上内部也会原创 2020-12-17 09:35:32 · 241 阅读 · 0 评论