-
asp.net连接查询SQL数据库并把结果显示在网页上(2种方法)
在ASP.NET中,使用C#连接SQL数据库,并使用SQL语句查询,以前从来没有接触过C#,最近用到了,摸索了两天终于运行起来了,Mark一下,不喜勿喷有两种方法:(说的是第一种方法不安全,我也不清楚^_^)第一种方法:复制代码代码如下://建立ASP.NETWeb应用程序,直接在Page_load函数中加入一下代码,貌似就可以用了publicvoidPage_Load(objectsender,EventArgse){using(SqlConnectioncon=newSqlConnection("DataSource=.;uid=sa;pwd=sa;Database=NorthWind")){stringusername="forever";stringstrSQL="select*fromtablewherename='"+username+"'";SqlDataAdapteradapter=newSqlDataAdapter(strSQL,con);DataSetds=newDataSet();adapter.Fill(ds);foreach(DataRowViewdrvind...
数据库操作教程 2022-09-23 17:16:15 -
SQLServer跨库查询实现方法
本文给出一条SQL语句用于展示在同一名服务器上,不同的数据库间查询,注意当前连接用户要对两个库都有权限SQLServer中SQL语句中对象的完整表达式是:[DatabaseServer].[DatabaseName].[DatabaseSchema].[DatabaseObject]本文给出一条SQL语句用于展示在同一名服务器上,不同的数据库间查询,注意当前连接用户要对两个库都有权限。复制代码代码如下:select*fromCfteaDb1.dbo.CfteaTable1innerjoinCfteaDb2.dbo.CfteaTable2onCfteaDb1.dbo.CfteaTable1.Id=CfteaDb2.dbo.CfteaTable2.Id以上在SQLServer2008R2的ManagementStudio中测试成功...
数据库操作教程 2022-09-23 17:16:11 -
分享:在存储过程中使用另一个存储过程返回的查询结果集的方法
很多查询类的存储过程会返回一个表结构的结果集,如果在其他存储过程中需要用到这个结果集,为了避免编写重复的sql脚本,可以直接使用前者的查询结果。 如,存储过程sp_GetBorrowRecord@BeginTime,@EndTime可以查询出某一时间范围(开始时间@BeginTime,结束时间@EndTime)内的所有借书记录...
数据库操作教程 2022-09-23 17:16:04 -
查询表中某字段有重复记录个数的方法
--查出表中有重复的id的记录,并计算相同id的数量selectid,count(id)from@tablegroupbyidhaving(count(id)>1) 其中...
数据库操作教程 2022-09-23 17:15:50 -
二种sql分页查询语句分享
根据题意理解:本质就是写分页查询:每页条数:10条;当前页码:4页;复制代码代码如下://第一种:select*from (selectROW_NUMBER()over(orderbyIdasc)asnum,*fromUserInfo)asu whereu.num between 10*(4-1)+1 and 10*4//第二种:selecttop10*fromUserInfowhereIdnotin(selecttop(10*3)idfromUserInfoorderbyId)orderbyId...
数据库操作教程 2022-09-23 17:15:39 -
SqlServer参数化查询之wherein和like实现详解
身为一名小小的程序猿,在日常开发中不可以避免的要和wherein和like打交道,在大多数情况下我们传的参数不多简单做下单引号、敏感字符转义之后就直接拼进了SQL,执行查询,搞定。若有一天你不可避免的需要提高SQL的查询性能,需要一次性wherein几百、上千、甚至上万条数据时,参数化查询将是必然进行的选择...
数据库操作教程 2022-09-23 17:15:21 -
Replace关键字的妙用查询是否包含某个特定字符串
在sqlserver中Replace关键字主要是用来将字符串中的某个字符替换成别的字符,今天要逆向思维,它还可以用来查询是否包含某个特定字符串,例如给定下面数据集 期望从这个数据集中获取包含“aaa”字符的记录,注意第2条数据不是包含“aaa”,而是包含“aaaa”。期望的”“结果如下: 传统的思维肯定是想如何查出包含有3个a的字符串,有的人会像用like,但这样会连同4个a也查出来...
数据库操作教程 2022-09-23 17:15:12 -
SqlServer查询性能优化之走出索引的误区分析
据了解绝大多数开发人员对于索引的理解都是一知半解,局限于大多数日常工作没有机会、也什么没有必要去关心、了解索引,实在哪天某个查询太慢了找到查询条件建个索引就ok,哪天又有个查询慢了,再建立个索引就是,或者干脆把整个查询SQL直接发给DBA,让DBA直接帮忙优化了,所以造成的状况就是开发人员对于索引的理解、认识很局限,以下就把我个人对于索引的理解及浅薄认识和大家分享下,希望能解除一些大家的疑惑,一起走出索引的误区误区1.在表上建立了索引,在查询时用到了索引的列,索引就一定会生效 首先明确下这样的观点是错误的,SQLServer查询优化器是基于开销进行选择的优化器,通过一系列复杂判断来决定是否使用索引、使用什么类型索引、使用那个索引。SQLServer内部维护着索引列上的数据的统计,统计信息会随着索引列内容的变化而变化,索引的有效期完全取决于索引列上的统计信息,随着数据的变化关于索引的检索机制也随之变化...
数据库操作教程 2022-09-23 17:14:48 -
sqlserver多表查询不同数据库服务器上的表
第一种方法:复制代码代码如下:/*创建链接服务器*/execsp_addlinkedserver'srv_lnk','','sqloledb','条码数据库IP地址'execsp_addlinkedsrvlogin'srv_lnk','false',null,'用户名','密码'go/*查询示例*/SELECTA.ListCodeFROMsrv_lnk...
数据库操作教程 2022-09-23 17:13:56 -
真正高效的SQLSERVER分页查询(多种方案)
Sqlserver数据库分页查询一直是Sqlserver的短板,闲来无事,想出几种方法,假设有表ARTICLE,字段ID、YEAR...(其他省略),数据53210条(客户真实数据,量不大),分页查询每页30条,查询第1500页(即第45001-45030条数据),字段ID聚集索引,YEAR无索引,Sqlserver版本:2008R2第一种方案、最简单、普通的方法:复制代码代码如下:SELECTTOP30*FROMARTICLEWHEREIDNOTIN(SELECTTOP45000IDFROMARTICLEORDERBYYEARDESC,IDDESC)ORDERBYYEARDESC,IDDESC平均查询100次所需时间:45s第二种方案:复制代码代码如下:SELECT*FROM( SELECTTOP30*FROM(SELECTTOP45030*FROMARTICLEORDERBYYEARDESC,IDDESC)fORDERBYf.YEARASC,f.IDDESC)sORDERBYs.YEARDESC,s.IDDESC平均查询100次所需时间:138S第三种方案:复制代码代码如下:SE...
数据库操作教程 2022-09-23 17:13:43 -
SqlServer参数化查询之wherein和like实现之xml和DataTable传参介绍
方案5使用xml参数对sqlserverxml类型参数不熟悉的童鞋需要先了解下XQuery概念,这里简单提下XQuery是用来从XML文档查找和提取元素及属性的语言,简单说就是用于查询xml的语言说到这就会牵着到XPath,其实XPath是XQuery的一个子集,XQuery1.0和XPath2.0共享相同的数据模型,并支持相同的函数和运算符,XPath的方法均适用于XQuery,假如您已经学习了XPath,那么学习XQuery也不会有问题。详见https://www.jb51.net/w3school/xquery/xquery_intro.htmXQuery概念了解后需要进一步了解下SqlServer对xml的支持函数,主要为query()、nodes()、exist()、value()、modify() ,详见http://msdn.microsoft.com/zh-cn/library/ms190798.aspx使用xml方式实现wherein时有两种实现方式,使用value和exist,在这里推荐使用exist方法,msdn是这样描述的:D.使用exist()方法而...
数据库操作教程 2022-09-23 17:13:30 -
SQL行号排序和分页(SQL查询中插入行号自定义分页的另类实现)
(一)行号显示和排序1.SQLServer的行号A.SQL2000使用identity(int,1,1)和临时表,可以显示行号SELECTidentity(int,1,1)ASROWNUM,[DataID]INTO#1FROMDATASorderbyDataID;SELECT*FROM#1B.SQL2005提供一个很好用的函数row_number(),可以直接用来显示行号,当然也可以使用SQL2000的identitySELECTrow_number()over(ORDERBYDataID)ASROWNUM,[DataID]FROMDATAS;这里如果添加排序功能,则先排序再添加行号2.ORACLE的行号显示使用ROWNUMSELECTROWNUM,[DataID]FROMDATASorderbyDataID注意:先加行号再排序,如果想排序好再加行号就要使用子查询3.取前n条数据A.SQL版selecttopn[DataID]fromDATASB.ORACLE版SELECT[DataID]FROMDATASwhereROWNUM<=n其中,n>=1ORACLE的ROWNUM...
数据库操作教程 2022-09-23 17:10:11