在本文中,我们将带你了解asp.net–不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询在这篇文章中,同时我们还将给您一些技巧,以帮
在本文中,我们将带你了解asp.net – 不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的C#中的uniqueidentifier等效数据类型、JPA:如何映射SQL Server uniqueidentifier类型、NewID()创建 uniqueidentifier 类型的唯一值、oracle 数据库中 sql server uniqueidentifier 数据类型的等效列是什么?。
本文目录一览:- asp.net – 不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询
- C#中的uniqueidentifier等效数据类型
- JPA:如何映射SQL Server uniqueidentifier类型
- NewID()创建 uniqueidentifier 类型的唯一值
- oracle 数据库中 sql server uniqueidentifier 数据类型的等效列是什么?
asp.net – 不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询
稍后,我需要将“Order”表链接到“CustomerInfo”表,因此我将orderId数据类型= uniqueidentifier.然后,我计划将我的订单详细信息插入“订单”表,但我遇到的问题是:
“Implicit conversion from data type
sql_variant to uniqueidentifier is not
allowed. Use the CONVERT function to
run this query”.
我搜索并找到一些答案,如参数设置为“空”的数据类型或删除它.但后来我有这个错误
” Conversion Failed when converting from character string to uniqueidentifier.”
这是我的sql
<asp:sqlDataSource ID="sqlDataSource1" runat="server" ConnectionString="<%$ConnectionStrings:ConnectionString %>" DeleteCommand="DELETE FROM [Order] WHERE [orderId] = @orderId" InsertCommand="INSERT INTO [Order] ([orderId],[userId],[Services],[PickUpDate],[PickUpTime],[SpecialDate],[SpecialTime]) VALUES (@orderId,@userId,@Services,@PickUpDate,@PickUpTime,@SpecialDate,@SpecialTime)" SelectCommand="SELECT * FROM [Order]" UpdateCommand="UPDATE [Order] SET [userId] = @userId,[Services] = @Services,[PickUpDate] = @PickUpDate,[PickUpTime] = @PickUpTime,[SpecialDate] = @SpecialDate,[SpecialTime] = @SpecialTime WHERE [orderId] = @orderId"> <DeleteParameters> <asp:Parameter Name="orderId" Type="Object" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="orderId" Type="Object" /> <asp:Parameter Name="userId" Type="Object" /> <asp:Parameter Name="Services" Type="String" /> <asp:Parameter Name="PickUpDate" Type="String" /> <asp:Parameter Name="PickUpTime" Type="String" /> <asp:Parameter Name="SpecialDate" Type="String" /> <asp:Parameter Name="SpecialTime" Type="String" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="userId" Type="Object" /> <asp:Parameter Name="Services" Type="String" /> <asp:Parameter Name="PickUpDate" Type="String" /> <asp:Parameter Name="PickUpTime" Type="String" /> <asp:Parameter Name="SpecialDate" Type="String" /> <asp:Parameter Name="SpecialTime" Type="String" /> <asp:Parameter Name="orderId" Type="Object" /> </UpdateParameters> </asp:sqlDataSource>
现在我想起来了,也许我的代码在vb中存在问题.
我会把它放在这里,请告诉我如何正确地将数据插入数据库.
Protected Sub OrderButton_Click(ByVal sender As Object,ByVal e As System.EventArgs) Handles OrderButton.Click sqlDataSource1.InsertParameters(0).DefaultValue = Now sqlDataSource1.Insert() Response.Redirect("~/Customer/AfterOrder.aspx") End Sub
解决方法
<asp:Parameter Name="ParamName" DbType="Guid" />
你应该将GUID值传递为(c#):
sqlDataSource1.InsertParameters["ParamName"].DefaultValue = System.Guid.NewGuid().ToString();
如果要传递字符串值,则必须在插入查询中使用CONVERT(UNIQUEIDENTIFIER,’YOUR VALUE’),如下所示:
InsertCommand="INSERT INTO [Order] ([UserId],[etc]) VALUES (CONVERT(UNIQUEIDENTIFIER,@UserId),@etc)"
C#中的uniqueidentifier等效数据类型
什么是C#3.5数据类型中的uniqueidentifier(SQL Server 2005)等效项?
JPA:如何映射SQL Server uniqueidentifier类型
我继承了一个SQL Server数据库,该数据库正试图通过JPA进行映射。许多表都有一uniqueidentifier
列。我试图像这样映射它们:
@Id@GenericGenerator(name = "generator", strategy = "guid", parameters = {})@GeneratedValue(generator = "generator")@Column(name = "APPLICATION_ID")private String id;
Hibernate抱怨:
Found: uniqueidentifier, expected: varchar(255)
答案1
小编典典POJO中主键属性的数据类型确定其映射DB列的数据类型,这由Dialect类指定。按照SQLServerDialect由Hibernate提供,它不具有任何数据类型映射到uniqueidentifier
,并且String
在默认情况下映射到varchar(255)
我认为guid
基于String
主键的策略仅意味着hibernate将为POJO的主键属性生成一个GUID值,并且此生成的GUID值将被插入到varchar(255)
列中以模拟uniqueidentifier
你可以尝试覆盖由指定的映射方言使用类columnDefinition属性@Column
@Id @GenericGenerator(name = "generator", strategy = "guid", parameters = {}) @GeneratedValue(generator = "generator") @Column(name = "APPLICATION_ID" , columnDefinition="uniqueidentifier") private String id;
NewID()创建 uniqueidentifier 类型的唯一值
,美国服务器,香港空间,香港虚拟主机
oracle 数据库中 sql server uniqueidentifier 数据类型的等效列是什么?
如何解决oracle 数据库中 sql server uniqueidentifier 数据类型的等效列是什么??
我需要从 sqlserver 中提取 uniqueidentifier 列数据并将其加载到 oracle 数据库中。我尝试了 raw(16),但我收到了无效的参数绑定错误。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
关于asp.net – 不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于C#中的uniqueidentifier等效数据类型、JPA:如何映射SQL Server uniqueidentifier类型、NewID()创建 uniqueidentifier 类型的唯一值、oracle 数据库中 sql server uniqueidentifier 数据类型的等效列是什么?等相关知识的信息别忘了在本站进行查找喔。
本文标签: