MIS2000 Lab. -- ASP.NET学习&分享 / ASP.NET案例精编(清华大学出版社)
您好,我来自台湾。很高兴与各位分享一些成果。希望对您有帮助。出版书籍是「ASP.NET案例精编 / 清华大学出版社」。

当SQL200x 新的 uniqueidentifier数据型态,遇见 SqlDataSource
http://www.dotblogs.com.tw/mis2000lab/archive/2010/11/03/uniqueidentifier_sqldatasource.aspx

 

 

新的 SQLServer 200x版,多了一些新的数据型态。
例如:uniqueidentifier数据型态

      请参阅微软MSDN网站,http://technet.microsoft.com/zh-tw/library/ms187942.aspx

      这是 16字节的 GUID


uniqueidentifier 数据类型的数据行或本机变量可以利用下列方法,初始化为一个值:
    *   使用 NEWID 函数。
    *   从 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 格式的字符串常数转换,其中每一个 x 是范围 0-9 或 a-f 的十六进制数字。例如,6F9619FF-8B86-D011-B42D-00C04FC964FF是有效的 uniqueidentifier 值。

 

比较运算子可以搭配使用 uniqueidentifier 值。不过排序并不是比较两值的位模式加以实作的。唯一可以对 uniqueidentifier 值执行的作业,是比较 (=、<>、<、>、<=、>=) 以及检查 NULL (IS NULL 和 IS NOT NULL)。其它算术运算子一律不能使用除了 IDENTITY 之外,所有的数据行条件约束和属性,都可以用于 uniqueidentifier 数据类型。


============================================================================================

 

本范例可以作为「上集」的第六、第七章补充

 

ASP.NET案例精编(清华大学出版社 / 作者MIS2000Lab)

http://www.china-pub.com/46063 

2009/5/15上市

市场价 :¥59.80 RMB(人民幣)

 

ASP.NET案例精编--适用于VS2005/2008

   

 

 

 

 

 

当您搭配 VS2008/2010的 SqlDataSource开发时,会遇见错误 --

不允许从数据类型 sql_variant 隐含转换到 uniqueidentifier。请使用 CONVERT 函数来执行查询。

 

 

您必须自己动手,修改 SqlDataSource自动产生的SQL指令

           
            InsertCommand="INSERTINTO [News_test] ([test_uid], [test_time])VALUES (NewID(), @test_time)"


            SelectCommand="SELECTtest_id, cast([test_uid] as varchar(36)) as test_uid, [test_time] FROM [News_test]"


            UpdateCommand="UPDATE[News_test] SET [test_uid] = cast(@test_uid as varchar(36)), [test_time]= @test_time WHERE [test_id] = @test_id"

 

感谢这位网友的分享。

参考数据:http://blog.csdn.net/athossmth/archive/2006/05/13/727355.aspx


「分享」,让知识愈加地发光!

 

 

 

posted on 2010-11-03 16:58  MIS2000 Lab.  阅读(285)  评论(0编辑  收藏  举报


ASP.NET案例精编——适用于VS 2005/2008(配光盘)
 

当当网购买 http://product.dangdang.com/product.aspx?product_id=20583373&ref=search-1-pub