sql语言

SQL练习1-CREAT/DROP/ALTER SQL与T-SQL之间的不同:

南笙酒味 提交于 2020-03-08 09:52:58
练习主要内容: 数据库系统概论(第五版)例3.1-例3.12 在进行练习之前先【新建查询】 【新建查询】以后输入命令【CREATE DATABASE SCHOOL】再点击【分析】(工具栏的对勾)【执行】,刷新以后可以看见创建的数据库 SCHOOL 接着【创建对象】WANG 按照上面的图片所示,即可创建用户 接着需要修改【可执行数据库】,将数据库改成刚刚创建的SCHOOL 然后我们就可以开始进行练习: 模式的定义和删除 在SQL中,模式定义句: CREATE SCHEMA<模式名>AUTHORIZATION <用户名> 如果没有指定<模式名>,那么<模式名>隐含为<用户名> 【例3.1】 为用户WANG定义一个学生-课程模式S-T CREATE SCHEMA"S-T" AUTHORIZATION WANG; 【例3.2】 CREATE SCHEMA AUTHORIZATION WANG; SQL server中。默认的用户dbo,在没有创建模式的情况下,默认的模式名为dbo,所以表名为dbo.*。 【例3.3】 为用户WANG 创建TEST,并且在其中定义TAB1. CREATE SCHEMA TEST AUTHORIZATION WANG CREATE TABLE TAB1( COL1 SMALLINT, COL2 INT, COL3 CHAR(20), COL4 NUMERIC

数据库学习之路 三 SQL语言基础与操作运用

落爺英雄遲暮 提交于 2020-03-07 07:07:36
SQL语言基础 1986年10月由美国ANSI 公布最早的SQL标准。 1989年4月,ISO提出了具备完整性特征的SQL,称为SQL-89 。 1992年11月,ISO又公布了新的SQL标准,称为SQL-92(以上均为关系形式)。 1999年颁布SQL-99,是SQL92的扩展。、 、 SQL语言的特点 1. 一体化。 2. 高度非过程化。 3. 简洁。 4. 使用方式多样。 四部分:数据定义功能、数据控制功能、数据查询功能和数据操纵功能。 SQL的数据类型 数值型 字符串型 日期时间型 货币型 **准确型 整数 Bigint: 8字节, Int:4字节 Smallint:2字节, Tinyint:1字节 Bit:1位,存储1或0 小数 Numeric(p,q)或Decimal(p,q), 其中:p为数字位长度,q:小数位长度。 近似型 Float:8字节 Real:4字节 基本表的定义、删除及修改 1.定义基本表 使用SQL语言中的CREATE TABLE语句实现,其一般格式为: CREATE TABLE <表名>( <列名> <数据类型> [列级完整性约束定义] {, <列名> <数据类型> [列级完整性约束定义] … } [, 表级完整性约束定义 ] ) NOT NULL:限制列取值非空。 DEFAULT:给定列的默认值。 UNIQUE:限制列取值不重。 CHECK

JSTL 学习、应用记录

你说的曾经没有我的故事 提交于 2020-03-06 19:37:31
原来一直没有看过,我说过我是新手,但是好多资料上似乎也不重视 JSTL 。我看项目源代码发现其中使用到了这个标签库,感觉其还真是方便,页面看起来更加清爽。减少了 JAVA 程序员亲自写的代码量,还真验证了,不懒不做程序员,程序员如果写代码不想着偷懒,那么生活是很无趣的。 下面总结总结,学习学习。:) JSP 标准标记库( Standard Tag Library , JSTL) 是一组以标准化格式实现许多通用的 Web 站点功能的定制标记。 JSP 技术的优势之一在于其定制标记库工具。除了核心 JSP 标记,如 jsp:include 之外,定制标记库工具使您能够创建唯一的标记来描述以站点或应用程序为导向的操作。一旦您创建了定制标记库 ( 简称 taglib) ,当您扩展项目或转向另一个项目时您可以重复使用这些标记。您还可以将 taglib 传递给其它开发人员,从而他们可以在自己的网站上使用,或者在您 Web 应用程序的其它部分使用。 JSTL 的目标是为了简化 JSP 页面的设计。对于页面设计人员来说,使用脚本语言(默认值是 JAVA 语言)操作动态数据是比较困难的,而采用标签和表达式语言相对容易一些, JSTL 的使用为页面设计人员和程序开发人员的分工协作提供了便利。 一. 配置 JSTL 包括两个 JAR 文件, jstl.jar 和 standard.jar

