SelectCommand 是一个方法 你看下能不能这样写啊 SqlConnection conn = new SqlConnection("server=.;database=Web_DB;uid=sa;pwd=;"); SelectCommand cmd= new SelectCommand("SELECT * FROM BuildQualityChangedEventSubscribers a inner join Contacts b on b.id=a.name WHERE b.Name = @name",conn); 如果像你那么写不行 但是 4楼的方法能行
@name的長度跟定義的長度一樣不?
我看是不是SqlParameter传参数类型有问题
name是什么类型啊,类型转换的问题吧
很明显,@name的值不正确。语句是没有问题的
我这个是sqldatasource绑定数据时用的不是c#的源程序里的 <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:AUTOConnectionString5 %>" DeleteCommand="DELETE FROM [BuildQualityChangedEventSubscribers] WHERE [id] = @id" InsertCommand="INSERT INTO [BuildQualityChangedEventSubscribers] ([name], [StatusFrom], [StatusTo], [SubscribeStatus], [DefinitionID]) VALUES (@name, @StatusFrom, @StatusTo, @SubscribeStatus, @DefinitionID)" SelectCommand="SELECT * FROM BuildQualityChangedEventSubscribers a inner join Contacts b on b.id=a.name WHERE b.Name = @name"
SelectCommand="SELECT * FROM BuildQualityChangedEventSubscribers as a inner join Contacts b on b.id=a.name WHERE b.Name = @name"
顺便疑问:BuildQualityChangedEventSubscribers 是表名?干嘛取这么长的表名?
SelectCommand cmd= new SelectCommand("SELECT * FROM BuildQualityChangedEventSubscribers a inner join Contacts b on b.id=a.name WHERE b.Name = @name",conn);
如果像你那么写不行
但是 4楼的方法能行
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:AUTOConnectionString5 %>"
DeleteCommand="DELETE FROM [BuildQualityChangedEventSubscribers] WHERE [id] = @id"
InsertCommand="INSERT INTO [BuildQualityChangedEventSubscribers] ([name], [StatusFrom], [StatusTo], [SubscribeStatus], [DefinitionID]) VALUES (@name, @StatusFrom, @StatusTo, @SubscribeStatus, @DefinitionID)"
SelectCommand="SELECT * FROM BuildQualityChangedEventSubscribers a inner join Contacts b on b.id=a.name WHERE b.Name = @name"