=======后台Oracle存储过程================

1、创建表

--判读表存在先删除
begin
    EXECUTE IMMEDIATE 'DROP TABLE student';
    EXCEPTION WHEN OTHERS THEN NULL;
end;
/
create table student(
  stuId varchar(50) primary key not null,   --Id
  stuName varchar(50) not null,               --用户名
  stuPwd number(20) not null                  --密码(最后一个不能有逗号)
);
--插入数值
Insert into student values('001','张三',123);
Insert into student values('002','王五',123);
Insert into student values('003','李四',123);
Insert into student values('004','赵六',123);
commit;  --提交
--测试创建表成功
select * from student;

2、创建登陆函数
create or replace function funLogin(name in varchar2,pwd in number)
return varchar2
is
co number;
begin
    select count(*) into co from student
     where stuName=name and stuPwd=pwd;
    if co>1 then
       return '用户'||name||',登陆成功!';
    else
       return '用户'||name||',登陆失败!';
    end if;
end funLogin;
/

3、测试登陆函数
set serveroutput on; --显示输出信息
declare
  name varchar2(50):='张三';
  pwd number(20):=123;
  re varchar2(50);
begin
  select funLogin(name,pwd) into re from dual;
  dbms_output.put_line(re);
end;
/

=======前台程序代码======================

1、在Web.config配置登陆信息

<appSettings >
    <add key="linkOracle_01" value="Data Source=数据库;Persist Security Info=True;User ID=用户名;Password=密码;Unicode=True;" />
  </appSettings>

2、前台Login.aspx

3、后台代码Login.aspx.cs

引用添加NET命名空间

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
//引用-》添加命名空间
using System.Data.OracleClient;
using System.Data;

namespace WebApplication1
{
    public partial class Login : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

}

protected void btnLogin_Click(object sender, EventArgs e)
        {
            //用户名和密码可以从外部输入
            string name = txtName.Text.Trim(); ;
            int pwd = Convert.ToInt32(txtPwd.Text.Trim());

string strConn = System.Configuration.ConfigurationManager.AppSettings["linkOracle_01"].ToString();
            OracleConnection conn = new OracleConnection(strConn);
            OracleCommand cmd = new OracleCommand("funLogin", conn);
            cmd.CommandType = CommandType.StoredProcedure;

//参数
            OracleParameter pName = new OracleParameter("name", OracleType.VarChar, 50);
            pName.Value = name;
            pName.Direction = ParameterDirection.Input;
            OracleParameter pPwd = new OracleParameter("pwd", OracleType.Number, 20);
            pPwd.Value = pwd;
            pPwd.Direction = ParameterDirection.Input;
            //返回值名称可以re随便写
            OracleParameter pRe = new OracleParameter("re", OracleType.VarChar, 50);
            pRe.Direction = ParameterDirection.ReturnValue;

cmd.Parameters.Add(pName);
            cmd.Parameters.Add(pPwd);
            cmd.Parameters.Add(pRe);

conn.Open();
            cmd.ExecuteNonQuery();
            ScriptManager.RegisterStartupScript(this.btnLogin, btnLogin.GetType(),
                "re", "alert('" + pRe.Value.ToString() + "');", true);
            //或者这样注册 返回信息
            //Page.RegisterStartupScript("re", "<script>alert('" + pRe + "')</script>");
            conn.Close();
        }
    }
}