猴子都能懂的数据库避坑指南,还说你不会?

老子叫甜甜 提交于 2020-03-06 15:08:39
前言 工作的这些年发现一个比较奇怪的现象就是身边无论是工作十多年的老兵,还是初级刚入行的程序员,在高谈阔论技术和趋势的时候都是人工智能,大数据,区块链,各种框架,语言,算法,AI,BI,CI,DI…… 等等,倒是发现很少有人关注数据库,不知道是因为数据库感觉太低端还是太低调,总是不容易被人提起 技术就是这样,不太关注的地方就不会重视,越是不被重视的地方,掉进坑里的概率就会越大,所以就在这里给大家简单聊聊在使用数据库过程中有哪些防掉坑指南,也可以对刚入行的小朋友有一个提醒的作用,万丈高楼平地起,一定要先打好基础再去考虑上层的建筑,不要舍本逐末 本章主要分以下四个小节(预计读完 5 分钟左右): 数据库为什么重要 数据库有哪些使用技巧 数据库有哪些容易掉进去的坑? 深入学习数据库的建议 数据库为什么重要 很多人在开发过程中不太关注数据库,对于表结构的设计也没什么讲究大多属于“能用就行”,但是根据作者将近十年的开发经验来看的话,只要你是从事 Web 相关领域开发你就无法避免不和数据库打交道, 在Web开发中大多功能操作本质上都是对数据库进行操作 ,不管你用是 Pythod,Java,Ruby 等语言进行 Web 开发,你其实都是在面向数据库进行编程,很多 Web 框架作者为了避免程序员接触数据库的相关知识甚至还封装了一层 ORM (Object Relational Mapping

SQL Server 存储过程

99封情书 提交于 2020-03-06 08:17:48
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。 Ø 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 存储过程中可以包含逻辑控制语句和数据操纵语句,它可以接受参数、输出参数、返回单个或多个结果集以及返回值。 由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以存储过程运行要比单个的SQL语句块要快。同时由于在调用时只需用提供存储过程名和必要的参数信息,所以在一定程度上也可以减少网络流量、简单网络负担。 1、 存储过程的优点 A、 存储过程允许标准组件式编程 存储过程创建后可以在程序中被多次调用执行,而不必重新编写该存储过程的SQL语句。而且数据库专业人员可以随时对存储过程进行修改,但对应用程序源代码却毫无影响,从而极大的提高了程序的可移植性。 B、 存储过程能够实现较快的执行速度 如果某一操作包含大量的T-SQL语句代码,分别被多次执行,那么存储过程要比批处理的执行速度快得多。因为存储过程是预编译的,在首次运行一个存储过程时,查询优化器对其进行分析、优化,并给出最终被存在系统表中的存储计划。而批处理的T

常用的系统存储过程

一世执手 提交于 2020-03-06 08:13:15
xp_cmdshell --*执行DOS各种命令,结果以文本行返回。 xp_fixeddrives --*查询各磁盘/分区可用空间 xp_loginconfig --*报告SQL Server 实例在Windows 上运行时的登录安全配置 xp_logininfo --*返回有关Windows 认证登录的信息。 xp_msver --*返回有关Microsoft SQL Server 的版本信息 xp_enumgroups --返回Windows用户组列表或在指定域中的全局组列表。 xp_sendmail --将电子邮件发送给指定的收件人(后续版本将删除该功能)。 xp_readmail --阅读SQL Mail收件箱中的邮件(后续版本将删除该功能)。 xp_deletemail --删除Microsoft SQL Server 收件箱中的邮件(后续版本将删除该功能)。 xp_startmail --通过该过程启动SQL Mail将返回两条消息,主要用于故障排除。 xp_stopmail --停止SQL 邮件客户端会话(后续版本将删除该功能)。 xp_grantlogin --授予Windows 组或用户对SQL Server 的访问权限(后续版本将删除该功能)。 xp_revokelogin --撤消Windows 组或用户对SQL Server 的访问权限(后续版本将删除该功能

SQLmap是一款用来检测与利用SQL漏洞的注入神器。

给你一囗甜甜゛ 提交于 2020-03-06 07:15:56
sqlmap 重要参考 http://www.kali.org.cn/forum-75-1.html SQLmap是一款用来检测与利用SQL漏洞的注入神器。开源的自动化SQL注入工具,由Python写成,具有如下特点: 完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。 完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。 在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。 支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。 支持自动识别密码哈希格式并通过字典破解密码哈希。 支持完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列,甚至只下载某一列中的部分数据,这完全取决于用户的选择。 支持在数据库管理系统中搜索指定的数据库名、表名或列名 当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持下载或上传文件。 当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持执行任意命令并回现标准输出。 安装

关系代数中除法的SQL实现

余生长醉 提交于 2020-03-06 01:37:59
关系代数中除法的SQL实现 文章目录 关系代数中除法的SQL实现 引言 除法 笛卡尔积的逆 SQL实现 应用场景举例 集合谓词的缺席 实现减法 实现除法 附录 实验用SQL 引言 关系代数中的运算主要有选择、投影、连接(或者说乘法,即笛卡尔积)、除法,以及集合运算。其中,选择、投影、连接能直接用SQL表达,但除法和大部分集合运算不能。尤其是除法的缺失,使得涉及该操作的查询难以编写。本文将介绍用如何现有SQL实现除法,并分析困难产生的原因。 除法 笛卡尔积的逆 关系除法可以看作笛卡尔积的逆,即对于 R ÷ S R\div S R ÷ S ,其结果为所有满足 T × S ⊆ R T\times S\subseteq R T × S ⊆ R 的 T T T 中最大的那个,有 T = π ( R ) − π ( ( π ( R ) × S ) − R ) T=\pi(R)-\pi((\pi(R)\times S)-R) T = π ( R ) − π ( ( π ( R ) × S ) − R ) 可以将该结论表达为SQL以实现除法吗?在不支持 MINUS , EXCEPT 的数据库中不能。由于R至少有两列,用NOT EXISTS实现MINUS并不简单。 SQL实现 应用场景举例 假设如下关系, 人与技能 person skill 张大仙 LOL 殷子 笑 卫小妹 CV 成少 LOL

sql基本语法1(简单全面)

笑着哭i 提交于 2020-03-06 00:52:53
SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。 SELECT - 从数据库表中获取数据 UPDATE - 更新数据库表中的数据 DELETE - 从数据库表中删除数据 INSERT INTO - 向数据库表中插入数据 CREATE DATABASE - 创建新数据库 ALTER DATABASE - 修改数据库 CREATE TABLE - 创建新表 ALTER TABLE - 变更(改变)数据库表 DROP TABLE - 删除表 CREATE INDEX - 创建索引(搜索键) DROP INDEX - 删除索引 select select * from Persons select lastName from Persons distinct 对查询的字段去重: SELECT DISTINCT 列名称 FROM 表名称 select distinct lastName from Persons ORDER BY 排序,默认为升序ASC;降序是DESC SELECT Company , OrderNumber FROM Orders ORDER BY Company DESC , OrderNumber ASC INSERT INTO 向表格中插入新的行: INSERT INTO 表名称 VALUES (值1, 值2,....) INSERT

十九、oracle pl/sql简介

本小妞迷上赌 提交于 2020-03-05 22:09:14
一、pl/sql 是什么 pl/sql(procedural language/sql)是oracle在标准的sql语言上的扩展。 pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加强大。 二、为什么要学pl/sql 1.提高应用程序的运行性能 2.模块化的设计思想(分页的过程,订单的过程,转账的过程。。) 3.减少网络传输量 4.提高安全性(sql会包括表名,有时还可能有密码,传输的时候会泄露。PL/SQL就不会) 三、Oracle为什么在PL/SQL developer执行很快,用c# oracleclient执行就慢 因为PL/SQL这门语言是专门用于在各种环境下对Oracle数据库进行访问。由于该语言集成于数据库服务器中,所以PL/SQL代码可以对数据进行快速高效的处理。 而c#语言是微软的产品,它在连接ORACLE的时候先存到“连接池”中,所以第一次会慢点,但是当你的Web程序没有重起的时候,以后的速度就不会慢了。 四、使用pl/sql的缺点 移植性不好(换数据库就用不了) 五、pl/sql理解 1)、存储过程、函数、触发器是pl/sql编写的 2)、存储过程、函数、触发器是存在oracle中的 3)、pl/sql是非常强大的数据库过程语言 4)、存储过程、函数可以在java中调用 六