在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?
原文 http://blog.csdn.net/quou2002/article/details/596509
Sql2005中,提供了uniqueidentifier 數(shù)據(jù)類型。說白了,就是個(gè)GUID,這種類型開發(fā)時(shí)倒是很有必要的。
今天程序中遇到了這個(gè)問題:表里定義了一個(gè)uniqueidentifier 列,Asp.net程序需要向表中插入新的數(shù)據(jù)。 Insert 語句由數(shù)據(jù)源控件自動(dòng)生成:INSERT INTO [morning_Department] ([DepartmentId], [name]) VALUES (@DepartmentId, @name),其中DepartmentId列為一個(gè)uniqueidentifier 列。
錯(cuò)誤提示:
Implicit conversion from data type sql_variant to uniqueidentifier is not allowed. Use the CONVERT function to run this query.
解決方法有2種:
1、在數(shù)據(jù)庫中將Insert 操作寫成存儲(chǔ)過程,uniqueidentifier 列由SQL2005提供的NEWID()函數(shù)生成,Asp.net程序這邊就不用負(fù)責(zé)生成這個(gè)值了;
2、還是按常規(guī)思路,只是在數(shù)據(jù)源控件InsertQuery屬性中稍作修改即可。
①點(diǎn)擊InsertQuery屬性,打開‘命令和參數(shù)編輯器’;
②就上面寫的那個(gè)Insert 語句來說,在‘參數(shù)’列表里選擇‘DepartmentId’這個(gè)uniqueidentifier 列名稱;
③右邊有個(gè)‘顯示高級(jí)屬性’,點(diǎn)擊它。滾動(dòng)條拖到最下,有個(gè)‘Type’屬性,默認(rèn)值是‘Object ’類型,把它改為‘string’。
④Ok,收工。
轉(zhuǎn)載于:https://www.cnblogs.com/lonelyxmas/archive/2013/05/22/3092366.html
總結(jié)
以上是生活随笔為你收集整理的在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android系统Surface机制的S
- 下一篇: android之下载416错误