当前位置: 首页 > news >正文

网站现在怎么做排名wordpress 插件官网

网站现在怎么做排名,wordpress 插件官网,重庆建设工程信息网30系统,海曙区网站开发培训存储过程在应用程序端的使用的优点 1 如果sql语句直接写在客户端#xff0c;以一个字符串的形式体现的#xff0c;提示不友好#xff0c;会导致效率降低 2 sql语句写在客户端#xff0c;可以利用sql注入进行攻击#xff0c;为了安全性#xff0c;可以把sql封装在…存储过程在应用程序端的使用的优点 1 如果sql语句直接写在客户端以一个字符串的形式体现的提示不友好会导致效率降低         2 sql语句写在客户端可以利用sql注入进行攻击为了安全性可以把sql封装在服务器存储过程在客户端进行 SQL自定义无参数存储过程 创建存储过程 usp_ScoreQuery1 -- 查询考试成绩显示学号、姓名、班级、总成绩并按成绩的总分高低排序。 -- 统计分析考试成绩显示班级名称、C#平均分、数据库平均分按照班级分组实现。 use SMDBgoif exists (select * from sysobjects where name usp_ScoreQuery1)drop procedure usp_ScoreQuery1gocreate procedure usp_ScoreQuery1as-- 查询考试成绩select Students.StudentId,StudentName,ClassName, ScoreSum (CSharp SqlserverDB) from Studentsinner join StudentClass on StudentClass.ClassId Students.ClassIdinner join ScoreList on ScoreList.StudentId Students.StudentIdorder by ScoreSum DESC-- 分析考试信息select ClassName,C#AvgAVG(CSharp),DBAvgAVG(SqlserverDB) from ScoreListinner join Students on Students.StudentId ScoreList.StudentIdinner join StudentClass on StudentClass.ClassId Students.ClassIdgroup by ClassNameorder by ClassNamego 针对上面实现的效果继续修改改为参数可以带默认值  use SMDB go if exists (select * from sysobjects where name usp_ScoreQuery4) drop procedure usp_ScoreQuery4 go create procedure usp_ScoreQuery4-- 带默认值CSharp int 60,SqlserverDB int 60 asselect Students.StudentId,StudentName,CSharp as C#,SqlserverDB as DB from ScoreListinner join Students on Students.StudentId ScoreList.StudentIdwhere CSharp CSharp or SqlserverDB SqlserverDB go-- 调用参数带默认值的存储过程 use SMDB go exec usp_ScoreQuery4 -- 两个都走的默认值 exec usp_ScoreQuery4 70,80 -- 第二个参数取默认值 exec usp_ScoreQuery4 SqlserverDB 70 -- 第一个参数取默认值 exec usp_ScoreQuery4 default,70 -- 第一个参数取默认值(同上) 3. 自定义带输出参数的存储过程 -- 问题查询考试成绩要求自定义分数线显示查询列表并输出缺考总人数、不及格总人数? use SMDB go if exists (select * from sysobjects where name usp_ScoreQuery5) drop procedure usp_ScoreQuery5 go create procedure usp_ScoreQuery5-- 输出参数习惯输出参数放在输入参数的前面AbsentCount int output, -- 缺考总人数FailCount int output, -- 不及格总人数-- 输入参数CSharp int 60, -- CSharp分数线SqlserverDB int 60 -- SqlserverDB分数线 as-- 查询考试成绩要求自定义分数线select Students.StudentId,StudentName,CSharp as C#,SqlserverDB as DB from ScoreListinner join Students on Students.StudentId ScoreList.StudentIdwhere CSharp CSharp or SqlserverDB SqlserverDB-- 缺考总人数select AbsentCount count(*) from Students where StudentId not in (select StudentId from ScoreList)-- 不及格总人数select FailCount count(*) from ScoreList where CSharp CSharp or SqlserverDB SqlserverDB go-- 调用参数带默认值的存储过程 use SMDB go -- 首先定义输出参数命名可以和上面的保持一致不一样也行 declare AbsentCount int, FailCount int -- 调用存储过程时输出参数后面也必须加上 output 关键字 exec usp_ScoreQuery5 AbsentCount output,FailCount output select AbsentCount as 缺考总人数,FailCount as 不及格总人数 -- 打印一下结果 print AbsentCount print FailCount 链接SQL数据库 public string connString Server.;DataBaseSMDB;Uidsa;Pwd123456; 搭建Winfrom窗体  一无参数的存储过程的调用  不带参数存储过程的使用  1指定存储过程名称         string proceName usp_ScoreQuery5;         2创建指令对象传递连接对象和存储过程         SqlCommand cmd new SqlCommand(proceName,conn);         3 指定指令执行类型         cmd.CommandType CommandType.StoredProcedure;         4 执行指令         SqlDataReader dr cmd.ExecuteReader(); private void button1_Click(object sender, EventArgs e){//1 定义存储过程名称string proceName usp_ScoreQuery1;//2 创建一个指令对象SqlCommand cmd new SqlCommand();//3 添加执行sql语句和设置连接对象cmd.CommandText proceName;// 添加执行的sqlcmd.Connection conn; //设置连接对象//4 执行命令类型cmd.CommandType System.Data.CommandType.StoredProcedure;// 5 取出数据ListModel1 model1s new ListModel1();// 存储第一个表的数据ListModel2 models2 new ListModel2();//存储第二个表的数据try{SqlDataReader dr cmd.ExecuteReader(); // 读取数据库数据while (dr.Read()){model1s.Add(new Model1() { StudentId Convert.ToInt32( dr[StudentId]),StudentName dr[StudentName].ToString(),ClassName dr[ClassName].ToString(),ScoreNum Convert.ToInt32(dr[ScoreSum])});}//如果有第二个数据源 读取第二个selectif (dr.NextResult()){while (dr.Read()){models2.Add(new Model2() {ClassName dr[ClassName].ToString(),CSharpAvg Convert.ToInt32(dr[C#Avg]),DBAvg Convert.ToInt32(dr[DBAvg]),});}}dr.Close();this.dataGridView1.DataSource model1s;this.dataGridView2.DataSource models2;}catch{throw;}} 二带输入参数的存储过程的使用 带输入参数的存储过程的调用 1指定存储过程名称                 string proceName usp_ScoreQuery5;         2创建指令对象传递连接对象和存储过程                 SqlCommand cmd new SqlCommand(proceName,conn);         3 指定指令执行类型                 cmd.CommandType CommandType.StoredProcedure;         4 添加输入参数                 cmd.Parameters.Add(new SqlParameter()                     {                         ParameterName CSharp,                         Direction ParameterDirection.Input,                         SqlDbType SqlDbType.Int,                         Value 80                     });         5执行指令                 SqlDataReader dr cmd.ExecuteReader(); private void button2_Click(object sender, EventArgs e) {//1 指明存储过程string proceName usp_ScoreQuery4;//2 创建指令对象SqlCommand cmd new SqlCommand();//3 设置连接和设置执行过程cmd.Connection conn; cmd.CommandText proceName;//4 执行类型cmd.CommandType CommandType.StoredProcedure;//5 设置输入参数//定义参数方法1SqlParameter csharp new SqlParameter();csharp.ParameterName CSharp;// 设置csharp是存储过程中对应CSharp输入参数csharp.Direction ParameterDirection.Input;//设置为输入参数csharp.Value 180;// 设置参数的值为70csharp.SqlDbType SqlDbType.Int; //设置参数类型cmd.Parameters.Add(csharp); // 把输入参数添加到参数列表里面// 定义参数方法2 SqlserverDBcmd.Parameters.Add(new SqlParameter() { ParameterName SqlserverDB,Direction ParameterDirection.Input,Value 180,SqlDbType SqlDbType.Int,});// 6 获取数据ListModel3 list new ListModel3();try{SqlDataReader dr cmd.ExecuteReader();while (dr.Read()){list.Add(new Model3(){StudentId Convert.ToInt32(dr[StudentId]),StudentName dr[StudentName].ToString(),CSharp Convert.ToInt32(dr[C#]),DB Convert.ToInt32(dr[DB]),});}dr.Close();this.dataGridView1.DataSource list;}catch{throw;} } 三调用带输出参数的存储过程 对应的是model3对象 带输入参数带输出参数的调用 添加输出参数即可      cmd.Parameters.Add(new SqlParameter()             {                 ParameterName AbsentCount,                 Direction ParameterDirection.Output,                 SqlDbType SqlDbType.Int,             });    获取输出参数的值         cmd.Parameters[AbsentCount].Value.ToString() private void button3_Click(object sender, EventArgs e) {string proceName usp_ScoreQuery5;SqlCommand cmd new SqlCommand(proceName,conn);//cmd.CommandText proceName;//cmd.Connection conn;cmd.CommandType CommandType.StoredProcedure;//设置输出参数cmd.Parameters.Add(new SqlParameter() { ParameterName AbsentCount,Direction ParameterDirection.Output,SqlDbTypeSqlDbType.Int,});cmd.Parameters.Add(new SqlParameter(){ParameterName FailCount,Direction ParameterDirection.Output,SqlDbType SqlDbType.Int,});//输入参数cmd.Parameters.Add(new SqlParameter(){ParameterName CSharp,Direction ParameterDirection.Input,SqlDbType SqlDbType.Int,Value 80});cmd.Parameters.Add(new SqlParameter(){ParameterName SqlserverDB,Direction ParameterDirection.Input,SqlDbType SqlDbType.Int,Value 80});//取数据ListModel3 list new ListModel3();SqlDataReader dr cmd.ExecuteReader();while (dr.Read()){list.Add(new Model3(){StudentId Convert.ToInt32(dr[StudentId]),StudentName dr[StudentName].ToString(),CSharp Convert.ToInt32(dr[C#]),DB Convert.ToInt32(dr[DB]),});}dr.Close();this.dataGridView1.DataSource list;//输出参数的值怎么取 缺考总人数? 不及格人数?this.label1.Text 缺考总人数: cmd.Parameters[AbsentCount].Value.ToString() 人;this.label2.Text 不及格总人数: cmd.Parameters[FailCount].Value.ToString() 人; }
http://www.tj-hxxt.cn/news/134516.html

