如果你要把这些刚能写在一个存储过程里面得话,也可以,不过就是麻烦点,你给存储过程设定一个参数,比如@state int if(@state=1) begin //查询功能 end if(@state=2) begin //添加功能 end if(@state=3) begin //修改功能 end if(@state=4) begin //删除功能 end这样就OK了
create or replace procedure menu_proc(r_menuid varchar(10)) IS begin select * from menu where menuid=r_menuid; end xmenu_proc;晕死,我在oracle 9i写下这样的存储过程,可以成功创建但在该存储过程左上角有个X,提示无法使用,怎么回事啊? 权限不够?
修正一下, create or replace procedure menu_proc(r_menuid varchar(10)) IS begin select * from menu where menuid=r_menuid; end menu_proc; 晕死,我在oracle 9i写下这样的存储过程,可以成功创建但在该存储过程左上角有个X,提示无法使用,怎么回事啊? 权限不够?
2. SQL语言分为三中类型:DML,DDL和DCL,上面4种操作属于DML;
3. 增、删、改三种操作当然可以同时放在同一个存储过程中,包括查也可以放在其中。但极少有人这么做,因为这违背了一个过程责任单一的原则,对可读性、可维护性都是非常不利的;
4. 数据库的存储过程的写法,不同的数据库是不同的,Oracle的要用PL/SQL,简单的Stored procedure是很容易写的,建议你找本PL/SQL的书看看,最多一个小时,你就可以掌握Oracle的Stored Procedure是怎么写的;
5. SQL,包括PL/SQL都是很容上手,但忠告是:很容易上手的东西,往往很难精通:)
6. C#在CS里又如何实现数据的操作? 如果没有理解错楼主的问题的话,建议参考:C#访问SQL Server以及数据操作
C#操作Oracle数据库中的数据和此类似,但ConnectString和部分细节会有所不同,这个建议到网上搜搜,很多的。
可以自己搜索一下
if(@state=1)
begin
//查询功能
end
if(@state=2)
begin
//添加功能
end
if(@state=3)
begin
//修改功能
end
if(@state=4)
begin
//删除功能
end这样就OK了
IS
begin
select * from menu where menuid=r_menuid;
end xmenu_proc;晕死,我在oracle 9i写下这样的存储过程,可以成功创建但在该存储过程左上角有个X,提示无法使用,怎么回事啊?
权限不够?
create or replace procedure menu_proc(r_menuid varchar(10))
IS
begin
select * from menu where menuid=r_menuid;
end menu_proc; 晕死,我在oracle 9i写下这样的存储过程,可以成功创建但在该存储过程左上角有个X,提示无法使用,怎么回事啊?
权限不够?
如果一个表中有10个字段,是否无论是什么操作都要传这10个参数分开来写吧,可以把 insert和update 写在一个存储过程
用参数ID是否为空lai判断是插入还是修改