oracle数据库

C#学习--SQLserver、oracle、MySQL和Access的封装源码

若如初见. 提交于 2020-03-16 09:05:35
/*---------------------------------------------------------------- * // author:HQ * // describe:Database connet * // date:2019-10-08 * ------------------------------------------------------------------*/ using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.Data.OracleClient; using System.Data.SqlClient; using MySql.Data.MySqlClient; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WorkNet { public class Database_Operation { private SqlConnection sql_con; private OracleConnection oracle_con; private MySqlConnection

oracle pl/sql 简介

别等时光非礼了梦想. 提交于 2020-03-16 04:09:47
一、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中调用 六

oracle服务器和客户端字符集的查看和修改

こ雲淡風輕ζ 提交于 2020-03-15 20:36:22
oracle服务器和客户端字符集的查看和修改 https://www.cnblogs.com/lcword/p/5854186.html 一、什么是oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。 影响oracle数据库字符集最重要的参数是NLS_LANG参数。 它的格式如下:   NLS_LANG = language_territory.charset 它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。 其中: Language 指定服务器消息的语言,territory 指定服务器的日期和数字格式,charset 指定字符集。如:AMERICAN _ AMERICA. ZHS16GBK 从NLS_LANG的组成我们可以看出,真正影响数据库字符集的其实是第三部分。 所以两个数据库之间的字符集只要第三部分一样就可以相互导入导出数据,前面影响的只是提示信息是中文还是英文。 二.查看数据库字符集 这涉及三方面的字符集, 一是oracel server端的字符集; 二是oracle client端的字符集; 三是dmp文件的字符集。

JDBC进行Oracle数据库操作。

*爱你&永不变心* 提交于 2020-03-15 17:33:02
1,按照Oracle 2,创建数据库脚步 DROP TABLE person ; DROP SEQUENCE myseq ;//设置自增序列。 CREATE SEQUENCE myseq ; CREATE TABLE person ( id INT PRIMARY KEY NOT NULL , name VARCHAR(50) NOT NULL , age INT , birthday DATE ) ; 3,之后配置驱动程序。 4,执行: 取得程序:DBDRIVER = "oracle.jdbc.driver.OracleDriver", JDBC地址:DBURL = "jdbc:oracle:thin:@localhost:1521:sys" package 类集; import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; public class JDBCOracle{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver" ; //

oracle的commit详解

北城以北 提交于 2020-03-15 17:30:14
转:https://blog.csdn.net/hzhsan/article/details/9719307 它执行的时候,你不会有什么感觉。commit在数据库编程的时候很常用,当你执行DML操作时,数据库并不会立刻修改表中数据,这时你需要commit,数据库中的数据就立刻修改了,如果在没有commit之前,就算你把整个表中数据都删了,如果rollback的话,数据依然能够还原。听我这么说,你或许感觉commit没什么用,其实不然。当你同时执行两条或两条以上的sql语句时,问题就出现了。举一个例子,你去银行转账,你转的时候银行的数据库会update你银行账户里面的数据,同时对另一个人得账户也进行update操作。这两个程序都必须全部正确执行,才能commit,否则rollback。如果只是完成一条,要么你郁闷,要么银行郁闷,第一种情况是,你的账户的钱没少,转账人得账户上的钱多了,银行郁闷了。第二种情况你的银行账户的钱少了,他的却没多,你就好郁闷了。Oracle好好学吧!sql不难,plsql努努力也能熬过去,等到优化那,哎!DBA不是那么好当的。还有就是commit算是显式提交,还有隐式提交,并不是,不commit的话,你的全部努力就都白费了。 这个命令是将数据写到数据库中。如果不执行COMMIT这个命令

Oracle 11g R2的卸载与重装

烈酒焚心 提交于 2020-03-15 17:26:12
  Oracle 11gr2的完全卸载方式与前些版本有了改变,运行D:\app\Administrator\product\11.2.0\dbhome_1\deinstall的deinstall.bat批处理文件卸载,全程代码如下: Checking for required files and bootstrapping ... Please wait ... 复制了 14 个文件 复制了 611 个文件 已复制 1 个文件。 已复制 1 个文件。 Location of logs C:\Users\ADMINI~1\AppData\Local\Temp\OraDeinstall周六-09-04_12- 13-55\logs\ ############ ORACLE DEINSTALL & DECONFIG TOOL START ############ ######################## CHECK OPERATION START ######################## 安装检查配置开始 检查 Oracle 主目录位置是否存在 D:\app\Administrator\product\11.2.0\dbhome_1 选择进行卸载的 Oracle 主目录类型为: SIDB 选择进行卸载的 Oracle 基目录为: D:\app\Administrator

oracle PL、SQL(概念)

你离开我真会死。 提交于 2020-03-15 11:32:18
一 .PL/SQL 简介。    Oracle PL/SQL 语言( Procedural Language/SQL )是结合了 结构化查询 和 Oracle 自身过程控制 为一体的强大语言, PL/SQL 不但支持更多的数据类型,拥有自身的变量申明,赋值语句,而且还有条件,循环等流程控制语句。过程控制结构与 SQL 数据处理能力无缝的结合形成了强大的编程语言,可以创建过程和函数以及程序包。 二.优点: 1,支持 SQL      SQL 是访问数据库的标准语言,通过 SQL 命令,用户可以操纵数据库的数据。     PL/SQL 支持所有的 SQL 数据操纵命令、游标控制命令、事务控制命令、 SQL 函数、运算符和伪列。 2,支持面向对象编程      PL/SQL 支持面向对象的编程,在 PL/SQL 中可以创建类型,可以对类型进行继承,可以在子程序中重载方法等。 3,更好的性能      SQL 是非过程语言,只能一条一条的执行,而 PL/SQL 把一个 PL/SQL 统一进行编译后执行,同时还可以把编译好的 PL/SQL 块存储起来,以备重用,减少了应用程序和服务器之间的通信时间,所以 PL/SQL 是高效而快速的。 4,可移植性     使用 PL/SQL 编写的应用程序语言,可以移植到任何操作平台的 ORACLE 服务器,同时还可以编写可移植程序库,在不同环境中使用。

Oracle中常見等待事件的說明

北城余情 提交于 2020-03-14 11:10:23
Oracle中常見等待事件的說明 buffer busy waits 指出等待数据库缓冲区高速缓存中的缓冲区。这表示某个会话正把这个缓冲区读入高速缓存和/或修改它。也可能是支持许多并发INSERT操作的表上缺乏足够的空闲列表的表征 db file parallel write 指出与DBWR进程有关的等待。可能与DBWR进程或配置的DBWR I/O进程的数目有关。还可以指示较低或较高争用的设备 db file scattered read 指出与全表扫描有关的等待。可能表示I/O争用或太多的I/O db file sequential read 指出(在别的东西中)与一个索引扫描有关的等待。可能表示I/O争用或太多的I/O db file single write 指出与在一个检查点中标题写入有关的等待。典型的情况是在数据文件编号紊乱的环境中 direct path read 指示并允许直接I/O相关的等待。一般表示设备上的I / O争用 direct path write 指与direct path read相同。只不过对应于写入 enqueue 指出与锁定各种Oracle资源和组件的内部排队机制有关的等待。关于Oracle中完整的排队列表,请参阅Oracle8iReference Manual的附录B free buffer inspected

Oracle数据库之创建表结构

对着背影说爱祢 提交于 2020-03-14 04:15:27
Oracle数据库之创建表结构 主键与外键 主键:关系型数据库中的一条记录中有若干个属性,若其中的某一个属性组(可以是一个属性,也可以是多个)能唯一标识一条记录,那么该属性组就是主键。 外键:关系型数据库表中的一列或者某几列的组合,它的值与另外一张表的某一列或者某几列相匹配,且为另一张表的主键(即这张表的某一列或某几列是另外一张表的主键,称这一列或几列为另外一张表的外键)。 注意: 一张表主键只能有一个,可以有多个外键以及唯一索引 Oracle数据库共有5个约束:主键、外键、非空、唯一、条件 非空:这个列的值不能为空(NOT NULL) 唯一:这个列的值在表中是唯一存在的,不能重复,但可以为空值(NULL) 条件:可以对列的值设定在某个范围内,如人的年龄就不能为负数等。 主键和唯一约束的区别:主键是列的值为表中的唯一标识,不能为空值(NULL),而唯一约束是列的值在表中唯一存在,可以为空值(NULL)。 表的创建 语法结构: CREATE TABLE [schema.]table_name (column datatype [constraint-clause][, column datatype [constraint-clause]] … ) [TABLESPACE tablespace] [PCTFREE integer] [PCTUSED integer]

oracle更改编码

非 Y 不嫁゛ 提交于 2020-03-14 03:44:32
背景: win764bit英文操作系统(支持中文)    oracle11G默认安装    从ZHS16GBK字符集导入数据库 表现: plsql显示为乱码,所有汉字显示为“靠” 解决:1、查看并更改数据库的编码为ZHS16GBK $sqlplus system/oracle SQL> select * from v$nls_parameters; PARAMETER VALUE ------------------------ ----------------------------- NLS_LANGUAGE SIMPLIFIED CHINESE NLS_TERRITORY CHINA NLS_CURRENCY RMB NLS_ISO_CURRENCY CHINA NLS_NUMERIC_CHARACTERS ., NLS_CALENDAR GREGORIAN NLS_DATE_FORMAT DD-MON-RR NLS_DATE_LANGUAGE SIMPLIFIED CHINESE NLS_CHARACTERSET ZHS16GBK NLS_SORT BINARY NLS_TIME_FORMAT HH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF