随笔分类 - sql
摘要:当修改数据库时出现错误: The database could not be exclusively locked to perform the operation. 以下方法可解决: ALTER DATABASE spide SET SINGLE_USER WITH ROLLBACK IMMEDIATE alter database spide modify name = spider...
阅读全文
摘要:学生表:ssid sname1 s12 s23 s3课程表:ccid cname1 c12 c2选课表:scsid cid1 12 11 2查询选修了课程的学生:select * from s where exists(select * from sc where s.sid=sid)exists查询过程:先执行主查询, select * from s , 然后用主查询的每一条记录的sid与表sc中的sid作相等比较(如果与选课表第一条记录不相等,则继续往下查找,如果找到,就不往下查找了,找到返回true,没有找到则返回false),如果相等,返回真, 就筛选出这条记录.ex...
阅读全文
摘要:内连接 外连接 全连接 交叉连接 自身连接:内连接:有三种写法.1. select * from A,B where A.id=B.id 这是我们平时用得最多的.(WHERE子句中使用的连接语句,在数据库语言中,被称为隐性连接。INNER JOIN……ON子句产生的连接称为显性连接。(其他JOIN参数也是显性连接)WHERE 和INNER JOIN产生的连接关系,没有本质区别,结果也一样。但是!隐性连接随着数据库语言的规范和发展,已经逐渐被淘汰,比较新的数据库语言基本上已经抛弃了隐性连接,全部采用显性连接了。)2. select * from A join B on A.id=B.id3. s
阅读全文
摘要:1select * from tbuser where username is not null 不能:username=nullselect * from tbuser where usernameis null2select merchanttypeid, COUNT(integral) from tbmerchantinfo错误:选择列表中的列 'tbmerchantinfo.merchanttypeid' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。select count(integral) from tbmerchantinfo 是可以的.正确:s
阅读全文
摘要:网站Web.config中:<add name="connStr" connectionString="Data Source=.\sqlexpress;AttachDbFilename=|DataDirectory|music.mdf;Integrated Security=True;User Instance=False"/>这种写法,表示调用文件夹下App_Data中music.mdf数据库,而且这个数据库不用手动附加到sql express, 它会自动附加.如果手动附加,会出现错误:在数据库 'master' 中拒绝了
阅读全文
摘要:,sp_executesql 的参数必须为UNICODE,即NCHAR,NVARCHAR,NTEXT型,否则报错动态sql语句基本语法1 :普通SQL语句可以用Exec执行Select * from tableNameExec('select * from tableName')Exec sp_executesql N'select * from tableName' --请注意字符串前一定要加N存储过程可以返回的不仅仅是查询的结果,也可以是一个指示了存储过程的成功或失败的标识,我们可以利用return来返回这个标识,return的工作方式不管一个存储过程是否提
阅读全文
摘要:示例一SELECT 学号, 姓名,等级= CASE WHEN 总学分 IS NULL THEN ‘尚未选课’ WHEN 总学分 < 50 THEN ‘不及格’ WHEN 总学分 >=50 and 总学分<=52 THEN ‘合格’ ELSE ‘优秀’ END FROM XS WHERE 专业名=’计算机’示例二update employeeset e_wage =case when job_level = ’1’ then e_wage*1.08 when job_level = ’2’ then e_wage*1.07 when job_level = ’3’ then e
阅读全文