Sql Block这次直接发代码. 看有多少人有兴趣.

Aking1983 2003-10-15 09:06:46
/*
This computer source code is Copyright 2003 AmoyStudio

All Rights Reserved.

Permission to use, copy, modify, and distribute this computer source code (Source Code),
but .Don't forget add this CopyRight info into source...
it's a freeware.. enjoy

btw: If you modified this code , you'd better send it to me .I will add it and republicsh it to everybody.Sure,I will sign your name too...

Use Example:

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.simply Exec Sqlstr:
public void DoSql()
{
SqlOperator.oSqlConnStr=@"password=noneed;user id=albert;data source=218.5.74.183;initial catalog=Albert"//<----Define default Connection string for this Appliction ,one Appliction only need define .in one place.

using(SqlOperator myOperator=new SqlStr("select * from Test"))
{
myOperator.Exec();
}
}

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------


----------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.simply Exec SPr:
public void DoSqlSP()
{
SqlOperator.oSqlConnStr=@"password=noneed;user id=albert;data source=218.5.74.183;initial catalog=Albert"//<----Define default Connection string for this Appliction

using(SqlOperator myOperator=new SqlSP("SP Name"))
{
myOperator.AddP("ParameterName",Value)
myOperator.AddP("ParameterName2",Value)
myOperator.AddP("ParameterName3",Value)
myOperator.Exec();
}
}

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------


Melancholy
2003 Oct 10
Msn:aking83@msn.com

(Welcome Any Question,Any Ideal ^_^ )



版权信息:
恩。 小小的一个小东西没什么。
这份代码你可以任意修改,使用,发布。。。 :)enjoy
如果你修改了代码。。 如果你愿意,最好也能mail一份给我:)我将会把它添加到新的版本中。 让别人下载的:)

Melancholy
2003 Oct 10
Msn:aking83@msn.com

(Welcome Any Question,Any Ideal ^_^ )

*/

using System;
using System.Data.SqlClient;
using System.Data;

namespace AS.ToolBox
{
/// <summary>
/// Summary description for SqlToolClass.
/// </summary>
public abstract class SqlOperator:System.IDisposable
{
#region Public Var
/// <summary>
/// oSqlConnStr这个静态变量在整个程序里面只有赋值一次。。。 就可以全部用了。
/// 在WEBFROM里面。 我推荐放在。。。Global.asax.cs里面。。
/// </summary>
public static string oSqlConnStr;
public SqlConnection oSqlConn=null;
public SqlCommand oSqlCommand=null;
#endregion

#region Private Var
private SqlDataReader oSQLDataReader=null;
private SqlDataAdapter opSDA=null;
private DataSet opDS=null;
private bool disposed = false;
#endregion




#region
public SqlOperator()
{
oSqlConn=new SqlConnection(oSqlConnStr);
oSqlCommand=oSqlConn.CreateCommand();
oSqlCommand.Connection=oSqlConn;
if(ConnectionState.Open!=oSqlConn.State)
{
oSqlConn.Open();
}
else
{
oSqlConn.Close();
oSqlConn.Open();
}

}

public SqlOperator(string sConnString)
{
oSqlConn=new SqlConnection(oSqlConnStr);
oSqlConn.ConnectionString=sConnString;

oSqlCommand=oSqlConn.CreateCommand();
oSqlCommand.Connection=oSqlConn;
if(ConnectionState.Open!=oSqlConn.State)
{
oSqlConn.Open();
}
else
{
oSqlConn.Close();
oSqlConn.Open();
}

}

#endregion


#region
/// <summary>
/// 执行不返回
/// </summary>
public void Exec()
{

oSqlCommand.ExecuteNonQuery();

}
/// <summary>
/// 执行返回单值
/// </summary>
/// <returns></returns>
public object ExecOneValue()
{

object oTemp=null;

oTemp=oSqlCommand.ExecuteScalar();

return oTemp;
}
/// <summary>
/// 返回DATASET
/// </summary>
/// <returns></returns>
public DataSet ExecGetDataSet()
{
if(opDS==null)
{
opDS=new DataSet();
}

if(opSDA==null)
{
opSDA=new SqlDataAdapter(oSqlCommand);
}

opSDA.Fill(opDS);

return opDS;
}

/// <summary>
/// 返回DATAREADER
/// </summary>
/// <returns></returns>
public SqlDataReader ExecGetDataReader()
{
oSQLDataReader=oSqlCommand.ExecuteReader();
return oSQLDataReader;
}
#endregion


public void Dispose()
{
Dispose(true);
}

protected void Dispose(bool disposing)
{
if(!this.disposed)
{

if(disposing)
{
//Components.Dispose();
}
if(oSQLDataReader!=null)
{
if(!oSQLDataReader.IsClosed)
{
oSQLDataReader.Close();
}

}
oSqlConn.Close();
oSqlConn=null;
oSqlCommand=null;
opSDA=null;

}
this.disposed = true;
}

~ SqlOperator()
{
Dispose(false);
}

}

public class SqlStr:SqlOperator
{
private SqlStr() : base()
{

}
public SqlStr(string sSqlstr):base()
{
oSqlCommand.CommandText = sSqlstr;
oSqlCommand.CommandType = CommandType.Text;
}

public SqlStr(string sSqlstr,string sConnSql):base(sConnSql)
{
oSqlCommand.CommandText = sSqlstr;
oSqlCommand.CommandType = CommandType.Text;
}

}
public class SqlSP:SqlOperator
{
private SqlSP():base()
{

}

public SqlSP(string SPName)
{
oSqlCommand.CommandText = SPName;
oSqlCommand.CommandType = CommandType.StoredProcedure;
}
public SqlSP(string SPName,string sConnSql):base(sConnSql)
{
oSqlCommand.CommandText = SPName;
oSqlCommand.CommandType = CommandType.StoredProcedure;
}

/// <summary>
/// 很简单的添加参数。
/// </summary>
/// <param name="ParameterName"></param>
/// <param name="ParameterValue"></param>
public void AddP(string ParameterName,object ParameterValue)
{
SqlParameter oSParameter =new SqlParameter(ParameterName,ParameterValue);
oSqlCommand.Parameters.Add(oSParameter);
}

/// <summary>
/// 这个函数会自动把字符串的""转换成null不要乱用。
/// </summary>
/// <param name="ParameterName"></param>
/// <param name="ParameterValue"></param>
/// <param name="ValueDbType"></param>
/// <param name="ValueLength"></param>
/// <param name="IsNullAble"></param>
public void AddP(string ParameterName,object ParameterValue,SqlDbType ValueDbType,int ValueLength,bool IsNullAble)
{
SqlParameter oSParameter =new SqlParameter(ParameterName,ValueDbType,ValueLength);
oSParameter.IsNullable=IsNullAble;
if(!(ParameterValue.ToString()==""))
{
oSParameter.Value=ParameterValue;
}
else
{
oSParameter.Value=DBNull.Value;
}
oSqlCommand.Parameters.Add(oSParameter);
}
}

}
...全文
34 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ninefive 2003-10-15
  • 打赏
  • 举报
