daixinet

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  数据库之SqlServer

SQL Server相关的积累
摘要:SQL Server 2005中的类型与C#中的类型对应关系 <Language From="SQL" To="C#"> <Type From="bigint" To="long" /> <Type From="binary" To="object" /> <Type From="bit" To="bool" /> <Type From="char" To=&qu 阅读全文
posted @ 2012-03-31 09:00 daixinet.com 阅读(435) 评论(0) 推荐(0)

摘要:SQL Server的一些操作:1、判断一个表是否存在:if exists(select * from sysobjects where id=OBJECT_ID(N'[' + @tableName + ']') and OBJECTPROPERTY(id,N'IsUserTable') = 1)相对于这个数据库来说,OBJECT_ID根据表名得到ID,N表示显示的将非Unicode字符转化为Unicode字符,来自SQL-92 标准中的 National(Unicode)数据类型。OBJECTPROPERTY:返回当前数据库中对象的有关信息。1 阅读全文
posted @ 2012-02-16 12:01 daixinet.com 阅读(327) 评论(0) 推荐(0)

摘要:今天遇到了个郁闷的问题,关于数据库表名的问题。 SQL Server的数据库的表名可以用数字开头,但是在查询的时候,不能直接写表名,如下: select * form 1_tablename 在执行过程中,报错。但是给表名加上中括号,就可以了,如下: select * from [1_tablename] 用VS中的DataSet开发时,会自动生成SQL语句,但是生成的SQL语句中,有的加上方括号,但是有的没有加,这在程序执行过程中,就不能确定语句的正确性,而且在调试过程中,不容易发现错误。 所以以后写SQL语句的过程中,一定要规范,表名最好不要用数字开头。 阅读全文
posted @ 2011-10-24 22:20 daixinet.com 阅读(509) 评论(0) 推荐(0)

摘要:编程的异常处理很重要,当然Sql语句中存储过程的异常处理也很重要,明确的异常提示能够快速的找到问题的根源,节省很多时间。下面,我就以一个插入数据为例来说明Sql Server中的存储过程怎么捕获异常的 。1、环境 (1)数据库为Sql Server2008。 (2)表(Course)结构为: No char(10) primary key Name varchar(20) Comment varchar(50)2、存储过程 就以插入数据为例,其他的可以照着写就行了。 编程语言都有异常的捕获与处理, 在 SqlServer2008 中也是这样子的。对会出现异常的语句加上 begin try……. 阅读全文
posted @ 2011-08-12 14:55 daixinet.com 阅读(9888) 评论(2) 推荐(1)

摘要:存储过程的功能非常强大,在某种程度上甚至可以替代业务逻辑层,接下来就一个小例子来说明,用存储过程插入或更新语句。1、数据库表结构 所用数据库为Sql Server2008。2、创建存储过程(1)实现功能:1)有相同的数据,直接返回(返回值:0); 2)有主键相同,但是数据不同的数据,进行更新处理(返回值:2); 3)没有数据,进行插入数据处理(返回值:1)。 根据不同的情况设置存储过程的返回值,调用存储过程的时候,根据不同的返回值,进行相关的处理。(2)下面编码只是实现的基本的功能,具体的Sql代码如下: 1 Create proc sp_Insert_Student 2 @No char(. 阅读全文
posted @ 2011-08-10 18:45 daixinet.com 阅读(42190) 评论(12) 推荐(3)

摘要:越深入的学习,越觉得一种知识的深厚底蕴。 平时使用SQL语言中的Insert的方式是:insert into Table value()。今天使用SQL的Insert语句时。实现一个功能,复制一条数据,主键不同,数据相同。举例如下:1、表结构 环境为Sql Server2008。2、Code (1)把Value句换成select语句, (2)select语句中把主键换为插入语句的主键 。 insert into Student(No,Name,Sex,Age) select 2,Name,Sex,Age from Student where No=13、说明 开始必须要有一条数据,然后复制这. 阅读全文
posted @ 2011-08-01 22:21 daixinet.com 阅读(1123) 评论(1) 推荐(0)