小编Thu*_*der的帖子

如何使用c#查找SQL Server中的值是否为NULL

我想知道从SqlHelper类的ExecuteDataTable返回的c#中的数据表中哪些值为null.

string select = "select * from testTable";
string val="";

DataTable  dt=dbcon.ExecuteDataTable(select);
foreach (DataRow dr in dt.Rows)
{
   foreach (DataColumn  dc in dt.Columns )
   {
       if(dr[dc].Equals (null))
       {
          val ="null";
       } 
       else  
       {
          val = dr[dc].ToString();
       }
   }
}
Run Code Online (Sandbox Code Playgroud)

但不幸的是,我没有找到任何办法.如果有办法,请告诉我.先感谢您.

.net c# sql sql-server

3
推荐指数
2
解决办法
5788
查看次数

在两个EXCEPT子句查询中使用ORDER BY

我希望在ANSI SQL中实现分页查询。

我在SQL Server中尝试了以下查询,但不允许这样做:

select top 20 * from MyTable order by id  
except
select top 10 * from MyTable order by id
Run Code Online (Sandbox Code Playgroud)

但是以下工作正常:

select top 20 * from MyTable 
except
select top 10 * from MyTable order by id
Run Code Online (Sandbox Code Playgroud)

例如:

input   expected result
20      11
11      13
25      14
6       16
4       17
2       18
1       19
9       20
3       25
7       
8       
16      
17      
18      
13      
14      
19      
10      
5   
Run Code Online (Sandbox Code Playgroud)

从上面的示例可以看出,如果我们不能编写第一个ORDER BY子句,那么结果将不会具有值20、11、25。

sql ansi-sql

3
推荐指数
2
解决办法
5430
查看次数

有没有办法使用c#或vb从xml递归查找最内层节点

我有一个XML文件说

  <items>
      <item1>
        <piece>1300</piece>
        <itemc>665583</itemc> 
      </item1>
      <item2>
        <piece>100</piece>
        <itemc>665584</itemc>
      </item2>
    </items>
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写ac#应用程序来获取内部大多数节点的所有x路径,例如:

items/item1/piece
items/item1/itemc
items/item2/piece
items/item2/itemc
Run Code Online (Sandbox Code Playgroud)

有没有办法使用C#或VB?希望提前获得一个可能的解决方案.

.net xml xpath

2
推荐指数
1
解决办法
6498
查看次数

如何使用亚洲格式格式化货币

在印度和其他亚洲国家,货币的格式如下:前三个数字分为三个,然后所有其他数字按两对分组.例如:2,54,255.12 5,22,54,255.12 etc string money = String.Format("{0:#,## 0.00}",254255.12);

给出输出254,255.12

但所需的输出是2,54,255.12

c# vb.net string formatting

2
推荐指数
1
解决办法
702
查看次数

is there standard sql that works in all database

As seen below the syntax is different for different Database .Isnt there a standard way that works in all Databases. Is there any tool to convert any sql to any sql

SqlServer2005:

 CREATE TABLE Table01 (  
 Field01  int  primary key identity(1,1)  
 )
Run Code Online (Sandbox Code Playgroud)

Sqlite:

CREATE TABLE Table01 (
  Field01  integer PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE
);
Run Code Online (Sandbox Code Playgroud)

sql standards

1
推荐指数
1
解决办法
198
查看次数

如何从字符串中获取数字

我想从字符串中获取数字,例如:My123number给出123同样varchar(32)给出32等

提前致谢.

.net c# vb.net string

1
推荐指数
1
解决办法
9243
查看次数

LINQ to SQL与where语句一起使用

我有一个SQL查询,我想转换为LINQ.我已将数据提取到datatable.I我很困惑如何编写查询的WHERE部分.条件取决于表中的列,如果col_Con为"G",则使用大于col_Val和30(任何值),否则如果col_Con为"L",则使用小于col_Val和30(任何值)的条件

我使用Sqlserver 2005作为SQL查询部分.

SELECT *
FROM   Mytable
WHERE 
    CASE
    WHEN col_Con= 'G' THEN 
        col_Val
    ELSE 
        30
    END 
        <= 
    CASE
    WHEN col_Con= = 'L' THEN 
        30
    ELSE 
        col_Val
    END 
Run Code Online (Sandbox Code Playgroud)

这是我的Linq的开始

            //Mytable is a DataTable
            var drs = from DataRow dr in Mytable.Rows
            where   
            ...
            select dr;
Run Code Online (Sandbox Code Playgroud)

.net sql linq case where

1
推荐指数
1
解决办法
6556
查看次数

Sql选择查询与多列的位置

我有一张简单的桌子

CREATE TABLE  a(
    id int IDENTITY(1,1) NOT NULL,
    x varchar(50) 
)
Run Code Online (Sandbox Code Playgroud)

我发现以下查询有效

select cast (id as varchar(3))+cast (x as varchar(3)) c from a 
where cast (id as varchar(3))+cast (x as varchar(3))='1a'
Run Code Online (Sandbox Code Playgroud)

但这不起作用

select cast (id as varchar(3))+cast (x as varchar(3)) c from a 
where c='1a'
Run Code Online (Sandbox Code Playgroud)

有人知道那是为什么吗?请不要因为某些原因我不想使用

where id=1 and x ='a'
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server string

0
推荐指数
1
解决办法
1595
查看次数

具有参数问题的新通用函数

嗨,我有一个通用的功能,如下所示.它可以用来通过调用来显示表单

showForm(ch);

它适用于第二功能(新的不带参数),但是,如果我想要显示的形式,但在构造函数中的参数作为第三功能(新带参数),那么我不能这样做.任何人有一个想法如何做到了吗?

       void showForm<T>(T frm)  where T :Form, new()
        {
            if (frm == null)
            {
                frm = new T();
            }
            frm.MdiParent = this;
            frm.Show();
        }


        //Works for this
        public frmChild2()
        {
            InitializeComponent();
            ChildToolStrip = toolStrip1;
           // toolStrip1.Visible = false;
        }

        //Does not Work for this
        public frmChild2(string title)
        {
            InitializeComponent();
            ChildToolStrip = toolStrip1;
            Text = title;
            // toolStrip1.Visible = false;
        }
Run Code Online (Sandbox Code Playgroud)

.net c# generics new-operator

0
推荐指数
1
解决办法
1405
查看次数

如何使对象不可变

原版的

因为Ef 6.0,我有一个对象.我有一个单一的实例,并希望确保,没有其他代码能够更改其值.

有没有任何架构,模式来确保它.不可变,结构,只读没有什么是如此干净.还是我要求太多形式的流行语言?

编辑

因为Ef 6.0,我有一个对象.我有一个单一的实例,并希望确保,没有其他代码能够更改其值.

1.有任何架构,模式来确保它. 不可变的模式,结构,只读可用于EF.我是否要求过多的这种流行语言?

2.在完成所需的更改后,有没有办法锁定对象?

.net c#

0
推荐指数
1
解决办法
801
查看次数

一个函数需要3,1,2并分别返回1,2,3和反之

是否有一个函数需要1,2,3并分别返回3,1,2和反之.例如:f(1)= 3 f(2)= 1 f(3)= 2

这需要得到循环次序,例如1,当离开时将是3,2将是1和3将是2. 1当右边是2时,2将是3,3将是1.

numbers function

-4
推荐指数
1
解决办法
199
查看次数