Sql server2008开发与实践
SQL Server 2008是一个微软数据库重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。
Spring_Ji
乐观、开朗、自信,喜欢英语、编程、篮球等等,希望结交更多的朋友。
展开
-
Sql server中判断表是否存在
IF EXISTS (SELECT * FROM dbo.SysObjects WHERE ID = object_id(N'[table1]') AND OBJECTPROPERTY(ID, 'IsTable') = 1)PRINT 'Exist' ELSE PRINT 'Not Exist'原创 2014-01-14 10:26:55 · 3025 阅读 · 1 评论 -
从Table1插记录到Table2,Field1不重复
insert into Table2(field1,field2,field3,field4,field5)(select field1,field2,field3,field4,field5 from Table1 where field1 not in (select field1 from Table2) and field1 is not null and field原创 2014-04-03 21:29:29 · 1540 阅读 · 0 评论 -
SQL两表之间:根据一个表的字段更新另一个表的字段
1. 写法轻松,更新效率高:update table1 set field1=table2.field1,field2=table2.field2from table2where table1.id=table2.id 2. 常规方式,种写法相当于一个 Left join, 以外面的where为更新条数,如果不加where就是所有记录update table1s原创 2014-05-16 21:36:07 · 135824 阅读 · 19 评论 -
SQL Server数据转换【包含Geometry类型】的技巧总结
1. 字段的组合:update new_master_locationset tmp_street_unique=street+'_'+city+'_'+state+'_'+zip+'_'+convert(varchar(20),municipality)这里如果碰到整形的字段需要转化为字符型【int --> String】。2. 去掉前后的空格:update mapping_原创 2014-06-02 23:10:46 · 5561 阅读 · 0 评论 -
Sql server中根据存储过程中的部分信息查找存储过程名称的方法【视图和Function】
1、查询的语句:select a.id,b.name,a.*,b.* from syscomments ajoin sysobjects b on a.id=b.idwhere b.xtype='P' and a.text like '%usp_cm%'b.xtype='P'指定在什么类型的范围进行搜索‘%usp_cm%’就是你能记得的存储过程中的内容。2、查找类型:s原创 2014-06-24 11:30:28 · 6015 阅读 · 0 评论 -
获得sql server的table的表结构 -- 转到word中
SQL语句:select syscolumns.name,systypes.name,syscolumns.lengthfrom syscolumns join sysobjects on syscolumns.id=sysobjects.id and sysobjects.xtype='U'join systypes on systypes.xtype=syscolumns.x原创 2014-06-26 13:41:33 · 2266 阅读 · 0 评论 -
Cannot update identity column 'XXX'
Sqlserver -- 如何修改设置主键的id可以手动更新?#1 打开表的设计界面#2 将主键id的is Identity的属性改成No这样就可以通过Update语句来更新表的主键id了。如何重新设置主键id的自增长开始值呢?#1 命令:DBCC CHECKIDENT (tableName, reseed, 1000000)#2 DBCC: DBCC help原创 2014-08-28 14:04:34 · 7160 阅读 · 0 评论 -
Could not drop object 'student' because it is referenced by a FOREIGN KEY constraint
1. Find foreign keysSELECT* FROM sys.foreign_keysWHERE referenced_object_id = object_id('Student')2. Delete foreign keysSELECT 'ALTER TABLE ' + OBJECT_SCHEMA_NAME(parent_object_id)原创 2014-10-08 11:05:59 · 3137 阅读 · 0 评论 -
SQL -- 判断线是否与面相交或者在其内部
SQL如下:update mapping_nj_roadsset municipality='227'from mapping_geodata_boundary awhere a.supportfile_code='227' and (a.boundary.STContains(mapping_nj_roads.geom)=1 or a.boundary.STIntersect原创 2014-10-09 18:05:57 · 3442 阅读 · 0 评论 -
FOR XML PATH 合并列
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作。那么以一个实例为主. 一.FOR XML PATH 简单介绍 那么还是首先来介绍一下FOR XML PATH ,假设现在有一张兴趣爱好表(hobby)用来存放兴趣爱原创 2012-05-10 14:42:46 · 1910 阅读 · 0 评论 -
sql列合并
表結構如下:id value ----- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 結果如下:id values ------ ----------- 1 aa,bb 2 aaa,bbb,ccc */create table tb(id int,转载 2012-05-10 14:45:38 · 2595 阅读 · 0 评论 -
sql STUFF用法
sql STUFF用法1、作用删除指定长度的字符,并在指定的起点处插入另一组字符。2、语法STUFF ( character_expression , start , length ,character_expression )3、示例以下示例在第一个字符串 abcdef 中删除从第 2 个位置(字符 b)开始的三个字符,然后在删除的起始位置插入转载 2012-05-10 14:47:24 · 830 阅读 · 0 评论 -
Sql server所有系统表的名称及说明
sysaltfiles主数据库 保存数据库的文件syscharsets主数据库字符集与排序顺序sysconfigures主数据库 配置选项syscurconfigs主数据库当前配置选项sysdatabases主数据库服务器中的数据库syslanguages主数据库语言syslogins主数据库 登陆帐号信息sysoledbusers主数据库 链接服务器登陆信息s转载 2013-06-26 10:26:02 · 1475 阅读 · 0 评论 -
C#中验证sql语句的方法(SET PARSEONLY 与SET NOEXEC )
SET PARSEONLY检查每个 Transact-SQL 语句的语法并返回任何错误消息,但不编译和执行语句。SET PARSEONLY { ON | OFF }当 SET PARSEONLY 为 ON 时,SQL Server 只分析语句。当 SET PARSEONLY 为 OFF 时,SQL Server 编译并执行语句。SET PARSEONLY 的设置是在分析时设置,而不原创 2012-06-27 19:24:31 · 4191 阅读 · 3 评论 -
sql中用CTE实现增加row_number()列
增加一列:ALTER table table1 add id int default 0 用CTE更新创建的这个id列:with CTE as( select *,rn=ROW_NUMBER() OVER(ORDER BY getdate()) from table1)update CTE set id= rn 补充CTE的定义:原创 2012-11-16 11:21:51 · 2052 阅读 · 0 评论 -
BingMap读取shape(arcgis)格式数据(将shape文件转成Sql server2008的geometry类型,再进行读取)
1. 用Arcmap打开shape数据(region),先转换坐标系(GCS_WGS_1984),在地图的数据框属性中可以针对单个图层进行坐标系的转换。2. 如果一个区域有多个不相邻的图形组成(mult-polygon),需要用ArcToolbox的多部分(multipart)转单部分(SinglePart)3. 如果面转折点后的数量太多,影响加载boundary后的移动和缩放的效原创 2012-11-20 09:22:21 · 4748 阅读 · 4 评论 -
Oracle和SQL SERVER在SQL语句上的差别
1、 Oracle中表名,字段名,存储过程名,变量名不能超过30个字符串长度。2、racle中不支持Top 语法。使用where rownum 3、racle中光标的使用与SqlServer中有挺大差别,主要是在循环控制方面不一致。4、Oracle中如果某列是Date类型,那么它默认的格式是yyyy-MM-dd,如果使用where colDate = ‘2005-06-08原创 2013-07-26 09:55:30 · 10433 阅读 · 2 评论 -
Sql server统计查询语句消耗时间
1. set statistics time ongo xxxxgoset statistics time off 2. DECLARE @begin dateTimeDECLARE @end dateTimeSET @begin=getdate();BEGIN xxxxendset @end=getdate();SELECT dat原创 2013-07-26 10:50:03 · 8428 阅读 · 0 评论 -
用Update Select批量更新某一字段的值[可以跨库]
SQL:UPDATE test1 SET name = (SELECT y.name FROM DB2.dbo.test2 y WHERE test1.id = y.id)原创 2013-08-06 17:32:29 · 7187 阅读 · 0 评论 -
insert into select语句【可以复制Geometry字段】
SQL Server自带的导入导出功能可以导普通的属性表: 但是,如果你要复制的表中存在Geometry字段,如果用Sql server自带的导入导出表的功能将无法导入带Geometry字段的表。可以用insert into select语句将一个表中的数据复制到另一表中: 两个表在同一数据库中: insert INTO map原创 2013-08-16 09:20:37 · 2454 阅读 · 1 评论 -
SQL Server中查找包含某个文本的存储过程
SELECT namefrom sysobjects o,syscomments swhere o.id=s.idand text LIKE '%text%'and o.xtype='p'原创 2013-08-16 19:11:21 · 4349 阅读 · 0 评论 -
SQL Server日期时间格式转换字符串详解
1、日期时间转换字符串2、sql server日期与时间函数3、sql server日期函数4、sql server日期函数举例GetDate,DateDiff,Convert原创 2013-09-04 09:24:26 · 45673 阅读 · 3 评论 -
使用sql语句创建表、修改表、添加列等
1. 创建表:CREATE TABLE 学生信息( 学号 varchar(14) IDENTITY(1,1) PRIMARY KEY, 姓名 varchar(8) UNIQUE NOT NULL, 班级编号 varchar(14) REFERENCES '班级信息', 年级 int null, 性别 varchar(2) CHECK(性别in (原创 2013-10-11 10:34:39 · 35462 阅读 · 1 评论