quinta-feira, 25 de março de 2010

O comando Split em C#

O comando Split no C# é utilizado para separar uma string de acordo com um caracter especificado. Este comando possui diversos overloads, mas não é o foco desta dica apresentá-los. Pretendo apenas alertar que a definição do caracter que será o parâmetro precisa estar entre aspas simples e não aspas duplas. O uso das aspas duplas causará um erro.

Como alterar o atributo background de um div com JavaScript

Sem blablabla...

document.getElementById("divBannerCabecalho").style.backgroundImage = "url(images/banner3.png)";

terça-feira, 23 de março de 2010

Como modificar o método de inserir em um DataSet para recuperar o identificador do registro criado

A primeira coisa a fazer, contando que você já tenha criado o DataSet, contendo o comando Insert, gerado por padrão durante a sua criação, é modificar a query, incluindo o comando "SELECT SCOPE_IDENTITY();" ao final do comando de insert, depois do ponto e vírgula.

Exemplo:
NorthwindTableAdapters.ProductsTableAdapter productsAdapter = new NorthwindTableAdapters.ProductsTableAdapter();
 // Add a new product
int new_productID = Convert.ToInt32(productsAdapter.InsertProduct("New Product", 1, 1, "12 tins per carton", 14.95m, 10, 0, 10, false));
 // On second thought, delete the product
 productsAdapter.Delete(new_productID);

Diferença entre usar @@identity e scope_identity()

Em diversas fontes de informações sobre como recuperar o campo chave primária de um registro inserido em uma tabela, encontramos a sugestão de usar @@identity (Ex: SELECT @@IDENTITY AS [@@IDENTITY] GO) para recuperar o valor do campo de chave primária do registro. No entanto, este comando efetivamente recupera o identificador gerado, sem levar em consideração o contexto da inclusão, e consequentemente pode obter o identificador na tabela de replicação, dependendo do caso. Por exemplo, se o banco executar alguma operação de inclusão através de uma trigger, durante a execução do software, o retorno de @@identity estará incorreto. A utilização do comando scope_identity() sempre retornará o valor do identificador criado na tabela em que o registro foi inserido.

Exemplos:

USE AdventureWorks;
GO
INSERT INTO Person.ContactType ([Name]) VALUES ('Assistant to the Manager')
GO
SELECT SCOPE_IDENTITY() AS [SCOPE_IDENTITY]
GO
SELECT @@IDENTITY AS [@@IDENTITY]
GO

Sql Server T-SQL - Alguns links de referências

Segue abaixo uma lista de links no site MSDN, de referência aos comandos:



Sql Server T-SQL

Veja abaixo um exemplo de como criar um base de dados, seguido de exemplo de como criar uma tabela usando T-SQL.


Para criar um database que irá armazenar os objetos de dados, como tabelas, consultas, etc. Entre com o seguinte código:

  • USE master;
    GO

    --Delete the TestData database if it exists.
    IF EXISTS(SELECT * from sys.databases WHERE name='TestData')
    BEGIN
        DROP DATABASE TestData;
    END

    --Create a new database called TestData.
    CREATE DATABASE TestData;
    Press the F5 key to execute the code and create the database.



Para acessar a nova base de dados criada, entre com o seguinte código:
  • USE TestData
    GO



Para criar uma tabela na base de dados ativa, entre com seguinte código:
CREATE TABLE dbo.Produtos
(
ProdutoID int PRIMARY KEY NOT NULL,
ProdutoNome varchar(25) NOT NULL,
Preco Money NULL,
ProdutoDescricao text NULL
)

domingo, 21 de março de 2010

Como copiar um arquivo utilizando a classe FileInfo

Além de acessar dados sobre o arquivo, o objeto FileInfo permite operações a serem executadas em no arquivo. Novamente, uma vez que um objeto FileInfo válido é obtido, tudo que você precisa fazer é chamar o método CopyTo, para fazer uma cópia de seu arquivo, como o código abaixo demonstra:

//C#
FileInfo ourFile = new FileInfo(@"c:\teste.txt");
ourFile.CopyTo("c:\teste.bak");

Como obter informações sobre um arquivo

Para obter informações sobre um arquivo específico, faça o seguinte:
  1. Crie um objeto FileInfo passando como parâmetro o caminho do arquivo;
  2. Acesse as propriedades do objeto FileInfo;

Exemplo:
// C#
FileInfo ourFile = new FIleInfo("c:\teste.txt");
If (ourFile.Exists)
{
Console.WriteLine("Filename: {0}", oufFile.Name);
Console.WriteLine("Path: {0}", ourFile.FullName);
}