相关文章:

  • 什么网站可以学习建设工程法律实践软件开发的工作内容
  • seo外贸网站长沙网页设计哪个公司好
  • 官方网站建设银行在什么网站可以接活做
  • 社保局网站建设意义网站在别人那里已经建好了_公司里要进行修改_怎么做
  • 网站开发需要学什么技能wordpress修改登录地址
  • 做版权保护的网站seo查询seo
  • 中国企业网站西安手机网站建设动力无限
  • 长沙企业建站招聘信息网站搜索引擎收录
  • 公司要做网站网站建设代理网站
  • 资阳的网站建设奉城网站建设
  • 杭州拱墅区网站建设小浣熊做单网站
  • 建设网站用图片需要版权做可视化的网站
  • 徐州网站建设网络推广做电商没几个能赚钱的
  • 做网站语言最好网站图片特效代码
  • 创建网站超市国内vps做网站备案
  • 新网站建设的流程百度推广技巧
  • 织梦cms网站更新常州网签备案查询
  • 济南的网站建设公司哪家好响应式网站和自适应
  • 外贸移动商城网站建设中国企业500强入围标准
  • 龙岩网站推广公司wordpress获取文章id方法
  • 5网站建设公司flash网站建设教程视频
  • 天津建设集团网站深圳网站设计兴田德润放心
  • 做常州美食网站首页的背景图电子商城网站的设计与实现
  • 网站备案的规划方案wordpress菜单美化插件
  • 制作网站对话框孵化器网站建设方案
  • 甘肃省建设局网站首页华为荣耀手机官网
  • php做网站框架wordpress 媒体分类
  • 网站群站优化阿里云网站模板
  • 检察门户网站建设管理咨询公司税收优惠
  • 广东网站建设wordpress 小工具 插件