1.Oracle连接远程服务器,需要安装客户端的同时需要覆盖D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora文件。
如果连接不上,可以重启OracleServiceORCL服务。如下图:
oracle数据库的服务需要开启。
。create or replace view 视图名称。简单视图可以实现DML操作
. oracle 中没有自增长列,MySQL中有。
.nvl 相当于mssql里面的isnull。
.to_char(sysdate,'yyyy-mm-dd') 相当于mssql里面的convert(getdate(),'yyyy-mm-dd');TO_DATE 相当于Year(),Month(),Day()
. decode(isautocreate,,'是','否');decode(name,'zhangsan','张三','lisi','李四'[,'No Name'])有点类似case when语句。
.|| 类型mssql里面的 + 连接符。rownum 相当于top
sysdate 相当于mssql里面的getdate();
.ORACLE多表关联的update语句。http://www.examda.com/oracle/zhonghe/20100103/094306360.html
.Mssql中可以select id,* from tb 而在orcale数据库中select t.*, t.id from tb t;
.在pl/sql里面insert,delete,update数据时,一定要记住结尾加上commit。
。create or replace view 视图名称。简单视图可以实现DML操作
. oracle 中没有自增长列,MySQL中有。
.nvl 相当于mssql里面的isnull。
.to_char(sysdate,'yyyy-mm-dd') 相当于mssql里面的convert(getdate(),'yyyy-mm-dd');TO_DATE 相当于Year(),Month(),Day()
. decode(isautocreate,,'是','否');decode(name,'zhangsan','张三','lisi','李四'[,'No Name'])有点类似case when语句。
.|| 类型mssql里面的 + 连接符。rownum 相当于top
sysdate 相当于mssql里面的getdate();
.ORACLE多表关联的update语句。http://www.examda.com/oracle/zhonghe/20100103/094306360.html
.oraccle数据量insert和delete和update语句的时候,一定要commit;
.关于group by的问题:():不在聚合函数里面的字段,一定要在group by 字句中。select id ,name form a group by id,name(正) select id,name from a group by id(错)
():在group by里面的字段,不一定要全部出现在字段列表里面,但必须有一个聚合函数。select id,count(*) from a group by id,name(正)
.Oracle中如何实现某一字段自动增加1?
实现方法: 建立一个最小为1,最大为999999999的一个序列号会自动循环的序列
create sequence 序列名
increment by
start with
maxvalue
cycle; 当向表中插入数据时,SQL语句写法如下: SQL> insert into 表名 values(序列名.nextval,列1值,列2值);
.用户控件找到所在的父窗体。
//Form frm = this.FindForm();
frmF1ReportConfig config = (frmF1ReportConfig)this.FindForm();
.oracle 数据库中【子查询】表的别名不可以用as,子查询后面的表别名可有可无;sql数据库中的【子查询】必须要出现别名。
oracle数据库中列的别名双引号可有可无。
select * from(select sysdate from dual) as "A"(错)
select * from(select sysdate from dual) as A(错)
select * from(select sysdate from dual)(正)
select * from(select sysdate from dual) A (正)
select sysdate as "时间" from dual(正)
select sysdate 时间 from dual(正)
select sysdate as 时间 from dual(正)
.在pl/sql里面,如果想手动修改一条select查询出来的记录。需要查询rowid列。 seelct t.rowid,t.* from table t;
. 无法初始化 Oracle 调用界面+ ORACLE 不能正常工作.
解决:对PL/SQL图标右键,属性---兼容性--在以管理员身份进入的地方打勾,再次运行PL/SQL
. having 子句中的每一个元素也必须出现在select列表中。有些数据库例外,如oracle.