Oracle动态SQL语句
在使用ODP.NET进行Oracle编程时,有时候SQL语句非常复杂,需要采用动态构造查询语句的情况,有两种方法可以构造动态的SQL语句,并执行返回结果集。
1、在数据访问层构造SQL语句
例如下面的语句,将构造完整的SQL语句赋值给CommandText,再传递到数据库进行执行,返回结果集。
loadCommand.CommandType = CommandType.Text
loadCommand.CommandText = "Select * from Users"
dataAdapter .SelectCommand = loadCommand
dataAdapter . Fill(data)
dataAdapter .SelectCommand = loadCommand
dataAdapter . Fill(data)
该方法需要将整个SQL的构造过程放在DataAccess层,业务逻辑发生变化,修改不方便,而且每次查询需要传递给数据库很长的查询字符串,传递参数的效率也不高。
2、在存储过程中构造动态SQL语句并执行
以下为一个完整的事例(经过删减),其中RefCursor 为自定义游标类型
PROCEDURE G_Search(P_YearNO IN NUMBER,
P_ControlType IN NUMBER,
P_Progress IN CHAR,
P_DepartID IN VARCHAR2,
P_ProjectName IN NVARCHAR2,
&n
相关文档:
--1.在目标服务器上建立如下对象(被同步的服务器)
if exists (select * from dbo.sysobjects where id = object_id(N'[sys_syscomments_bak]') and OBJECTPROPERTY(id, N'IsUserTable')   ......
系统环境:windows xp pro
数据库:MS Sql 2000
IIS: 5.1 ASP.NET2.0
因为代码是2.0.net的,没有办法只好安装了.net下载你可以去微软的网站上去下载.这个是免费的软件,我知道的是免费的。
数据库做了压缩后缀是bak的,所以数据库不能直接使用,需要导入在网上查了很多的资料但是不多,但自己成功导入了,写下来做一个备 ......
大批量插入数据时 1,myisam表,可以先通过 alter table table_name disable keys;#先关闭表的索引检查,注意是非唯一索引! load data infile ‘/path/file’ into table table_name; alter table table_name anable keys;#再打开索引 可大大加快导入.还有可以设置bulk_insert_buffer_size值来提高插入速度 ......
写程序的人,往往需要分析所写的SQL语句是否已经优化过了,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了。
通过设置STATISTICS我们可以查看执行SQL时的系统情况。选项有PROFILE,IO ,TIME。介绍如下:
SET STATISTICS PROFILE ON:显示分析 ......
1.在查询分析器下查询Excel文档
Select * from
OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source = "c:\测试.xls";User ID = Admin;Password=;Extended properties=Excel8.0)....Sheet1$
2.从数据库中导出数据并存到文件中
EXEC master..xp_cmdshell 'bcp CAS2004..HGZ_LIAOJIAN out c:\temp1.xls -c -q -S"."- ......