Pesquisa

Pesquisa personalizada

terça-feira, 26 de maio de 2009

Gerar dicionário de dados SQL Server 2000

Artigos: AJAX, PHP, MYSQL, SQLSERVER, VB.NET, DELPHI, COMPACT FRAMEWORK, FIREBIRD
Script SQL Server 2000 para gerar dicionário de dados do seu banco de dados
SQL Server

Este script te permite gerar um dicionário de dados para qualquer banco de dados SQL Server 2000. Você pode colocá-lo no query analizer, escolher o banco de dados e gerar ou se for de sua necessidade criar uma stored procedure. O fato de ser apenas para SQL Server 2000, é porque existe um local onde você pode colocar descrições para os campos das tabelas do banco que não existia no SQL Server 7.0

Segue o código:

SET NOCOUNT ON

DECLARE @Id_Tabela int, @Nome_Tabela varchar(50)
PRINT 'BANCO DE DADOS: ' + UPPER(db_name())
PRINT ''
DECLARE tabelas CURSOR FOR SELECT Name, ID FROM sysobjects WHERE xtype = 'U' AND Name <> 'dtProperties'
ORDER BY Name
OPEN tabelas
FETCH NEXT FROM tabelas INTO @Nome_Tabela, @Id_Tabela
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'TABELA: ' + UPPER(@nome_tabela)
select nome_campo = LEFT(RTRIM(LTRIM(sc.name)),40),
tipo_campo = LEFT(RTRIM(LTRIM(st.name)),20), tamanho_campo = sc.length, descricao_campo = ISNULL(sp.value,'')
FROM syscolumns sc, systypes st, sysproperties sp WHERE sc.id = @Id_Tabela AND sc.xtype = st.xtype
and sc.colid *= sp.smallid and sp.id = @Id_Tabela

ORDER BY sc.colid
PRINT ''
FETCH NEXT FROM tabelas INTO @Nome_Tabela, @Id_Tabela
END
CLOSE tabelas
DEALLOCATE tabelas

SET NOCOUNT OFF


Leia Mais

quarta-feira, 20 de maio de 2009

Usar MySQL com PHP

Artigos: AJAX, PHP, MYSQL, SQLSERVER, VB.NET, DELPHI, COMPACT FRAMEWORK, FIREBIRD
A Base de Dados mais comum para a linguagem php é o mysql, podes fazer o download no site mysql.com. No entanto podes utilizar outras bases de dados como, oracle, Sybase, mSQL, PostgreSQL ou qualquer um com ligação ODBC. Neste tutorial vamos utilizar como padrão o mysql.

Para o php interagir com uma base de dados SQL, independente da base de dados, existem três comandos básicos que devem ser utilizados: um que faz a ligação com o servidor da base de dados, um que seleciona a base de dados a ser utilizada e um que executa uma "query" SQL.

Ligação com o servidor


A ligação com o servidor da base de dados mySQL em PHP é feita através do comando mysql_connect, que tem a seguinte sintaxe:

int mysql_connect(string /* endereço do servidor */ , string /* nome do utlizador */ , string /*password*/ );

Os parâmetros são bastante simples: o endereço do servidor, o nome do utlizador e a password para a ligação. A função retorna um valor inteiro, que é o identificador da ligação estabelecida e deverá ser armazenado numa variável para ser utilizado depois. No nosso exemplo, temos como servidor da base de dados a mesma máquina que corre o servidor http, como login do utlizador "root" e password "teste":

$ligacao = mysql_connect("localhost", "root", "teste");

Assim, se a ligação for bem sucedida (existir um servidor no endereço especificado que possua o utlizador com a password fornecida), o identificador da ligação fica armazenado na variável $ligacao.

Os comandos para outras base de dados são diferentes, mas usam padrões parecidos.

Seleção do base de dados


Uma vez ligadoo, é preciso selecionar abase de dados existente no servidor com o qual desejamos trabalhar. Isso é feito através da função int mysql_select_db, que tem a seguinte sintaxe:

int mysql_select_db(string /*nome da dase de dados*/, int /*ligacao*/ );

O valor de retorno é 0 se o comando falhar, e 1 no caso de sucesso. O nome da base de dados a selecionar é o primeiro parâmetro fornecido, seguido pelo identificador da ligação. Se este for omitido, o interpretador PHP tentará utilizar a última ligação estabelecida. Recomenda-se sempre escrever esse valor, para facilitar a legibilidade do código. No nosso exemplo, a base de dados a ser selecionada possui o nome "ged":

$ok = mysql_select_db("ged", $ligacao);

Após a execução deste comando qualquer consulta executada para aquela ligação utilizará a base de dados selecionada.

A variável $ok se for 0 deve lançar a informação não foi possível estabelecer uma ligação.

Execução de queries SQL


Após estabelecida a ligação e selecionada a base de dados a ser utilizada, quase toda a interação com o servidor mySQL pode ser feita através de consultas escritas em ANSI SQL ( Padrão Structured Query Language), com o comando mysql_query, que utiliza a seguinte sintaxe:

int mysql_query(string consulta, int [ligacao] );

O valor de retorno é 0 se falhar ou 1 no caso de sucesso. Sucesso aqui significa que a consulta está sintaticamente correcta e foi executada no servidor. Nenhuma informação sobre o resultado é retornado deste comando. No caso da consulta ser um comando SELECT, o valor de retorno é um valor interno que identifica o resultado, que poderá ser tratado com a função mysql_result() ou outras. A string query não deve conter ponto-e-vírgula no final do comando, e o identificador da ligação é opcional. Vamos criar uma tabela como exemplo:

$cria = "CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(40), email VARCHAR(50))";

mysql_query($cria, $ligacao);


Ou

$insere = "INSERT INTO exemplo (nome,email) VALUES ("Fulano","teste@email.com.br");

mysql_query($insere, $insere);


Se o comando retornar uma consulta, seria necessário guardar essa consulta numa variavel como vector. Ou mesmo que não retorne uma consulta, mas se for necessário saber se realmente o comando foi executado, podes usar uma variável para testar.

$consulta = "SELECT nome, email FROM exemplo WHERE nome = 'Teste'";

$resultado = mysql_query($consulta, $ligacao);

printf("Nome: ", mysql_result($resultado,0,"nome"), "
\n");
printf("e-mail: ", mysql_result($resultado,0,"email"),"
");

quarta-feira, 13 de maio de 2009

Tutorial De Join

Artigos: AJAX, PHP, MYSQL, SQLSERVER, VB.NET, DELPHI, COMPACT FRAMEWORK, FIREBIRD

Existem dois tipo de JOIN, o INNER JOIN e o OUTER JOIN. o OUTER JOIN pode ser de tres tipos: LEFT OUTER JOIN, RIGHT OUTER JOIN ou FULL OUTER JOIN. Ou, pra simplificar: LEFT JOIN, RIGHT JOIN ou FULL JOIN.

Leia Mais

quarta-feira, 6 de maio de 2009

Otimização MySql

Artigos: AJAX, PHP, MYSQL, SQLSERVER, VB.NET, DELPHI, COMPACT FRAMEWORK, FIREBIRD
Desempenho. Essa é a palavra chave que orienta e estimula o desenvolvimento do popular sistema de gerenciamento de banco de dados MySQL. Sendo considerado também o fator determinante para o seu sucesso, é o desempenho que se sobressaí sobre as demais qualidades (e defeitos) desse banco de dados.

Entretanto, por si só o MySQL não irá garantir a melhor performance para uma aplicação, pois assim como todo banco de dados, o desempenho em relação a aplicação depende de vários conceitos inter-relacionados. Durante uma análise, conhecer esses conceitos e aplicá-los poderá, em diversos casos, fabricar resultados mais positivos na performance do sistema do que simplesmente adicionar memória RAM.


Leia Mais