随笔分类 -  SQL操作

数据库操作
摘要:字符串转日期 Select cast('2009-01-01' as datetime) 日期格式转换 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 Select CONVERT(var 阅读全文
posted @ 2011-04-13 16:01 Microbar 阅读(261) 评论(0) 推荐(0) 编辑
摘要:取得SQL server 数据库中 所有用户表名称select name from sysobjects where xtype='U' order by nameSQL server数据库系统表详解:sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库字符集与排序顺序sysconfigures 主数据库 配置选项syscurconfigs 主数据库当前配置选项 sysdatabases 主数据库服务器中的数据库 syslanguages 主数据库语言 syslogins 主数据库 登陆帐号信息sysoledbusers 主数据库 链接服务器登陆信息 syspr 阅读全文
posted @ 2010-12-23 15:36 Microbar 阅读(355) 评论(0) 推荐(0) 编辑
摘要:采用左右值编码来存储无限分级树形结构的数据库表设计原文: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1586020无限分级的编码方案——左右值。原文的程序代码是用php写的,但是通过仔细阅读其数据库表设计说明及相关的sql语句,我彻底弄懂了这种巧妙的设计思路,并在这种设计中新增了删除节点,同层平移的需求(原文只提供了列表及插入子节点的sql语句)。  下面我力图用比较简短的文字,少量图表,及相关核心sql语句来描述这种设计方案:  首先,我们弄一棵树作为例子:商品|---食品| |---肉类| | |--猪肉 | |---蔬菜类 | | 阅读全文
posted @ 2010-12-14 12:11 Microbar 阅读(647) 评论(0) 推荐(1) 编辑
摘要:Sql Server连接的端口问题昨天遇到一个比较奇怪的问题,机器A、机器B,都装有Sql Server2000,C#程序从A连B上的数据库OK,但是从B连A的数据库总是有异常,异常提示“在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败”。由于A、B上都装有VS2005,带着装... 阅读全文
posted @ 2010-08-04 14:53 Microbar 阅读(1723) 评论(0) 推荐(0) 编辑
摘要:1. 生成for 2000版本的数据库脚本 2005 的manger studio -- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例 -- 右键要转到2000的库 -- 任务 -- 生成脚本 -- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库 -- 勾选"为所选数据库中的所有对象编写脚本" -- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项,... 阅读全文
posted @ 2010-05-13 18:09 Microbar 阅读(168) 评论(0) 推荐(0) 编辑
摘要:我们知道给表建立索引有助于加快对表的查询速度和增强表的列的唯一性,同时我们也知道给一个表增加主键能够自动在主键列上建立一个聚集索引,或者给一个表增加一个唯一约束也会自动增加一个唯一索,对于通过主键和唯一约束创建的索引是不能够通过DROP INDEX来删除的。请看以下示例语句:  --首先,创建一个表test,无主键和唯一约束  create table test(a int,b int)  --修... 阅读全文
posted @ 2009-09-02 16:10 Microbar 阅读(1166) 评论(0) 推荐(0) 编辑
摘要:/* 参数说明: @tblName 需要查询的表名。如图书表tblbooks 。如果是多表(图书表关联图书分类表)则写成: tblbooks inner join tblbooktypes on tblbooks.bookid=tblbooktypes.bookid @fldName 主键字段名 bookid @listFldName 需要查询的字段。如:书名(tblbooks.bookna... 阅读全文
posted @ 2009-07-27 12:10 Microbar 阅读(283) 评论(0) 推荐(0) 编辑
摘要:步骤:一 看ping 服务器IP能否ping通。   这个实际上是看和远程sql server2000服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程sql server 2000服务器的IP拼写正确。二 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。如telnet 202.114.100.1001433通常端口值是1433,因为14... 阅读全文
posted @ 2009-07-10 10:47 Microbar 阅读(895) 评论(0) 推荐(1) 编辑
摘要:http://blog.sina.com.cn/s/blog_540a6a3e0100099c.html1.一周的select convert(varchar(10),getdate()-(datepart(weekday,getdate())-1),120)as '第一天(周一)',convert(varchar(10),getdate()+(7-datepart(weekday,getdate... 阅读全文
posted @ 2008-10-09 14:50 Microbar 阅读(499) 评论(0) 推荐(0) 编辑
摘要:Sql 时间日期函数:http://www.cnblogs.com/lingxzg/archive/2008/08/05/1216561.html --1. 当前系统日期、时间 select getdate() --2. dateadd 在向指定日期加上一段时间的基础上,返... 阅读全文
posted @ 2008-10-09 14:48 Microbar 阅读(473) 评论(0) 推荐(0) 编辑
摘要:打开数据库的BROKER alter database Tb set ENABLE_BROKER 查询是否打开 SELECT DATABASEPROPERTYEX('tb', 'IsBrokerEnabled') 阅读全文
posted @ 2008-09-03 17:35 Microbar 阅读(180) 评论(0) 推荐(0) 编辑
摘要:SET IDENTITY_INSERT Table ON SET IDENTITY_INSERT 允许将显式值插入表的标识列中。 语法 SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF } 参数 database 是指定的表所驻留的数据库名称。 owner 是表所有者的名称。 table 是含有标识列的... 阅读全文
posted @ 2008-06-24 14:26 Microbar 阅读(741) 评论(1) 推荐(0) 编辑
摘要:ROW_NUMBER 返回结果集分区内行的序列号,每个分区的第一行从 1 开始。 要与 over一起使用(over用于替代group by的) eg: 返回行号为 50 到 60(含)的行,并以 OrderDate 排序。 USE AdventureWorks; GO WITH OrderedOrders AS (SELECT SalesOrderID, OrderDate, ROW_NUMBE... 阅读全文
posted @ 2008-06-12 16:08 Microbar 阅读(216) 评论(0) 推荐(0) 编辑
摘要:SQL-92 设置语句,使 SQL Server 2000/2005 遵从 SQL-92 规则 SET XACT_ABORT on 如果事务中发生错误,on 则会终止整个事务的执行,如果OFF,继续错误的下面一句 SET ANSI_NULLS ON 用于和NULL的比较,如:null=null在off时会返回true,在on时为false SET NOCOUNT ON 为 ON ... 阅读全文
posted @ 2008-06-10 17:38 Microbar 阅读(205) 评论(0) 推荐(0) 编辑
摘要:应用:取得某一日所在周的开始和结束 week_start = dateadd(day, 1-datepart(weekday, @p_today), @p_today) week_end = dateadd(day, 7-datepart(weekday, @p_today), @p_today) DateAdd函数 返回包含一个日期的 Variant (Date),这一日期还加上了一段... 阅读全文
posted @ 2007-09-03 15:32 Microbar 阅读(877) 评论(0) 推荐(0) 编辑
摘要:/*---Description: Generate r_id for reply table---Author : zhongcanjun---Date : 2007-06-13*/CREATE PROCEDURE [dbo].[sp_get_code_reply] @reply_id CHAR(9) OUTPUTAS/* Declaraton of Variables Block*/DEC... 阅读全文
posted @ 2007-07-30 14:27 Microbar 阅读(176) 评论(0) 推荐(0) 编辑
摘要:upper(str):大写 lower(str):小写 模糊查询中想忽略大小写:like '%'+upper('BigAndSmall')+'%' 日期是第几周:DATEPART SELECT DATEPART(Weekday,getdate()) 星期天是1,星期一是2,以此类推 当前日期:select CURRENT_TIMESTAMP 阅读全文
posted @ 2007-07-04 13:39 Microbar 阅读(136) 评论(0) 推荐(0) 编辑
摘要:===========修改表结构==============修改表列结构:alter table表名 alter column字段名 varchar(100);查询表结构:SELECT a.colid as ID,a.name as ColumnName,b.name as DataType,a.length as Length FROM syscolumns a,systypes b WHERE a.id=object_id('表名) and a.xtype=b.xtype and b.name <> 'sysname' order by a.colid 阅读全文
posted @ 2007-06-06 11:54 Microbar 阅读(249) 评论(0) 推荐(0) 编辑
摘要:判断日期是否相等:select datediff(d,'2007-9-2','2007-9-2') 为0就是相同了 某个时间段内:(DATEDIFF(d,from_date,'2007-9-8')>= 0 and DATEDIFF(d,'2007-9-8',to_date) >= 0) SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm... 阅读全文
posted @ 2007-06-04 11:03 Microbar 阅读(454) 评论(0) 推荐(0) 编辑