回复

偶不懂
偶学习……
本数据库(oracle)7个实验报告用于和大家交流,我将这次报告所需要的表和数据材料能够拿出来的都放了在同一个包里的,希望大家能够去看看并且多提点意见,同时我将第一个报告(手工创建数据库库)的记录也放在了包里的,其他的实验报告的部分资料在我的电脑里没有办法拿出来哈,其中有部分代码如果有同学我也可以给大家哈如果大家有兴趣可以和我联系共同交流哈,希望大家多指教多提意见和建议。 实验过程: 备注:要用记事本保存记录 spool E:\app\oracle\copy\1.txt spool off; 1、设置系统环境变量: ORACLE_HOME=E:\app\oracle\product\11.1.0\db_1 ORACLE_BASE=E:\app\oracle 2、手工创建目录: E:\app\oracle\admin\mydb\adump E:\app\oracle\admin\mydb\bdump E:\app\oracle\admin\mydb\cdump E:\app\oracle\admin\mydb\udump E:\app\oracle\admin\mydb\arch E:\app\oracle\admin\mydb\create E:\app\oracle\oradata\mydb 3、创建初始化参数文件:(特权模式) create pfile from spfile; mydb.__db_cache_size=348127232 mydb.__java_pool_size=12582912 mydb.__large_pool_size=4194304 mydb.__oracle_base='E:\\app\\oracle'#ORACLE_BASE set from environment mydb.__pga_aggregate_target=322961408 orcl.__sga_target=536870912 mydb.__shared_io_pool_size=0 orcl.__shared_pool_size=163577856 orcl.__streams_pool_size=0 *.audit_file_dest='E:\\app\\oracle\\admin\\mydb\\adump' *.audit_trail='db' *.compatible='11.1.0.0.0' *.control_files='E:\\app\\oracle\\oradata\\mydb\\control01.ctl', 'E:\app\oracle\oradata\mydb\control02.ctl','E:\app\oracle\oradata\mydb\control03.ctl' *.db_block_size=8192 *.db_domain='' *.db_name='mydb' *.db_recovery_file_dest='E:\\app\\oracle\\flash_recovery_area' *.db_recovery_file_dest_size=2147483648 *.diagnostic_dest='E:\\app\\oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' *.memory_target=857735168 *.open_cursors=300 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.undo_tablespace='UNDOTBS1' 4、创建实例与密码文件 oradim -new -sid mydb -startmode manual -intpwd mydb -pfile E:\app\oracle\product\11.1.0\db_1\database\initmydb.ora orapwd file=E:\app\oracle\product\11.1.0\db_1\database\pwdmydb.ora password=ora entries=5; 5、启动实例: set oracle_sid=mydb sqlplus/nolog conn sys/mydb as sysdba startup nomount pfile='E:\\app\\oracle\\product\\11.1.0\\db_1\\database\\initmydb.ora' 6、创建数据文件脚本 create database mydb controlfile reuse maxinstances 1 maxdatafiles 100 maxlogfiles 5 maxlogmembers 5 maxloghistory 2 logfile 'E:\app\oracle\oradata\mydb\log01.log' size 10m, 'E:\app\oracle\oradata\mydb\log02.log' size 10m, 'E:\app\oracle\oradata\mydb\log03.log' size 10m datafile 'E:\app\oracle\oradata\mydb\system01.dbf' size 100M reuse autoextend on next 10M maxsize 200M sysaux datafile 'E:\app\oracle\oradata\mydb\sysaux01.dbf' size 100M default tablespace user01 datafile 'E:\app\oracle\oradata\mydb\user01.dbf' size 10M reuse default temporary tablespace temp tempfile 'E:\app\oracle\oradata\mydb\temp01.dbf' size 10M reuse undo tablespace UNDOTBS1 datafile 'E:\app\oracle\oradata\mydb\undotbs1.dbf' size 10m character set ZHS16GBK national character set AL16UTF16 7、创建额外表空间 alter user system temporary tablespace temp; alter user system default tablespace users01; 8、 创建数据字典 start E:\app\oracle\product\11.1.0\db_1\RDBMS\ADMIN\catalog.sql 9、创建package 包 start E:\app\oracle\product\11.1.0\db_1\RDBMS\ADMIN\catproc.sql 10、实验结果如图:

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