
然后先执行
create
procedure
proc_insert
@name
varchar(50)
as
begin
insert
into
test
values(@name)--插入数据
end
go
create
procedure
proc_update
@newname
varchar(50),@oldname
varchar(50)
as
begin
update
test
set
name=@newname
where
name=@oldname--更新数据
end
go
--其中proc_insert为存储过程名,可自定义
procedure可使用简写proc
上面执行完成后调用存储过程
exec
proc_insert
'晓华'茄基陪--将"晓华"添加到test表中
exec
proc_update
'小明','晓华'
--将表中'晓华'
改为'小明',必须与存储过程变量顺序相同
exec
proc_update
@oldname='小颤蠢明',@newname='晓华'--与锋握存储过程变量顺序可以不同
drop
procedure
proc_insert
删除存储过程proc_insert
实际上存储过程向表中插入数据和sql执行的缺孙区别是不大的,只不过银扮陪是存储过程是用loop等循环插入,之后顺序执行sql语句,不用命令行执行。
CREATE OR REPLACE PROCEDURE insert_data_4_pressure_3is
--Result1 VARCHAR2(50)
VAR_num number
begin
VAR_num:=1
while
VAR_num< 1000000
LOOP
insert into rp_trans_log_day
(trans_time,
锋蠢 trans_province,
trans_type,
score_range,
rule_name,
trans_num)
select to_date('2013/10/29', 'yyyy-mm-dd'),
round(dbms_random.value(1, 300)) || '省',
round(dbms_random.value(1, 800)) || '类型',
round(dbms_random.value(1, 100)) || '风险分值',
round(dbms_random.value(1, 300)) || '规则名称',
'1'
from dual
commit
VAR_num:=VAR_num+1
end loop
end insert_data_4_pressure_3
//使用SqlDataAdapter调用存储过程(主要应用于查询)private void Form1_Load(object sender, EventArgs e)//窗口加载事件桐高
{
SqlConnection conn = null//声明SqlConnection,用于连接数据库
try
{
conn = new SqlConnection("server=.database=要连接的数据库名uid=登陆数据库的账号pwd=登录数据库的密码")
SqlDataAdapter sda = new SqlDataAdapter("proc_SelectAllStuInfo",conn)//声明SqlDataAdapter适配器,括号里的第一个参数是要掉的存储过程的名字,第二个参数是连接数据库的Conn。
DataSet ds = new DataSet()//new一个DataSet数据集(临时仓库)
sda.Fill(ds)//把适配器里的结果填充到DataSet里
DataTable dt = ds.Tables[0]//创建一中陪个DataTable获取DataSet里的数据
this.dgvStuInfo.DataSource = dt//把DataTable中的数据绑定到卖轮蠢DataGridView中
}
//抓异常
catch (Exception ex)
{
MessageBox.Show(ex.Message)
return
}
finally
{
conn.Close()//最后关闭数据库连接
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)