CSharp Oracle 登陆的更多相关文章

  1. Oracle登陆及修改用户密码

    16:20 2013/7/7 Oracle 登陆 管理员登陆 sqlplus sys/root as sysdba (密码认证)这个root是安装数据库最初你输入的口令 sqlplus     /as ...

  2. csharp: Oracle Stored Procedure DAL using ODP.NET

    paging : http://www.codeproject.com/Articles/44858/Custom-Paging-GridView-in-ASP-NET-Oracle https:// ...

  3. oracle登陆的命令是什么?导出数据表的命令是什么?

    登陆的命令: su - oracle sqlplus / as sysdba 导出数据表的命令: exp user/pwd@SID file=path/sth.dmp tables=(table1,t ...

  4. oracle登陆,在监听服务启动了的情况下,登陆用户还是报错未启动监听服务的错误(刚开始装oracle是能登陆的,重启之后装了plsql)

    刚开始装oracle是能登陆的,重启之后装了140M的plsql,所以有可能是plsql跟oracle监听冲突了,所以我之后换了33M的plsql,oracle就没问题了,可以正常登陆了

  5. oracle登陆提示“ora-01031 insufficient privileges”

    本机装了服务端的oracle11.2g,一直没用,中间换过系统的登陆用户.今早发现登陆数据库时发现老提示“ora-01031 insufficient privileges”,以为监听没配置好,试过了 ...

  6. oracle登陆认证方式

    转自:http://blog.itpub.net/14359/viewspace-683064/ 案例: 1,发现此时操作系统认证不成功: C:\Users\Administrator.WIN-201 ...

  7. oracle登陆连接的问题

    一.登陆 1.使用客户端 直接在database中配置: IP:1521/orcl 其中IP为要连接的IP 其中1521为要连接的数据库的端口 其中orcl为要连接的数据库的实例名字 2.使用命令行 ...

  8. CSharp SQLServer 登陆

    =======后台SQLServer存储过程================ --创建数据库create database Stu; --创建表use MyShool;if exists(select ...

  9. oracle登陆触发器及精细审计

    --oracle精细审计FGAselect tab2.userhost 引起操作的主机名,tab2.os_user 引起操作的主机用户,tab2.object_schema 被操作对象所属用户,tab ...

随机推荐

  1. SSH反向连接让外网也可远程访问内网机器

    最近把树莓派折腾了一番,放在了家里,但是家里是内网,出门在外,不方便直接ssh上来,于是请教了秦兄,指点迷津,发现SSH反向链接可以实现这个功能. 1. ssh反向链接的概念 A主机:外网,ip:11 ...

  2. 5大AR应用窥探移动未来~你见过吗?

    摘要:随着可穿戴设备的不断升温,尤其是Google Glass的出现,让AR技术再次走进我们的视线.以下尾随DevStore小编看看这5款优秀的AR应用,有木有闪到你的眼~ 眼下移动开发人员可选的AR ...

  3. [积累]C++复习 海大2014硕士生面试题微信系统总结

    好久没用C++了,正好同学有个面试题,于是就帮忙看了一下.尽管对C++的知识了解不少, 可是长期被Java浸淫, 发现这个简单的程序却也写着也不是那么顺手.好在最后还是搞定了,以下分析一下,题目例如以 ...

  4. OPPO通过AWS节约大量成本提供海外服务

    关于OPPO OPPO最早被人熟知是在以MP3和MP4为代表的影音市场.转型进入手机市场后,OPPO获得了更大发展机遇,近几年更是成为发展速度最快的国产品牌之中的一个.早在2010年前就開始了海外市场 ...

  5. ALV调用的几个标准函数

    ALV的调用主要由以下几个标准函数实现,所有函数的输入输出参数必须大写,否则系统会出现异常中止,相关函数如下: 1)REUSE_ALV_FIENDCATALOG_MERGE:根据内表结构返回FIELD ...

  6. c++/c/java 资源共享群

    Hi,我邀请你加入360云盘文件共享群:c++&c&java, 打开邀请链接:http://qun.yunpan.360.cn/10005202 , 输入邀请码:1357

  7. Nubia Z5S 基于官方H207/4.4内核的Mokee4.4.4 RC3.2 (2014.7.31修复呼吸灯(能亮依旧不能呼吸))

    特别感谢 yun3195 和 轻描淡写Yhw  帮忙測试 转帖请务必注明本链接地址: http://blog.csdn.net/syhost/article/details/36444259 此ROM ...

  8. [Android]图片资源管理学习

    一.概念 几个概念:1.像素:像素是组成图像的最基本单位:点该点自身有大小,其中保存了颜色值 2.屏幕尺寸:screen size手机屏幕的物理尺寸.单位:inch(英寸)ex:4.0英寸 3.8英寸 ...

  9. CentOS上解压ZIP乱码的解决办法

    今天在学校做实验需要解压缩一些范例程序,我准备在我的电脑上把这个实验做完,所以就把文件copy到我的CentOS里面去了. 但是万万没想到``````解压缩的时候悲剧了,用unzip解压出来一大堆乱码 ...

  10. How to convert `ctime` to `datetime` in Python? - Stack Overflow

    How to convert `ctime` to `datetime` in Python? - Stack Overflow How to convert `ctime` to `datetime ...