我有这个遗留代码:
private void conecta()
{
if (conexao.State == ConnectionState.Closed)
conexao.Open();
}
public List<string[]> get_dados_historico_verificacao_email_WEB(string email)
{
List<string[]> historicos = new List<string[]>();
conecta();
sql =
@"SELECT *
FROM historico_verificacao_email
WHERE nm_email = '" + email + @"'
ORDER BY dt_verificacao_email DESC, hr_verificacao_email DESC";
com = new SqlCommand(sql, conexao);
SqlDataReader dr = com.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
string[] dados_historico = new string[6];
dados_historico[0] = dr["nm_email"].ToString();
dados_historico[1] = dr["dt_verificacao_email"].ToString();
dados_historico[1] = dados_historico[1].Substring(0, 10);
dados_historico[2] = dr["hr_verificacao_email"].ToString();
dados_historico[3] = dr["ds_tipo_verificacao"].ToString();
sql = …Run Code Online (Sandbox Code Playgroud) 我在TSQL中编写了这个标量函数:
create function TCupom (@cupom int)
returns float
as
begin
declare @Tcu float;
select @Tcu = sum (total) from alteraca2 where pedido = @cupom
if (@tcu is null)
set @tcu = 0;
return @tcu;
end
Run Code Online (Sandbox Code Playgroud)
我想在我的C#代码中调用此函数.这是我到目前为止所拥有的:
public void TotalCupom(int cupom)
{
float SAIDA;
SqlDataAdapter da2 = new SqlDataAdapter();
if (conex1.State == ConnectionState.Closed)
{
conex1.Open();
}
SqlCommand Totalf = new SqlCommand("Tcupom", conex1);
SqlParameter code1 = new SqlParameter("@code", SqlDbType.Int);
code1.Value = cupom ;
Totalf.CommandType = CommandType.StoredProcedure ;
SAIDA = Totalf.ExecuteScalar();
return SAIDA; …Run Code Online (Sandbox Code Playgroud) 我有这个app.config:
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="Alvaro1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="conexx" connectionString="Data Source=192.168.1.2 ;Initial Catalog =ifdcontroladoria3 ;uid =sa;pwd = admin2012" providerName="System.Data.SqlClient" />
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup>
<userSettings>
<Alvaro1.Properties.Settings>
<setting name="servidor" serializeAs="String">
<value />
</setting>
<setting name="banco" serializeAs="String">
<value />
</setting>
<setting name="user" serializeAs="String">
<value />
</setting>
<setting name="senha" serializeAs="String">
<value />
</setting>
</Alvaro1.Properties.Settings>
</userSettings>
Run Code Online (Sandbox Code Playgroud)
我在头文件和引用中设置了system.configuration,并使用此代码保存值:
Properties.Settings.Default.servidor = comboBox1.Text;
Properties.Settings.Default.banco = cmbBancos.Text;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试读取这些值时,没有任何东西被保存:
servidor …Run Code Online (Sandbox Code Playgroud) 我必须更改单元格的背景颜色,当它们的值是字符串或空时,这是我写的代码类似于其他代码:
for (int rowIndex = 0; rowIndex < dataGridView1.RowCount; rowIndex++)
{
string conte = dataGridView1.Rows[rowIndex].Cells[7].Value.ToString() ;
if (string.IsNullOrEmpty(conte))
{
// dataGridView1.Rows[rowIndex].Cells[7].Style.BackColor = Color.Orange;
}
else
{ dataGridView1.Rows[rowIndex].Cells[7].Style.BackColor = Color.Orange; }
}
Run Code Online (Sandbox Code Playgroud)
数据集完成后,显示填充的datagridview并显示此错误: 
我怎样才能解决这个问题??有另一种方法来编写代码吗?
我有此查询工作:
select cap_idPlanoContasFin , [3684],[2234],[2] ,
from
(
select cap_idPlanoContasFin,cap_idempresa,sum(cap_valorfatura)
as Stotal
from erp_ContasPagar
group by cap_idPlanoContasFin , cap_idEmpresa
) as sourcetable
pivot
(sum(Stotal)for cap_idEmpresa in ([3684],[2234],[2])
)as pivottable;
Run Code Online (Sandbox Code Playgroud)
该查询返回:
cap_idPlanoContasFin 3684 2234 2
3 9000 NULL NULL
10 1057840,68 NULL 1865081,35
11 NULL 7283,1 591,9
12 NULL NULL 178914,45
13 9305,07 1117,6 500
14 NULL 59333,5 34611,74
Run Code Online (Sandbox Code Playgroud)
我想在水平总计示例中输入相同的查询:
cap_idPlanoContasFin 3684 2234 2 Total
---------------------------------------------------------------------
13 9305,07 1117,6 500 10922,67
Run Code Online (Sandbox Code Playgroud)
怎么做?我已经读过一些东西UNION。
我有这个app.config:
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="conexx" connectionString="Data Source=192.168.1.2 ;Initial Catalog =ifdcontroladoria3 ;uid =sa;pwd = admin2012" providerName="System.Data.SqlClient" />
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup></configuration>
Run Code Online (Sandbox Code Playgroud)
我试图用这个C#更新这个连接字符串:
coneydstr = @"Data Source=" + comboBox1.Text + ";Initial Catalog =" + cmbBancos.Text + ";uid =" + txtUsuario.Text + ";pwd =" + txtPassword.Text;
try
{ coneyd.ConnectionString = coneydstr;
coneyd.Open();
funciona = true;
lblStringSalida.Text = coneydstr;
}
catch (Exception ex)
{ MessageBox.Show(coneyd + ex.Message.ToString()); }
if (funciona)
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.ConnectionStrings.ConnectionStrings["conexx"].ConnectionString = coneydstr;
config.Save();
} …Run Code Online (Sandbox Code Playgroud) 我有这个程序
ALTER proc [dbo].[adenti]
(
@entra nvarchar(max)
)
as
DECLARE @sql varchar(4000);
SET @sql = 'INSERT INTO provaxml (arquivo) SELECT CAST(BulkColumn AS XML) FROM OPENROWSET(BULK ''' + @entra + ''', SINGLE_BLOB) as arquivo';
EXEC( @sql );
Run Code Online (Sandbox Code Playgroud)
上面的代码有效.
是否可以使用Integration Services将路径中的所有XML文件插入到SQL表中?
我在SQL Server中编写了这个过程:
ALTER PROCEDURE [dbo].[buscapro1]
@prod nvarchar(80),
@opc bit
AS
if @opc=1
begin
select
idproduto, CODIGO, codfab, produto, Descricao, PRECOVENDA
from
verproduto
where
CODIGO like @prod
end
if @opc=2
begin
select
idproduto, CODIGO, codfab, produto, Descricao, PRECOVENDA
from
verproduto
where
produto like @prod
end
Run Code Online (Sandbox Code Playgroud)
如果我发送此行:
buscapro1 'bela-01', 1
Run Code Online (Sandbox Code Playgroud)
我有积极回报的行.现在问题是第二个参数"produto"返回空
select *
from verproduto
where produto like 'aparador'
Run Code Online (Sandbox Code Playgroud)
回报
idProduto CODIGO PRODUTO Descricao PRECOVENDA TRATAMENTO
-------------------------------------------------------------------------
1480 BELA-01 APARADOR Aparador 325 Bela Moveis
Run Code Online (Sandbox Code Playgroud)
当我发送
buscapro1 'aparador',2
Run Code Online (Sandbox Code Playgroud)
返回空,我做错了什么?
谢谢alejandro