首页 电脑 电脑学堂 查看内容

经典必收藏的sql应用案例

2011-7-12 11:18 626 0

摘要:   exec sp_password null,'123','sa'  alter login sa enable  go  drop database _110studb  go  create d...
关键词: student grade select insert stuid values into studb 2011 MessageBox

  exec sp_password null,'123','sa'  alter login sa enable  go  drop database _110studb  go  create database _1101studb  on  (  name='studb_data',  filename='D:\08203\studb_data.mdf',  size=5mb,  maxsize=100mb,  filegrowth=5mb  )  log on  (  name='studb_log',  filename='D:\08203\studb_data.ldf',  size=3mb,  filegrowth=10%  )  go  use _1101studb  go  create table student  (  stuid int identity(1001,1) primary key,  stuname nvarchar(20) not null,  sex char(2),  birthday datetime,  stuno varchar(20),  remark text  )  go  --删除  drop table student  go  select * from student  select * from student  --插入数据  insert into student(stuname,sex,birthday,stuno,remark)  values('韩语','男','2011-1-1','20110101','计算机')  insert into student(stuname,sex,birthday,stuno,remark)  values('李玉','男','2011-2-2','20111012','计算机')  insert into student values('李海','男','2011-3-2','20111033','外语')  insert into student values('占小河','女','2011-4-4','20110303','法学')  insert into student values('王思','女','2011-2-4','20110404','历史')  insert into student values('可依','女','2011-8-7','20110713','广告学')  insert into student values('李小婉','女','2011-1-12','20110833','电信')  go  create table grade  (  gradeid int identity(101,1) primary key,  score float,  stuid int,  crousename nvarchar(20)  )  --1001  insert into grade values('80.5','1001','语文')  insert into grade values('85','1001','数学')  insert into grade values('98.6','1001','英语')  --1002  insert into grade values('84','1002','语文')  insert into grade values('85.4','1002','数学')  --1003  insert into grade values('78.4','1003','语文')  insert into grade values('54','1003','数学')  insert into grade values('64','1003','英语')  --1004  insert into grade values('65','1004','语文')  insert into grade values('33','1004','数学')  insert into grade values('33','1004','英语')  -1005  insert into grade values('78','1005','语文')  insert into grade alues('24','1005','数学')  insert into grade alues('98','1005','英语')  --聚合函数  --count(),max(),sum(),avg(),min()  --查询成绩表里又少条记录  select count(*) from grade  --count(列名)要比count(*)执行效率要高  select count(0) from grade  select count(2) from grade  --查询所有成绩额度总分  select sum(score) 全部总分 from grade  select avg(score) 全部平均分 from gradee  --链接查询  --inner join  select * from student  inner join grade  --on 后面连接条件  on student.stuid=grade.stuid  --左外连接  --left join grade  select * from student  left join grade  on student.stuid=grade.stuid  --右外连  --right join  select * from student  right join grade  on student.stuid=grade.stuid  --给表起别名  select * from stuent a  right join grade b  on a.stuid=b.stuid  --查询分数最高额学生信息  select * from student where stuid  in  (  select stuid from grade where score=  (select max(score) from grade)  )  --查询出id号为1001,1003,1004,1005的学生的信息  --in  select * from student  where stuid  in(1001,1003,1004,1005)  --查询出语文成绩及格的学生信息  select * from student  where stuid in  (select stuid from grade where crousename='语文' and scose>60 )  --查询表中前4条记录  -top  select top 4 * from student  select top 4 stuno,stuname from student  select top(4) * from student  --查询表的第3条到第5条记录  --不再前两条,的前三条  select top 3 * from student  where stuid not in  (  select top 2 stuid from student  )  --分组  --统计每个学生的总分数  --group by  select * from student  inner join  (  select stuid,sum(score) as '总分数' from grade  group by stuid  ) b  on a.stuid=b.stuid  --统计每个学生的平均分  --给性别为女的学生成绩加5分  update grade  set score=score+5  where stuid in  (select stuid from student where sex='女')  --所有女生的信息  select a.stuid,stuname,birthday,stuno,sex,remark,score from student a  inner join grade b  on a.stuid=b.stuid and sex='女'  8:57 2011-7-11  use master  go  create database _1102studb  on  (  name='_1102studb_data',  filename='d:\08203\_1102studb_data.mdf',  size=5mb,  maxsize=100mb,  filegrowth=5mb  )  log  on  (  name='_1102studb_log',  filename='d:\08203\_1102studb_data.ldf',  size=4mb,  filegrowth=5%  )  go  use _1102studb  go  create table student  (  stuid int identity(1001,1) primary key,  stuname nvarchar(20) not null,  sex char(2),  birthday datetime,  stuno varchar(20),  remark text  )  go  insert into student values('韩愈','男','2011-1-1','20112033','计算机')  insert into student values('李小婉','女','2011-3-3','20112034','法学')  insert into student values('韩三','男','2011-5-5','20112035','生科')  insert into student values('无何','女','2011-5-3','20112036','计算机')  insert into student values('海风','男','2011-9-9','20112037','计算机')  select * from student  c#---------------------------  --Button  string s1=textBox1.text;  string s2=textBox2.text;  int i1,i2;  if(int.TryParse(s1,out i1)==false)  {  MessageBox.Show("输入的不是数字");  }  if(int.TryParse(s2,out s2==false))  {  MessageBox.Show("输入的不是整数");  }  int i3=i1+i2;  textBox3.Text=Convert.ToString(i3);  emain分析  String email=textBox1.Text;  Sring[] strs=email.Split('@');  if(strs.Length!=2)  {  MessageBox.Show("非法的email地址");  return;  }  textBox2.Text=strs[0];  textBox3.Text=strs[1];  ---数字累加器  String s1=textBox1.Text;  String s2=textBox2.Text;  int i1,i2;  if(int.TryParse(s1,out i1)==false)  {  MessageBox.Show("请输入数字");  return;  }  if(int.TryParse(s2,out i2)==false)  {  MessageBox.Show("输入的不是数字");  return;  }  if(i1>=i2)  {  int i3 = i1;  i1 = i2;  i2 = i3;  }  int sum=0;  for (int i = i1;i<= i2;i++)  {  sum+=i;  }  textBox3.Text =Convert.ToString(sum);  ---登录框  String oldPwd = txt_old.Text;  String newPwd = txt_new.Text;  String newPwd2= txt_new2.Text;  if (oldPwd != "123")  {  MessageBox.Show("旧密码错误");  return;  }  if (newPwd != newPwd2)  {  MessageBox.Show("两次密码输入一样");  return;  }  MessageBox.Show("修改成功");  ---学生信息管理系统  String user = textBox1.Text;  String pass = textBox2.Text;  String sql=string.Format("select count(1) from student where stuname='{0}' and stuno='{1}'",user,pwd);  String connStr = "server=.;databs=_1102studb;uid=sa,pwd=123 ";  SqlConnection conn = new SqlConnection();  //window 用户登录  String connStr = "server=.;databs=_1102studb;integrated;security=true";  //制定这个连接对象的连接字符串  conn.ConnectionString = connStr;  //打开这个连接,使用sql语句可以在上面执行  conn.Open();  //新建一个专门执行sql命令的对象  SqlCommand cmd = new SqlCommand();  //执行,什么命令  cmd.CommandText =sql;  //在那个连接上执行  cmd.Connection=conn;  //开始执行  Object  obj = cmd.ExecuteScalar( );  int count=Convert.ToInt32(obj);  if(count>0)  {  MessageBox.Show("登录成功");  form2 f2=new Form2();  f2.Show();  this.Hide();  }else  {  MessageBox.Show("登录失败");
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部