
SQL
codingCoge
人生是场马拉松
QQ:
1115106468
展开
-
参数化防止注入
用到数据库 总逃不过要参数化防止注入 因为有些程序员代码写的简单不完善就给了 一些人钻漏洞的机会 有些还好只是进入你的数据库 有些就恶意篡改你的内容 这就自认倒霉了 具体如何防止 为何防止 我就不贴了 百度一大堆 我就粘贴一下两个参数化防止注入的方法 方法一 :常用的 当数据库内容不多的时候 (推荐) string strsql = "insert into Stud原创 2017-10-21 16:35:18 · 573 阅读 · 0 评论 -
触发器的基本使用
EXISTS()在触发器中比较常用 用来判断有无返回查询的数据行 如果有 返回true 否则 false有三种触发器 1.是for触发器 2.是after触发器: for触发器属于after触发器 所以基本上直接用after触发器就好了 3.before触发器原创 2018-01-20 15:02:12 · 1014 阅读 · 0 评论 -
大二数据库实验报告
实验要求: 实验一 熟悉数据库管理系统环境 实验二SQL定义语言 实验三 使用SQL语言进行简单查询 实验四 使用SQL语言进行复杂查询 实验五 SQL常用数据更新操作 实验六 综合应用\实验一:熟悉数据库管理系统环境实验过程及分析: 首先创建一个数据库和需要的表:create database XSGLGOuse XSGLGOCr...原创 2018-05-23 18:22:22 · 77062 阅读 · 4 评论 -
jdbc学习笔记
前言:以前我学习项目都没有用到过数据库,都是用XML代替, 学习数据库也是直接学习其中的语法。 现在终于将二者连接在一起了。 也遇到了点小坑,刚好解决了来分享一波。组成JDBC的2个包:内置了可以不用管 java.sql javax.sql首先需要到mysql官网下载mysql的java的驱动程序包 我使用的是:mysql-connector-java-8...原创 2018-07-18 20:23:35 · 437 阅读 · 0 评论 -
jdbc之批处理了解一下
什么时候需要批处理?需要批量执行sql语句!批处理相关方法 void addBatch(String sql) 添加批处理 void clearBatch() 清空批处理 int[] executeBatch() 执行批处理实现:实体类: entity.Studentp...原创 2018-07-18 22:22:45 · 156 阅读 · 0 评论 -
Mysql的学习笔记整理
忘记密码如何进入MYSQL ?mysql.ini中配置:mysql -u root -p就可以无密码进入mysql注意: 1. 记住执行完语句后一定要加 ; 表示语句结束。 2. 列名和表名的要用反斜杠 ESC下面那个符号 为了防止和关键字重复造成错误。 3. 数据库管理:查询所有数据库:mysql> show databases;创建数据库:m...原创 2018-07-13 11:57:01 · 2268 阅读 · 0 评论 -
MySQL服务无法启动 and MySQL忘记密码 and MYSQL编码问题解决方案
今天使用mysql的时候发现一个问题:居然登不上去,老是说我密码错误,明明是之前设置好的。配置的过程中遇到了各种问题 ,总的就一个:MySQL 服务正在启动 .MySQL 服务无法启动。先试试删除my.ini中的 default-character-set=utf8 反正我是这样莫名奇妙就好了的如果忘记密码咋办? 解决方案:以管理员身份进入mysql的bin 那先清空...原创 2018-07-13 23:34:45 · 511 阅读 · 0 评论 -
Mysql存储过程学习笔记
前言:之前插入数据我们都是重复 粘贴复制,粘贴复制 这是多么繁琐的一个过程,而且效率低 这个时候存储过程就派上用场了。 我是这么理解的:存储过程是带有逻辑的SQL语句,可以同时执行多条操作语句的函数特点: 处理多条数据操作时效率高。原因:存储过程是 提前预编译好在数据库中,在数据库的服务器端执行的 缺点: 移植性很差!不同数据库的存储过程是不能移植。...原创 2018-07-15 18:00:30 · 754 阅读 · 0 评论 -
Mysql触发器学习笔记
触发器作用:当操作了某张表时,希望同时触发一些动作/行为,可以使用触发器完成例如: 当向员工表插入一条记录时,希望同时往日志表插入数据关键字: trigger创建操作://查看所有的触发器 show triggers;//查看指定的触发器信息show create tigger 触发器名字;//删除指定的触发器drop trigger rank_trigger;创...原创 2018-07-15 18:17:45 · 215 阅读 · 0 评论 -
mysql权限问题
Mysql只能查看账号用户名和权限 ,无法查看密码 。 因为它是MD5加密 单方向的创建用户修改用户密码之类的操作都要 root权限才可以注意:flush privileges//让修改密码之类的操作立即生效 ,加载到内存中, 而不必从新开启musqlmysql> flush privileges查看MYSQL数据库中所有用户及拥有权限:mysql&gt...原创 2018-07-15 19:51:26 · 912 阅读 · 0 评论 -
Mysql数据备份和还原
备份和还原不是从mysql服务器里面备份的(不需要登陆) 需要退出 退出是exit; 备份:备份的时候还需要密码 要用root权限C:\Users\蒋家聪>mysqldump -uroot -p day15 > D:/ZZZ.sqlEnter password: ******还原: 前提数据库得有这个表存在才行 ,如果不存在该表就会报错mysql -uroot...原创 2018-07-15 20:08:37 · 516 阅读 · 0 评论 -
JDBC获取自增长值
Mysql:mysql> create table teacher( -> id INT PRIMARY KEY AUTO_INCREMENT, -> name varchar(22) -> );jdbc: try { Connection connection = jdbcUtil.getConnect...原创 2018-07-21 20:11:06 · 474 阅读 · 0 评论 -
Mysql事务例子
事务:最小的逻辑单位,内部有多个操作,如果一个失败,全部都失败。意思就是同步一致,事务内部的全部条件都成立,该事务才成立,是且条件注意: connection = jdbcUtil.getConnection(); 默认开启时自动提交 要设置成: connection.setAutoCommit(false);基本格式:try { connection = j...原创 2018-07-22 07:59:16 · 1986 阅读 · 0 评论 -
sqlsever的简单练习
题目:--1.列出EMPLOYEES表中各部门的:部门编号,最高工资,最低工资--2.列出EMPLOYEES表中各部门的:部门编号、部门名称、最高工资、最低工资select "D".Department_ID,"D".Department_Name,"E".最高工资,"E".最高工资from (select Department_ID,Department_Name from Dep原创 2018-01-17 15:37:02 · 432 阅读 · 0 评论 -
函数的理解 group by order by理解
函数的分类 单行函数 对每一行记录都有作用 对每一行记录都能返回一个结果 例子lower(ename) 对每一个记录的ename字段都返回一个结果多行函数 对一组记录返回一个结果 聚合函数就是多行函数 例子lower(ename) select max(sal)from emp常用的聚合函数 avg 取平均值 sum 取所有值之和 count(ename) 值的个数原创 2018-01-03 15:08:22 · 605 阅读 · 0 评论 -
数据库的备份
这是学长写的数据库备份 我还没完全理解 先贴上 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Data;using System.Data.Sql;using System.Data原创 2017-10-21 16:36:52 · 339 阅读 · 0 评论 -
数据库部分语句(持续更新)
最近项目遇到了一些sql代码不是很理解 就贴出来 加上自己的注释 举个例子是 分组语句 : SELECT hosid AS 医院编号, hosname AS 医院名称, depid AS 科室编号, depname AS 科室名称, docid原创 2017-10-30 19:33:56 · 381 阅读 · 0 评论 -
左外连接的实际意义
返回一个事物及其该事务的相关信息,如果该事务没有相关信息则输出null 例子 : 已知条件: productStocks 货物库存表 orderform订单表 piD是产品的编号 sql语句 select productSticks.,orderform. from productStacks left join orderform on productStocks.p原创 2018-01-06 15:49:08 · 3211 阅读 · 0 评论 -
数据库的联合查询
定义 : 表和表之间的数据以纵向的方式连接在一起 举个例子: select “E1”.ename,”E1”.sal,”E2”.ename from emp “E1” //“E1”和“E2”是自连接 join emp “E2” on “E1”.mgr=”E2”.EMPNO union select ename,sal,’我是最大老板’ from emp where mgr原创 2018-01-06 17:30:20 · 412 阅读 · 0 评论 -
内连接的例子分析
select top 3 "E".ename,"E".sal,"S".GRADE,"D".dnamefrom emp "E"join SALGRADE "S"on "E".sal>="S".LOSAL and "E".sal"S".HISALjoin dept "D"on "E".deptno="D".deptnowhere "D".dname not like '%o%'order原创 2018-01-03 21:16:12 · 1018 阅读 · 0 评论 -
sqlsever2008 简单分页查询例子
工资从高到低排序 输出工资是第4到6行数据 select top 3 * from emp where EMPNO not in(select top 3 EMPNO from emp order by sal desc) order by sal desc工资从高到低排序 输出工资是第13到15行数据 select top 3 * from emp where EMPNO no原创 2018-01-06 19:48:22 · 307 阅读 · 0 评论 -
转账事物操作源代码(来自郝斌数据库)
create database Testuse Test create table bank ( customerEname nvarchar(200), currentMoney money ) insert into bank values (‘张三’, 1000) insert into bank values (‘李四’, 1)alter table原创 2018-01-07 10:09:33 · 538 阅读 · 0 评论 -
数据库的基础学习
数据库对于程序员来说是一个必备的技能,我也开始了数据的学习,看的教程比较老,是郝斌的sqlsever基础教程,用的数据库是sqlsever2008. 说起数据库,之前仿照的医药项目已经开始陆陆续续接触到了,所以也去3wschool上补过一些常用的 sql命令语句。现在是系统的学习一遍,算是巩固和加强吧。 先谈一下我对数据库的理解吧,数据库顾名思义是数据的集合,具体的是由一张原创 2018-01-02 15:07:55 · 106940 阅读 · 4 评论 -
数据库的一些基本sql语句
create database Test创建数据库 use Tset是进入这个数据库 drop table表名 删除一张表 delete *from 表名 删除一条记录 insert into 表名 values()增加一条数据 update 表名 set 列名=新数据 where 列名 = ‘条件’ 更新数据 select top 3 *from emp order by sal原创 2018-01-03 15:05:56 · 1094 阅读 · 0 评论 -
游标概念和作用(转载)
游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标充当指针的作用。尽管游标能遍历结果中的所有行,但他一次只指向一行。概括来讲,SQL的游标是一种临时的数据库对象,即可以用来存放在数据库表中的数据行副本,也可以指向存储在数据库中的数据行的指针。游标提供了在逐行的基础上操作表中数据的方法。游标的一个常见用途就是保存查询结果,以便以后使用。游标的结果集是由SELECT语句产生,如转载 2018-01-16 17:24:55 · 280 阅读 · 0 评论 -
JDBC中大文本类型的处理
Text 长文本类型Blob 二进制类型LONGTEXT:text文件文本LONGBLOB:二进制文件首先创建一个表:mysql> create table teacher( -> id int primary key auto_increment, -> text LONGTEXT, -> img LONGBLOB...原创 2018-07-22 10:56:05 · 422 阅读 · 0 评论